Skip to content
Academy
Marketing Academy · Field Work●Growth Marketing
CoreBuild the Asset· 50 minutes

Design a Referral Program From Scratch

Zendesk

Objective: Given a product profile and unit economics, build a complete referral program design: share moment, reward structure, and the two mobile-tracking safeguards the lesson identifies as the most common failure points.

You're a growth PM at Zendesk scoping a referral program for a new self-serve support-desk tier. Product, engineering, and finance all need a single design doc before anyone writes a ticket.

Identify the real share moment, pick a reward structure that matches the product's margin profile, and specify the mobile-tracking safeguards up front.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreeModel candidate share moments and reward cost against unit economics

The design decisions here are comparative scoring and simple margin math, not analytics

Paid upgrades (optional, faster/deeper)

Mixpanel(optional)
FreemiumInstrument the chosen share moment and reward-redemption events once the design ships

Tracking share rate and redemption rate post-launch requires event analytics, not just the design-phase spreadsheet

No access? Google Sheets, manually logging weekly counts pulled from the database

The process

2 steps

Step 01 of 02

Step 1: Identify the Share Moment

The share moment is the point in the product experience when a user is most likely to want to tell someone else, usually right after first value delivery, not buried in account settings.

For a self-serve support-desk product, is the strongest share moment right after signup, or right after a support team resolves its first ticket queue backlog?

Google Sheets— List candidate trigger events with their timing and estimated 'felt value' rating.

Procedure

  1. List every candidate trigger event in the product's first-week journey
  2. Rate each on proximity to a genuine value moment, not just proximity to signup
  3. Select the single highest-rated event as the share-prompt trigger
Sample output
Candidate share moments, Zendesk-style support tier
Account created: felt value LOW (nothing accomplished yet)
First ticket resolved: felt value MEDIUM
First week's ticket backlog cleared to zero: felt value HIGH  <- selected

Healthy

The chosen moment sits right after a support team can see visible, felt proof the product worked (an empty queue), not at account creation.

Unhealthy

Defaulting to 'right after signup' because it's the easiest to build, when no value has been delivered yet.

What this means

The share moment has to coincide with a real 'this worked' feeling, matching Dropbox's post-sync and Airbnb's post-checkout pattern from the lesson.

So what do I do about it?

SymptomActionEffort
The only share prompt currently fires at account creationMove the primary share trigger to the first-week backlog-cleared milestonedev ticket
EitherYou or a developer can handle this, depending on your access.

Step 02 of 02

Step 2: Choose Your Reward Structure

The lesson matches reward type to unit economics: high-margin SaaS should use product credits or feature unlocks (zero marginal cost, high perceived value), not cash.

This is a high-margin SaaS support tier with near-zero marginal cost per seat. Cash reward or product credit, and how large does it need to be to overcome social-sharing friction?

Google Sheets— Model reward cost against the lesson's 10-15% of referred-product-value benchmark.

Procedure

  1. Confirm the product is high-margin SaaS, ruling out cash per the lesson's matrix
  2. Model a product-credit reward (extra seats or a feature unlock) at 10-15% of monthly plan value for both referrer and new user
  3. Check the two-sided structure against the lesson's 3-4x gross-referred-revenue outperformance versus one-sided
Sample output
Zendesk-tier reward model
Monthly plan value: $49/seat
Reward: 1 free month, both referrer and new user (two-sided, ~100% of one month, above the 10-15% floor)
Marginal cost to company: ~$0 (unused seat capacity)

Healthy

A two-sided, product-credit reward sized well above the 10-15% floor, at zero real marginal cost to the company.

Unhealthy

A one-sided $10 cash reward on a $49/month product, below the value threshold and mismatched to a high-margin SaaS product.

What this means

Because the product has near-zero marginal cost per seat, the company can afford a reward that feels generous to the user without a real cash outlay, this is the alignment the lesson's Dropbox example describes.

So what do I do about it?

SymptomActionEffort
Finance is worried about reward cost before seeing the marginal-cost modelPresent the product-credit-vs-cash marginal cost comparison before any reward-size negotiation30 min
YouYou can do this yourself, no engineering access required.

Final deliverable

A one-page referral program design doc: chosen share moment with rationale, reward structure with cost model, and the mobile-tracking safeguard requirement for engineering.

See a reference example
Sample output
Klaviyo referral design doc (excerpt)

SHARE MOMENT: First automated flow goes live and sends its first message (not account creation)
REWARD: Two-sided, 1 free month of current plan tier, ~14% of annual plan value per side
TRACKING REQUIREMENT: First-party cookie fallback for iOS Safari link-decoration stripping, required before launch, not a post-launch fix

Success criteria

You're done when you can:

  • Chosen share moment is tied to a felt-value milestone, not just signup
  • Reward structure explicitly matches the product's margin profile per the lesson's matrix
  • Design doc specifies the mobile-tracking safeguard before launch, not as a follow-up ticket