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
ReferralDistributorcontract; 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.
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.
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.