Skip to main content
A campaign can pay the partners who bring depositors, out of the fee rather than out of the reward budget. Participants earn exactly what they would have earned otherwise.
Referrals run at two levels. Users on Rabbithole share campaigns with their invite link and earn a share of what their referees earn; that flow is described in Referrals in the Rabbithole section. Protocols and partners configure the split and integrate attribution, which is what this page covers.

What Is Live Today

  • The campaign-level split is an on-chain parameter set at campaign creation. Campaigns created with a non-zero split get a dedicated ReferralDistributor contract; campaigns created without one have no referral program and cannot add one later.
  • The referral pool is transferred to that distributor when the campaign is created, so the money is set aside up front rather than promised.
  • Claiming happens on-chain through the Manager, which pays out of the distributor, in a claim window enforced by the contract. Rabbithole users claim from the Referral earnings page; integrations fetch a proof from the API and submit it.

What Is Available

How It Works

Three numbers, at three different levels. They are easy to conflate.
1

The campaign sets aside a pool

At creation, the campaign carves a share of the campaign fee into a referral pool and transfers it to the campaign’s own ReferralDistributor. This comes out of the fee, not out of participant rewards. The reward budget users earn from is unchanged.
2

Referrers accrue an entitlement

A referrer earns 25% of the rewards their referees actually earned in that campaign. Because it is a share of earned rewards rather than of deposits, capital that arrives and leaves immediately is worth almost nothing. It pays for retained TVL.
3

Entitlements are scaled into the pool

Entitlements are computed after the campaign finalizes and then scaled pro rata into whatever the pool actually holds. The pool is a hard cap: if total entitlements exceed it, every referrer is scaled down proportionally. Referrers claim their share on-chain.
The 25% referrer rate and the campaign’s fee split are different numbers at different levels. The split decides how big the pool is; the 25% decides how entitlements are ranked within it. A referrer’s actual payout is the smaller of their entitlement and their pro-rata slice of the pool.

Attribution

A referrer is bound to a referee per campaign, and the binding is deliberately strict:
  • One referrer per referee, per campaign. First bind wins.
  • The bind must come before the referee starts earning. A binding submitted after the referee’s first reward-accruing event in that campaign does not count. There is a short grace window to absorb the race between submitting the bind and the deposit landing in a block, but it is seconds, not hours.
  • No retroactive attribution. A wallet that already holds a position in the campaign cannot be bound afterwards.
The practical consequence for a partner: whoever owns the last step before the deposit owns the attribution. If your users deposit through your interface, the bind has to happen there, via POST /v1/referrals/bind with a signed ReferralBind message.
Campaigns that reward anyone holding the target position still reward users who arrive through your product. They just cannot be attributed to you without a bind, so nobody can be paid for having sent them.

What This Is Not

  • Not a discount on your campaign fee. The split changes who receives the fee, not how much is charged.
  • Not a cost to participants. Rewards are untouched. A campaign with a referral split pays its users exactly what the same campaign without one would pay.
  • Not a general affiliate program. It is scoped per campaign, with one rate, and configured by the Boost team.

Keep Exploring

Pricing

How campaign fees are charged and what happens to budget nobody claims.

Earning Activation

The related control that limits rewards to users who entered through Boost.