How to compare lending vaults net of fees
How do you compare a lending vault's returns with peers running the same strategy, net of fees? Fix the peer group at the start, measure what each vault really holds, add what was paid outside it, and keep the vaults that failed. Nine Morpho USDC vaults over the last year show what each step changes:
- Headline APY hides losses that already happened. Relend USDC shows 53.53%. Its share price fell 98% in the year.
- A share price can stand on nothing. Gauntlet USDC Frontier's share price is up 2.78%, and the vault holds no real assets.
- Some of the return is paid outside the vault. Compensation moves Gauntlet USDC Core's year from −26.16% to −11.19%.
- Today's list keeps only the winner. Averaged equally, the nine returned −13.92%. A "$5M and active today" filter keeps one vault, at +5.35%.
An allocator uses this to pick a vault. A curator, the firm that chooses a vault's markets, uses it to show where theirs stands.
As of 5 November 2026. Share prices and assets are read from the vault contracts at the blocks given; headline APY is the figure Morpho's API reported on 5 November.
The peer group
The rule: every MetaMorpho vault (Morpho's vault contract) on Ethereum that took USDC, held at least $10M on 4 November 2025 (block 23,729,387), and had at least half its book in markets against yield-bearing stablecoins, Pendle PTs or tokenised-fund collateral. A Morpho market is a single lending pool with one collateral and one loan asset. Nine vaults qualify. The window runs exactly 365 days, to block 26,344,898.
| Vault | Curator | Assets at start | Headline net APY | Share price, 12 months | Real return, 12 months |
|---|---|---|---|---|---|
| Smokehouse USDC | Steakhouse Financial | $144.0M | 5.45% | +5.35% | +5.35% |
| Usual Boosted USDC | MEV Capital | $184.4M | 5.83% | +1.26% | +1.26% |
| Hyperithm USDC Apex | Hyperithm | $81.6M | 6.77% | +6.75% | +6.76% |
| Clearstar USDC Reactor | Clearstar | $45.1M | 6.58% | +7.25% | +7.26% |
| Hawkwood | none listed | $42.8M | 9.72% | +6.76% | +6.76% |
| Waterline infiniFi USDC | Waterline | $10.6M | 0% | +4.75% | +4.75% |
| Gauntlet USDC Core | Gauntlet | $29.7M | 5.87% | −26.16% | −11.19% |
| Gauntlet USDC Frontier | Gauntlet | $45.2M | 0% | +2.78% | −47.87% |
| Relend USDC | none listed | $13.3M | 53.53% | −98.32% | −98.32% |
Names and curators are as Morpho's API lists them. Both 12-month columns are the return on one share held for the whole window. "Real return" uses what the vault actually holds in its markets per share, read from Morpho at each block, plus compensation paid to the vault's depositors through Merkl, a rewards distributor.
What each step changes
1. Headline APY is a rate, not a return
Morpho defines its headline as "Net APY = Native Vault APY + Rewards APR - Performance Fee - Management Fee": what a vault earns now, annualised. Gauntlet USDC Core shows 5.87%. Over the year its share price fell 26%. Relend USDC shows 53.53% on what is left of it, about $13,000, after its share price fell 98%. A rate cannot show a loss that already happened.
2. Short windows miss losses
Usual Boosted USDC returned 6.02% annualised over the last three months and 1.26% over the year. On 11 November 2025 the vault removed a market against sdeUSD, Elixir's staked deUSD, and the share price fell 3.6% in that block. Any window that starts later does not see it. Two days later Relend USDC removed the same market and its share price fell 98%.
3. A share price can hide a loss
On 22 March 2026 an attacker minted around 80 million unbacked USR, Resolv's stablecoin. Morpho markets lending against USR-based collateral were left fully borrowed, so the vaults supplying them could not get their money back. Gauntlet queued the removal of those markets from two vaults the same day and executed it on 31 March. The two vaults run on different versions of Morpho's vault contract, and show the same loss in opposite ways:
- Gauntlet USDC Core (version 1.0) counts only the markets it still lists, so removing them took the loss out at once. Its share price fell 29.5% in one block, and every holder took the loss together.
- Gauntlet USDC Frontier (version 1.1) books the loss separately, as
lostAssets, and leaves the share price where it was. Holders who withdrew after 31 March were paid in full at that price, and the 1.91M USDC loss, about 18% of the vault at the time, fell entirely on the shares still held at the end. Its share price is up 2.78% on the year. The shares behind it hold nothing.
On version 1.1, a loss falls on whoever leaves last, and the share price will not tell depositors it happened.
4. Some of the return is paid outside the vault
Depositors in both Gauntlet vaults received compensation through Merkl, paid in a wrapped USDC token, in distributions named "Gauntlet USDC Core Vault - Resolv Claim" (2.01M USDC, about 0.17 USDC per eligible share) and "Gauntlet USDC Frontier Vault - Resolv Claim" (0.97M USDC, about 0.55 per share). Each covers about half the loss per eligible share. None of it is in the share price. Core's 12-month return is −26.16% on the share price and −11.19% for a holder who received the payout. A table that ignores payouts is too harsh on these vaults; one that ignores real assets is too kind to Frontier.
5. Today's list drops the losers
The nine vaults held about $597M at the start and about $21M at the end, mostly because depositors withdrew; the losses are in the return columns. Four now hold under 1% of their starting real assets (Frontier's remaining $1.9M is all lost assets). Only Smokehouse still holds more than $5M. Averaged equally, the group returned −9.95% on share prices and −13.92% in real return. Smokehouse alone, the only vault a "$5M and active today" filter keeps, returned +5.35%.
Fund databases have the same problem. Malkiel and Saha found "substantial survivorship bias in the returns of indices composed of only currently existing funds." The GIPS performance standards settle it for managers: "Terminated portfolios must be included in the historical performance of the composite…" (provision 3.A.9).
The method, step by step
- Define peers by what they lend against. Read each vault's markets and positions at the start block: deposit asset, chain, collateral, LLTVs (each market's liquidation threshold) and oracles. A USDC vault lending against BTC and one lending against Pendle PTs are not peers.
- Fix the group at the start, and keep every vault in it for the whole window. Show wound-down vaults in their own rows.
- Measure real assets per share at the same blocks for every vault. Sum the vault's supply in each
market it holds and divide by its shares. On version 1.0 vaults this matches the share price; on 1.1
the gap is
lostAssets. A market that has been fully borrowed for weeks may never pay its interest: count that supply separately. - Add payouts made outside the vault: compensation, and reward tokens priced at the dates paid. Subtract gas and entry or exit costs if you are measuring a real position.
- Use the fee in force each day. The share price already nets the performance fee as it was charged; on Vaults V1 fee changes are immediate. Clearstar changed its fee five times in the year, between 0% and 25%. A headline APY uses today's fee.
- Report several windows and the drawdown, with every vault event in the window next to the return: fee changes, market removals, reallocations.
Limits
- The peer rule is a judgement. Allocations drift during a year, and a group fixed at the start does not follow a vault that changes style.
- The chain shows what happened, not why. This piece does not assess how any curator handled the sdeUSD or USR episodes.
- A vault's return is not a depositor's return. It depends on when they entered, whether they could leave, and whether they were eligible for a payout.
- Past returns are not a forecast. A year of realised returns says how a strategy fared, not how it will.
Doing this across every vault
Nine vaults on one chain already took archive reads at fixed blocks, two versions of the vault contract, market removals and two compensation programmes. A real comparison spans curators, protocols and chains, with history that keeps the vaults that closed. Datablocks indexes every EVM chain from genesis and values every lending, LP, vault and fixed-yield position at any block, with failed tokens and protocols kept, so peers can be compared on net return, risk and drawdown, side by side. If you run or allocate to vaults, book a call below and tell us which strategies you need to compare.