Page cover

Fees

maxAPY's fee structure is designed around a fundamental principle - users should only pay for actual value delivered above what they could achieve through basic, risk-free strategies.

Our fee system consists of multiple components, each carefully designed to align our interests with those of our users while ensuring sustainable protocol operations.

Core Concepts

Before diving into our fee components, it's important to understand 3 core concepts: Share Price, Hurdle Rate and High-Water Mark:

Understanding the Share Price

The share price is the vault's fundamental performance metric, reflecting the pure investment performance of the underlying strategies, independent of fee collection. This separation of performance measurement from fee mechanics is crucial for transparency and fairness.

  • Share Price Growth:

    • Represents the vault's raw investment returns

    • Increases with profitable yield generation

    • Decreases with temporary depegs of the strategy assets from the vault underlying assets.

    • Unaffected by deposits, withdrawals, or fee collections

  • User Positions:

    • Measured in shares, not underlying assets

    • Position Value = Number of Shares × Current Share Price

    • Initial Shares = Deposit Amount ÷ Share Price at Deposit

    • Share count only changes through fee collection

Understanding the Hurdle Rate

The hurdle rate is a baseline return threshold that varies by asset type:

  • For ETH vaults: Lido staking APR

  • For USDC vaults: 4-week T-Bill yield

This rate represents the "risk-free" return easily accessible to users without active management.

Since these rates fluctuate over time, the actual hurdle applied to your position is calculated as the average rate during your deposit period.

For example, if you held a position in the maxETH vault for 6 months while:

  • Month 1-3: Lido staking APR was 1%

  • Month 4-6: Lido staking APR was 3%

Your effective hurdle would be 2%.

This ensures the hurdle accurately reflects the "risk-free" return you could have achieved during your specific investment period.


Note: For simplicity, the examples in this documentation use fixed hurdle rates. In practice, they are dynamically calculated based on market conditions during your deposit period.

Understanding the High-Water Mark

The High-Water Mark (HWM) tracks peak performance of the vault through its share price, starting at 1.00 and growing as the vault generates returns. Its purpose is to prevent double-charging performance fees when recovering from a dip.

Performance fees apply to:

  • Growth from initial price to current price

  • Any growth beyond the previous HWM

Performance fees do NOT apply to:

  • Recovery growth back to a previous HWM

This ensures:

  • You pay for actual value creation

  • You never pay twice for the same gains


Management Fee

A fixed 2% annual fee applied to the average assets under management during your investment period. For example, if you start the year with 100 ETH and end with 200 ETH, assuming linear growth, the management fee would be calculated on the average (150 ETH).

Management fees are only charged on a monthly basis and when users withdraw their funds. For partial withdrawals, fees are calculated pro-rata.

For example:

  • If an underlying protocol charges 1% → We add 1% to reach our 2% target

  • If an underlying protocol charges 2% or more → We add nothing extra

Additionally, our management fee automatically adjusts to ensure your returns never fall below the hurdle rate. This means if our strategies are only slightly outperforming the baseline, we'll reduce our fee accordingly.

We believe this is the fair thing to do - users never pay more than necessary for the service provided.


Performance Fee

A 20% fee applied only to profits (after management fees) that exceed both:

  1. High-Water Mark (HWM): Peak performance point of the entire vault (defined above)

  2. Hurdle Rate: The baseline return rate (defined above)

Performance fees are calculated and collected at the same time as management fees - monthly and upon withdrawal. For partial withdrawals, fees are calculated pro-rata.


Fee Collection

Fees in maxAPY are collected through two mechanisms:

1. Regular Monthly Collection

Both management and performance fees are calculated and collected at the end of each calendar month. For users who deposit mid-month, their first month's fees are pro-rated based on the number of days they were in the vault.

Monthly collections are processed automatically by the protocol.

2. Withdrawal-Based Collection

When users withdraw, they pay any accrued fees for the current month up to their withdrawal date.

For partial withdrawals, fees are calculated pro-rata based on both:

  • The portion of the month that has elapsed

  • The proportion of their position being withdrawn

These fees are deducted from the withdrawal amount before settling.

Example of Combined Fee Collection

If you withdraw on January 15th:

  • You would have already paid all fees through December 31st via the monthly collection

  • Your withdrawal would include fees for January 1-15, calculated as:

    • (15 days / 31 days) × monthly fee rate × withdrawn amount

Fee Settlement

Fees are collected through share deduction:

  • The protocol calculates fees in the underlying asset (ETH for maxETH vaults, USDC for maxUSDC vaults)

  • Fees are converted to equivalent shares using the current share price

  • These shares are deducted from user positions and transferred to the maxAPY protocol

  • For partial month withdrawals, a pro-rata share deduction is calculated up to the withdrawal date

  • Currently the maxAPY protocol keeps its collected fees inside the vault to generate additional yield. This mechanic will be later subject to governance control.

Mechanics of Share-Based Settlement:

  • Share deductions occur at current share price

  • Share price remains unchanged by fee collection

  • Share reductions directly reduce user position sizes

  • Protocol receives shares which can be redeemed for underlying assets (like users do)

Share-based collection provides key benefits:

  • Fair distribution of fees across all depositors

  • Preservation of share price as pure performance metric

  • Accurate handling of deposits and withdrawals at any time

  • Efficient protocol revenue collection without affecting vault liquidity

All fee calculations and operational details are:

  • Publicly verifiable on-chain

  • Documented in technical specifications

  • Displayed in real-time through the user interface

  • Subject to future community governance oversight

ELI5:

maxAPY takes fees by reducing the number of shares of the vault you own, not by taking your ETH or USDC directly. It converts the fee amount into shares at the current price and deducts them from your balance, without changing the share price. These fees stay in the vault to keep earning yield, and later the community will be able to decide what to do with them. This method ensures fees are fairly distributed, doesn’t mess with vault liquidity, and is fully transparent on-chain.


Examples

Let's walk through a complete set of examples showing both management and performance fees.

Note: For simplicity, the examples in this documentation use fixed hurdle rates. In practice, they are dynamically calculated based on market conditions during your deposit period.

Basic Growth Example

Let's follow a position that experiences steady growth with no drawdowns over 6 months.

Initial Position (January 1st)

  • Deposit Amount: 100 ETH

  • Initial Share Price: 1.0000

  • Initial Shares: 100.000 shares (100 ETH ÷ 1.0000)

  • Annual Hurdle Rate: 2%

Monthly Performance

January

Starting Position:

  • Shares: 100.000 shares

  • Share Price: 1.0000 → 1.0160

  • Position Value: 100.000 × 1.0160 = 101.600 ETH

Management Fee:

  • Average AUM: (100.000 + 101.600) / 2 = 100.800 ETH

  • Monthly Rate: 2% / 12 = 0.167%

  • Fee Amount: 100.800 × 0.167% = 0.168 ETH

  • Shares Deducted: 0.168 / 1.0160 = 0.165 shares

  • Shares After Mgmt Fee: 100.000 - 0.165 = 99.835 shares

  • Position After Mgmt Fee: 99.835 × 1.0160 = 101.432 ETH

Performance Fee:

  • Monthly Growth: (1.0160 - 1.0000) / 1.0000 = 1.60%

  • Monthly Hurdle: 2% / 12 = 0.167%

  • Growth above Hurdle: 1.60% - 0.167% = 1.433%

  • Growth Value: 101.432 × 1.433% = 1.454 ETH

  • Fee Amount: 1.454 × 20% = 0.291 ETH

  • Shares Deducted: 0.291 / 1.0160 = 0.286 shares

  • Final Shares: 99.835 - 0.286 = 99.549 shares

January Summary:

  • Final Shares: 99.549 shares

  • Share Price: 1.0160

  • Position Value: 99.549 × 1.0160 = 101.141 ETH

February

Starting Position:

  • Shares: 99.549 shares

  • Share Price: 1.0160 → 1.0322

  • Position Value: 99.549 × 1.0322 = 102.754 ETH

Management Fee:

  • Average AUM: (101.141 + 102.754) / 2 = 101.948 ETH

  • Fee Amount: 101.948 × 0.167% = 0.170 ETH

  • Shares Deducted: 0.170 / 1.0322 = 0.165 shares

  • Shares After Mgmt Fee: 99.549 - 0.165 = 99.384 shares

  • Position After Mgmt Fee: 99.384 × 1.0322 = 102.584 ETH

Performance Fee:

  • Monthly Growth: (1.0322 - 1.0160) / 1.0160 = 1.595%

  • Growth above Hurdle: 1.595% - 0.167% = 1.428%

  • Growth Value: 102.584 × 1.428% = 1.465 ETH

  • Fee Amount: 1.465 × 20% = 0.293 ETH

  • Shares Deducted: 0.293 / 1.0322 = 0.284 shares

  • Final Shares: 99.384 - 0.284 = 99.100 shares

February Summary:

  • Final Shares: 99.100 shares

  • Share Price: 1.0322

  • Position Value: 99.100 × 1.0322 = 102.291 ETH

[Months 3-5 follow the same calculation pattern...]

June (Partial Month - Withdrawal on June 15th)

Starting Position:

  • Shares: 97.850 shares

  • Share Price: 1.0804 → 1.0884

  • Position Value: 97.850 × 1.0884 = 106.501 ETH

Pro-rated Management Fee:

  • Average AUM: (105.674 + 106.501) / 2 = 106.088 ETH

  • Monthly Rate: 0.167% × (15/30) = 0.0835%

  • Fee Amount: 106.088 × 0.0835% = 0.089 ETH

  • Shares Deducted: 0.089 / 1.0884 = 0.082 shares

  • Shares After Mgmt Fee: 97.850 - 0.082 = 97.768 shares

  • Position After Mgmt Fee: 97.768 × 1.0884 = 106.412 ETH

Pro-rated Performance Fee:

  • Period Growth: (1.0884 - 1.0804) / 1.0804 = 0.74%

  • Monthly Hurdle (pro-rated): 0.167% × (15/30) = 0.0835%

  • Growth above Hurdle: 0.74% - 0.0835% = 0.6565%

  • Growth Value: 106.412 × 0.6565% = 0.699 ETH

  • Fee Amount: 0.699 × 20% = 0.140 ETH

  • Shares Deducted: 0.140 / 1.0884 = 0.129 shares

  • Final Shares: 97.768 - 0.129 = 97.639 shares

June Summary:

  • Final Shares: 97.639 shares

  • Share Price: 1.0884

  • Final Position Value: 97.639 × 1.0884 = 106.273 ETH

Overall Summary

Position Journey:

  • Initial Position: 100.000 shares at 1.0000 = 100.000 ETH

  • Final Position: 97.639 shares at 1.0884 = 106.273 ETH

  • Gross Return: 8.84% (share price growth: 1.0000 → 1.0884)

Total Shares Deducted due to fees:

  • Management Fees: 0.992 shares

  • Performance Fees: 1.369 shares

  • Total Fee Shares: 2.361 shares (from initial 100.000)

Final Results:

  • Initial Value: 100.000 ETH

  • Ending Value: 106.273 ETH

  • Net Return: 6.273 ETH (6.273%)

This example demonstrates:

  1. Fee collection through share deduction

  2. Compounding effect of share reductions

  3. Proper handling of partial periods

  4. Share price as pure performance metric

  5. Clear distinction between gross and net returns


Fun Fact: we took a page from the TradFi book

Last updated