Further Analysis of the Fee Model For Mosaic

3 min readSep 17, 2021


Our upcoming proof-of-concept (PoC) launch includes a dynamic fee structure that we would like to dive deeper into at this point. We have been running different simulations, and our team has recommended modifying the fee structure that we initially proposed for the PoC.

A lot of those simulations will be part of our upcoming posts, especially as we obtain further real-time data, but we would like to share our initial findings here. To ensure the best experience for our users, we will be extending the liquidity depositing period to allow more deposits before the swaps period begins.

Our Current Fee Structure

The research we did on the values that we will implement on the system is presented below. As reference here we have the initial fee graph that we were going to use.

We will be maintaining the general shape of the fee and it will still be dynamic i.e., it will be responsive to the available liquidity in the origin vault. But, we have been adapting the thresholds we are going to use so that users will pay less fees and therefore the system will hopefully be more active overall.

The Change in the Fee Structure

Current system is defined by two parameters. A max fee taken (5% previously) and the threshold of transfer size vs available liquidity in the origin vault which currently stands at 30%. We ran our simulation environment — the Liquidity Simulation Environment (LSE) implemented in Python — with different values ranging from 3% to 6% max fee, and 20% to 50% as liquidity thresholds.

Due to the linearity of the total fees vs the fee model parameters, we are not expecting anything but a simple behavior of this fee versus the threshold parameters — as shown in the following heatmap:

As expected: the lower max fee is charged on large transfers (y-axis) the less overall fees. Also, when increasing the max threshold at which the max fee % kicks in, it will decrease the slope of the line from (x, y) = (0, 0) to (50, 3) in turn lowering the overall fees collected. In other words, we expect the top right corner of the heatmap to be associated with the lowest fee.

We plot all the fee models together below as blue dashed lines and we show where the simulated trade data (kept the same for all fee models of course) fall on these curves using the red dots.

With this current data, and in order to maximize the amount of transfers done during the PoC, we will be adapting our fee model to have a maximum of 4% fee and a threshold of 50% liquidity. With all the valuable data we get from the PoC, we will redo our simulations adding in this insight and adapt based on real-world insights.

We hope the Composable community is happy with this change that will encourage all users to participate in the PoC, and we appreciate your feedback on this decision.




Composable Finance Founder & CEO. I write about R&D at Composable Finance. Physicist by training