Referral Program Optimization
After launch, continuously optimize the trigger placement, invite message, recipient landing page, and reward fulfillment.
Why
A referral program is never 'done' — the trigger placement, invite message, and landing page each have 2-3x upside from iterative A/B testing, and the compounding effect across the funnel is 5-10x. The trigger placement determines how many users see the invite affordance (impressions); the message determines how many recipients open (CTR); the landing page determines how many convert (signup rate). Each step's optimization multiplies the next, so a 20% lift at each of 3 steps yields 1.2^3 = 1.73x total. The reward fulfillment speed also matters: instant fulfillment drives re-invites, while delayed fulfillment ('pending review') kills the re-invite loop. The discipline is a weekly optimization cadence on the weakest funnel step, measured against the full trigger→activated funnel.
When
When the program is live 4+ weeks and k has plateaued. Optimize one funnel step per week, measure 2 weeks before next.
How
1. Instrument the full funnel: trigger impressions → invites sent → opens → clicks → signups → activated → reward fulfilled 2. Compute the conversion rate at each step; the lowest rate is the highest-leverage optimization target 3. Step 1 — trigger placement: A/B test 3 placements (in-flow vs toast vs sidebar); pick the one with highest impression-to-send rate 4. Step 2 — invite message: A/B test 3 messages (user-authored vs templated vs result-preview); pick the highest open rate 5. Step 3 — landing page: A/B test 3 pages (shared-artifact vs generic-signup vs inviter-personal); pick the highest signup rate 6. Step 4 — fulfillment speed: move from delayed to instant; measure re-invite rate (does the inviter invite again within 7d?) 7. After optimizing all 4 steps, re-measure k; the compounding lift should be 1.5-2x 8. Move to a monthly cadence: re-check each step quarterly as the audience saturates and what worked at launch decays
Example
# Funnel step conversion rates (before optimization) Trigger impressions → invites sent: 8% ← lowest, optimize first Invites sent → opens: 42% Opens → clicks: 28% Clicks → signups: 35% Signups → activated: 40% k = 0.22 # Week 1-2: optimize trigger placement (3 A/B variants) A: sidebar widget → 4% impression-to-send B: in-flow button → 11% ← winner, +37% over baseline C: success toast → 9% # k rises to 0.28 # Week 3-4: optimize invite message A: user-authored → 42% open rate B: templated → 38% C: result-preview → 51% ← winner, +21% # k rises to 0.34 # Week 5-6: optimize landing page (shared-artifact deep link) # signup rate 35% → 48%, k rises to 0.41 # Compounding: 0.22 → 0.41 = +86% from 3 optimizations
Common Problems
- ⚠Optimizing all funnel steps at once, so you can't attribute the k movement to any single change.
- ⚠Optimizing the step you're comfortable with (landing page for engineers) instead of the lowest-conversion step (trigger placement).
- ⚠Testing 2 variants when 3 would have found a 20% better winner; the opportunity cost of under-testing compounds.
- ⚠Stopping optimization after launch because 'the program is live'; a live program decays without continuous tuning.
Best Practices
- ✓Optimize one funnel step at a time, measure 2 weeks, then move to the next; confounded changes can't be attributed.
- ✓Always attack the lowest-conversion step first; a 20% lift on an 8% step beats a 20% lift on a 40% step.
- ✓Test 3 variants per step, not 2; the third often reveals a direction the first two missed.
- ✓Move to a monthly cadence after the first optimization pass; what won at launch decays as the audience saturates.