Economics
This page is the math behind the vault. Every formula comes from the contracts. Every number is either a contract setting or Mezo’s public data.
These are formulas, not forecasts. Rates move every week. Plug in today’s rates to see where the vault stands. Nothing here promises a yield.
Notation
| Symbol | Meaning | Design value | Testnet |
|---|---|---|---|
| BTC price in MUSD, from Mezo’s PriceFeed | |||
| BTC collateral in the trove | |||
| Trove debt in MUSD | |||
| MUSD the vault holds in sMUSD | |||
| Collateral ratio of the trove | 200 / 250 / 300% | 200 / 220 / 240% | |
| Idle buffer, as a share of the BTC | 3% | 2% | |
| veBTC sleeve, as a share of the BTC | up to 25% | 5% | |
| sMUSD savings rate, per year | |||
| Trove interest rate, per year | at most 2% | 1% | |
| Mezo’s one-time borrow fee | 0.1% | 0.1% | |
| Swap slippage limit | 1%, at most 5% | 4% |
The vault charges no fee of any kind. Holders bear only Mezo’s costs: the borrow fee, the loan interest and the swap spread on harvests.
What a share is worth
The vault counts everything it owns in BTC. Call that its raw assets:
- is idle BTC.
- is collateral Mezo holds for the vault after a redemption or liquidation. The vault can claim it.
- is BTC locked in veBTC, counted at face value.
- is the MUSD the loan owes. It is the debt less Mezo’s 200 MUSD gas deposit, which comes back on close.
The MUSD term takes when it is positive and when it is negative. That is what converting it would fetch or cost. The vault always values it against itself.
The share price is the unlocked part of raw assets, over all shares:
Here is the fBTC supply and is profit still unlocking. The vault keeps just above , so the MUSD term stays close to zero. What a share holds is BTC.
Sizing the loan
The collateral ratio compares the BTC’s value with the debt:
At the target ratio the vault borrows
Not all BTC goes into the trove. The idle buffer and the sleeve stay outside it:
A rebalance changes the debt only when the ratio leaves the band:
A negative is a repayment from savings. A positive one is new debt, taken only while .
Where the yield comes from
In a year the savings earn and the loan costs . Because , the MUSD left over is
Harvests turn it into BTC. Divide by the vault’s size to get a yearly BTC yield:
The second step uses and .
With the design settings and no sleeve, the factor is . So every point of spread between savings and loan becomes 0.388 points of BTC yield.
The borrow fee
Mezo charges once on each new MUSD of debt. The vault buys it back with BTC on the spot. Spread over a holding time of years, it costs about a year:
So the loan side breaks even when
For a one-year hold at a 1% loan rate, that is 1.1%.
The harvest spread
Each harvest pays the pool’s spread on the income it sells. The contract caps it. A harvest of MUSD must return at least
and a fee buy-back may spend at most . The real cost is the pool’s spread, which is usually far below the cap.
The veBTC sleeve
The sleeve earns on its own share of the BTC:
- is the sMUSD gauge’s MUSD fees per BTC locked, as a yearly rate. They go into savings and leave through the next harvest.
- is Mezo’s weekly BTC rebate per BTC locked.
The gauge splits its fees by vote weight:
is what the gauge pays in a week, is the sleeve’s vote weight and is all weight on the gauge. The share shrinks as more votes pile onto the same gauge.
Putting it together
The idle buffer earns nothing. It is the price of instant exits.
A worked example
Take the design settings with no sleeve and a one-year hold: , , , and . Then .
| Savings rate | Spread after costs | BTC yield |
|---|---|---|
| 1.0% | −0.1% | −0.04% |
| 2.0% | 0.9% | 0.35% |
| 3.0% | 1.9% | 0.74% |
| 5.0% | 3.9% | 1.51% |
The table only shows how the pieces scale. Real rates decide where the vault sits on it.
Mainnet and testnet today
Figures checked on 2026-10-25. Mainnet and testnet are kept apart on purpose.
Mainnet. The vault is not deployed there yet. Its numbers today:
- sMUSD’s income is now mostly interest on Mezo’s own 14.5M MUSD of Enclave loans at 1%. It arrives in lumps and averages about 1% a year on 7.38M sMUSD.
- The last 12 weeks averaged 2.3%. That included a wave of redemption fees from September to October, which has stopped.
- The vault’s own loan would cost about 1.1% all-in. So the loan side roughly breaks even.
- MUSD trades about 1% under the oracle. That would make a new vault trove the first redemption target.
- A mainnet launch waits until both improve. The vault deploys with borrowing off either way.
Testnet. The live vault runs a 200 / 220 / 240% band, a 2% buffer and a 5% sleeve on a 4-week ladder. Slippage is 4%, because the testnet pool sits about 2.6% under the oracle. Mezo’s testnet borrow rate is 1%. The settings are small because the test wallets hold only 0.069 BTC and Mezo’s minimum loan is 2,000 MUSD.
The testnet gauge paid about 45.8k MUSD in the Oct 15 epoch against about 6 units of vote weight. That is a testnet artifact. Do not read it as a sleeve yield. On mainnet the gauge’s income is mostly MEZO emissions, spread over about 226 votes.
Profit unlock
New profit reaches the share price linearly over days. Say a checkpoint at time locks until . The profit still locked at time is
Every entry point takes a checkpoint first. A new gain at time joins what is still locked:
Older profit keeps its end and new profit gets the full 7 days. The new end is their mix, weighted by size.
A loss eats locked profit first and keeps the end:
Only the part of a loss above lowers the share price.
Between checkpoints the vault reports
where is the raw value at the last checkpoint. Gains since then stay hidden until the next checkpoint. Losses show at once. Anyone can call sync() to take a checkpoint.
Why 7 days
A payout is released over . A holder with a share of the supply, who stays days, collects about
Joining just before a payout and leaving right after makes close to zero. So it earns almost nothing extra. Everyone earns the same per day held.
Distance to liquidation
Mezo liquidates a trove below 110%. Starting from a ratio , the BTC price has to fall by
| Starting ratio | Drop to liquidation |
|---|---|
| 250%, the design target | 56% |
| 220%, the testnet target | 50% |
| 200%, the band floor | 45% |
That assumes nobody calls rebalance() on the way down. A rebalance below 200% repays debt from savings, which pushes the liquidation price further down. The keeper checks every 15 minutes.
On the staging copy of Mezo, a 60% drop in one block got the trove liquidated. The vault kept all its MUSD. Its value fell only by the 200 MUSD reserve and the 1% haircut. See Testing.
Redemptions
Anyone can redeem MUSD for BTC from the troves with the lowest ratio, at the oracle price. If that hits the vault, some BTC collateral turns into MUSD at a fair price, so the share price holds. The next harvest buys the BTC back.