Skip to main content

Tier System

The Catpound vault uses a tier system to assign fee rates to users. Higher tiers receive lower exit fees and lower protocol fee surcharges. There are 8 tiers total, numbered 0 through 7, where 0 is the default (highest fees) and 7 is the best possible tier.

Tier Parameters

Each tier defines two parameters:

  • Max Slash (BPS): The maximum exit fee in basis points. 1 BPS = 0.01%, so 1000 BPS = 10%.
  • Protocol Fee (BPS): The per-user protocol fee surcharge in basis points, applied on top of the floor fee.

Hard Caps (Contract-Enforced)

These limits are hardcoded in the smart contract and cannot be exceeded by any tier configuration:

ParameterHard Cap
Maximum slash per tier1,000 BPS (10%)
Maximum protocol fee per tier1,000 BPS (10%)
Maximum tier ID7

Default Configuration

The vault starts with Tier 0 configured. The admin sets additional tiers as needed. A typical configuration might look like:

TierMax Exit FeeProtocol Fee SurchargeTypical Access
010% (1000 BPS)5% (500 BPS)Default for all users
18% (800 BPS)4% (400 BPS)1 staked NFT
26% (600 BPS)3% (300 BPS)3 staked NFTs
34% (400 BPS)2% (200 BPS)5 staked NFTs or whale tier
42% (200 BPS)2% (200 BPS)10 staked NFTs

The actual values are set by the vault admin and may differ. The contract enforces the hard caps listed above regardless of admin configuration.

VIP Tiers (Zero Exit Fee)

Tiers configured with maxSlash = 0 are VIP tiers. Users assigned to a VIP tier pay 0% exit fee at all times, even during the silent phase. This is used for partners, advisors, or early supporters designated by the vault admin.

The per-user protocol fee surcharge (if any) still applies to VIP tiers.

VIP Tier vs Tier 0

Tier 0 is the default for all new users and has a 10% maximum exit fee. Setting a higher tier ID with maxSlash = 0 creates a distinct VIP tier. Only users explicitly assigned to a VIP tier ID receive the zero-slash benefit.

How Tiers Are Assigned

A user's effective tier is the best (highest tier ID with lowest fees) from three possible sources:

1. NFT Tier

Based on how many NFTs you have staked in the vault. The vault has a configurable threshold table:

  • Staking 1 NFT might give you Tier 1
  • Staking 3 NFTs might give you Tier 2
  • And so on, up to the configured maximum

See NFT Staking for details, including the anti-gaming protection that activates the tier at the next compound cycle.

2. Whale Tier

Based on the USD value of your vault position. If your position exceeds the whale threshold, you receive the designated whale tier automatically.

See Whale Detection for details.

3. Manual Tier

The vault admin can manually assign a tier to any user. This is used for special cases like early supporters or partners.

Resolution

The vault calculates all three tier sources and uses whichever gives you the lowest fees. For example, if your NFT tier is 2, your whale tier is 3, and your manual tier is 0, your effective tier is 3.

Tier Refresh

Your tier is automatically recalculated when you:

  • Deposit MOTO
  • Withdraw MOTO
  • Transfer cpMOTO (both sender and receiver)

A cooldown period prevents excessive refresh calls. Every call (including ones that result in no tier change) counts against the cooldown to prevent spam via no-op paths. You can also manually trigger a refresh using the refreshTier function on the vault page.

Floor Protocol Fee

Regardless of your tier, a floor protocol fee (default: 2% / 200 BPS) always applies to compounded rewards. The per-user protocol fee surcharge from your tier is applied on top of this floor. This means even users at the best tier still contribute a minimum fee to the protocol treasury.

The tier protocolFeeBps value must always be at or above the floor — the contract enforces this during tier configuration.