// design

Referral Program Design

Use when the user wants to design, launch, or fix a customer referral or advocacy program: who to ask, when to ask, what reward to offer (one-sided or two-sided), and whether the economics beat other channels. Also use when the user mentions referral program, refer-a-friend, referral rewards, advocacy program, customer introductions, double-sided incentive, viral coefficient from referrals, or "how do we get customers to refer us". Produces a referral program design with referral CAC, break-even reward, payback, k-factor, and pointers to the disclosure and healthcare rules to check.

DesignengineIntermediate
bash
$npx skills add sarojkjha/aaj-marketing-skills --skill referral-program-design
Or run it in Claude or ChatGPT through the AAJ engines connector

Claude Code

/plugin marketplace add sarojkjha/aaj-marketing-skills
/plugin install aaj-marketing-skills@aaj

OpenAI Codex

codex plugin marketplace add sarojkjha/aaj-marketing-skills
codex plugin add aaj-marketing-skills@aaj

Claude or ChatGPT — no install

Add this as a custom connector:

https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp
Recipes: vendor data in, a verdict out

// when to use it

Use when the user wants to design, launch, or fix a customer referral or advocacy program: who to ask, when to ask, what reward to offer (one-sided or two-sided), and whether the economics beat other channels. Also use when the user mentions referral program, refer-a-friend, referral rewards, advocacy program, customer introductions, double-sided incentive, viral coefficient from referrals, or "how do we get customers to refer us". Produces a referral program design with referral CAC, break-even reward, payback, k-factor, and pointers to the disclosure and healthcare rules to check.

// what you give

Active customer count, the signals that mark an engaged customer (NPS, usage, renewals), your own or assumed ask and conversion rates, reward cost per side, LTV, and the CAC of the channel referral would replace

// what you get

A referral program design (who, when, reward, mechanics, tracking) with referral CAC, break-even reward, payback, LTV:CAC, k-factor, findings, and compliance pointers to check with counsel

Engine spec

// decision it supports

Would a referral program bring in customers more cheaply than the channel it replaces, and what is the most we can pay in rewards?

// inputs

Active customer count, the signals that mark an engaged customer (NPS, usage, renewals), your own or assumed ask and conversion rates, reward cost per side, LTV, and the CAC of the channel referral would replace

// output

A referral program design (who, when, reward, mechanics, tracking) with referral CAC, break-even reward, payback, LTV:CAC, k-factor, findings, and compliance pointers to check with counsel

// acts or analyzes

Analyzes only

Makes no network calls, writes no files and changes nothing in your tools.

// where your information goes

How you run itWhere your inputs go
Skill installed in your agent, or the local MCP serverThe engine runs on your machine and AAJ receives nothing. Your AI agent still sends what you give it to its model provider (Anthropic, OpenAI and so on), under your own account's terms.
Hosted MCP serverYour agent's model provider, as above, plus AAJ's server on Cloudflare, which receives the engine inputs over HTTPS, runs them in memory and keeps no copy. Cloudflare keeps error logs (no inputs) for up to 7 days.

No engine needs customer names, emails or other personal data; leave them out.

// limitations

  • Ask and conversion rates are usually guesses before launch. With assumed inputs the output is a scenario; replace them with measured rates after the first period.
  • It models one period. The amplification figure assumes referred customers refer at the same rate as others, which is unmeasured until they do.
  • Referred customers get the same LTV unless you pass a measured referredLtv. Do not assume they are worth more; the 16% finding is from one bank.
  • Compliance flags print pointers to rules (FTC, Anti-Kickback, HIPAA); they are not a legal check. The research is mostly consumer, with no peer-reviewed B2B cash-reward study.

// review before acting

The founder or finance lead confirms LTV, the CAC being replaced and which rates are assumptions. Counsel reviews any reward involving public posts, reviews or healthcare providers before launch.

// setup

install
$npx skills add sarojkjha/aaj-marketing-skills --skill referral-program-design
hosted mcp
$https://aaj-engines-mcp.sarojkjha10.workers.dev/mcp

Agents listed: Claude Code, Cursor, OpenAI Codex, Windsurf, Cline. Tested and recorded: Claude Code.

Full spec on GitHub

Referral Program Design

Design a referral program that asks the right customers at the right moment, rewards them in a way that does not buy the wrong customers, and costs less per customer than the channel it replaces.

When to use

The user wants to start a referral or advocacy program, size a reward, decide between one- and two-sided incentives, or check whether an existing program pays for itself. For the general loop math across referral, content and paid loops, use aaj-marketing-loops; this skill is the referral program itself.

Before you start

  1. Read the brand/product context first. Pull ICP, pricing, buyer, and whether customers are healthcare providers from .agents/product-marketing.md (or .agents/aaj-brand.md). If none exists, ask.
  2. Gather inputs: active customers; the signals that mark an engaged customer (NPS promoters, usage depth, renewals, a milestone reached); the share of customers who meet them; LTV on gross margin; the fully loaded CAC of the channel referred customers would otherwise come from; gross margin per customer per month.
  3. Separate data from guesses. Ask-to-referrer and referral-to-customer rates are usually unknown before launch. Mark them as assumptions and treat the first period as the test that replaces them.
  4. Confirm the objective: more customers at a lower CAC, references for sales, or both. In B2B, references and introductions often matter more than a cash reward.

Method

Diagnose whether referral fits: customers can show a result they are proud of, they know people with the same problem, and those people trust them. If any of the three is missing, fix the product or the segment before building a program.

Design around three choices. Who: customers already getting value, identified from your own signals (promoters, deep usage, renewals), asked at a success moment rather than all at once. What: a modest reward, usually two-sided and in product credit, paid when the friend becomes a customer; in B2B, a reference list and a personal thank-you are often the better design. How it pays: referral CAC must sit below the CAC of the channel it replaces, and the reward has a ceiling you can compute.

Execute with tracking from day one (who referred whom, in the CRM), and judge the program on five numbers: share of new customers from referral, referrals per active customer, retention and LTV of referred customers versus others, cost per referred customer, and second-generation referrals.

Workflow

  1. Check fit against the three conditions above. Stop and say so if referral does not fit.
  2. Define the referrer pool from the customer's own signals, and the success moment that triggers the ask (a milestone, a reported result, a renewal, a positive support conversation).
  3. Choose the reward design (two-sided credit, account usage, status or access, or no reward and a great ask), and when it is paid. Default to paying when the friend becomes a customer.
  4. Run the engine with the founder's numbers, marking assumptions. Read referral CAC against the CAC it replaces, and the break-even reward.
  5. Resize the reward if it exceeds the break-even, or if the fixed cost needs a wider ask to spread over.
  6. Switch on the compliance flags that apply (public posts, reviews, healthcare providers, patient information) and pass the pointers to the founder to check with counsel.
  7. Specify tracking and the review cadence: the five numbers, every period, with assumptions replaced by measured rates.

The math

asked          = customers x shareAsked
referrers      = asked x askedToReferrer
referrals      = referrers x referralsPerReferrer
newCustomers   = referrals x referralToCustomer

rewardCost     = referrer rewards (per customer, or per referral) + friend rewards (per customer)
referralCAC    = (rewardCost + fixedCost) / newCustomers
breakEven      = otherCAC - fixedCost / newCustomers      (combined reward per referred customer)
payback        = referralCAC / monthly gross margin per customer
k (program)    = newCustomers / customers                 (per period)
amplification  = 1 / (1 - k)  if referred customers refer at the same rate and k < 1

A reward per referral (not per customer) costs reward / referralToCustomer per referred customer. That is the most common way a program ends up paying more than the channel it replaces.

Run the tool

node resources/referral-economics.js --demo
node resources/referral-economics.js '<json-config>'
node resources/referral-economics.js --help

The engine returns the funnel, referral CAC split into rewards and fixed cost, break-even reward, the most the referrer reward can be at the current friend reward, payback, LTV:CAC, savings against the other channel, and k. It flags: rewards above the CAC they replace, referral CAC above the other channel or above LTV, rewards paid per referral, one-sided rewards, rewards larger than a month of customer spend, asking every customer, a missing fixed cost, and assumed inputs. Flags in flags switch on compliance pointers. Every rate is the founder's; the engine holds no benchmarks.

Reference

  • AAJ's post Referral Programs for Startups (aajconsult.com/blog/referral-programs-for-startups) carries the research and the rules this skill points to, with primary links:
    • Referred customers worth at least 16% more at a German bank: Schmitt, Skiera and Van den Bulte (2011), doi:10.1509/jm.75.1.46.
    • Larger rewards brought more referred customers but less profitable ones: Wolters, Schulze and Gedenk (2020), doi:10.1287/mksc.2020.1242.
    • For innovative products, rewarding both sides softened the drop in referrals a visible referrer reward caused: Dose and others (2019), doi:10.1007/s11747-019-00635-z.
    • Who to recruit as referrers: Van den Bulte and others (2018), doi:10.1509/jmr.14.0653. Business reference value: Kumar, Petersen and Leone (2013), doi:10.1509/jm.11.0424.
  • Rules to check (pointers, not verdicts): FTC Endorsement Guides, 16 CFR Part 255; FTC consumer reviews rule, 16 CFR Part 465; Google Maps content policy on incentivized reviews; HHS-OIG on the Anti-Kickback Statute; HIPAA marketing authorization, 45 CFR 164.501 and 164.508(a)(3). Links are in the engine's POINTERS and in the post.
  • The research is mostly consumer banking, telecom and apps. AAJ's post found no peer-reviewed study of cash-incentive referral programs specifically in B2B: say so when advising a B2B company.

Present the result

  • Fit: the three conditions, each met or not.
  • Program design: referrer pool and the signal that defines it, the success-moment trigger, the reward (sides, form, size, when paid), the ask message, and how a referral counts.
  • Economics: the engine's funnel, referral CAC against the CAC it replaces, break-even reward, payback, k; with assumptions labelled.
  • Rules to check: the pointers that apply, stated as things to check with counsel.
  • Tracking: the five numbers and when they are reviewed.

Guardrails & common mistakes

  • No invented rates. If the founder has no ask or conversion rates, run the engine with labelled assumptions and say the output is a scenario.
  • Do not assume referred customers are worth more. The 16% finding is one bank. Use a separate referredLtv only when the founder has measured it.
  • Pay on the outcome. Rewards per referral buy names, not customers.
  • Bigger is not better. Larger rewards can attract people who come for the reward; start modest and test up.
  • Never tie a reward to a review. Keep referral rewards and review requests separate.
  • Healthcare providers are different. Anything of value to a provider for steering business can be a kickback risk; the default design is no reward, and any incentive goes to a healthcare lawyer first. Never give a legal verdict; point to the rule and to counsel.
  • Track who referred whom from the first referral, or none of the five numbers can be computed later.

aaj-marketing-loops · unit-economics · lifecycle-and-retention · case-study-and-proof · customer-survey-design · partnerships-and-co-marketing

// faq

// install

$npx skills add sarojkjha/aaj-marketing-skills --skill referral-program-design

// worked example

Get the worked example for Referral Program Design

One email. The filled-in config, the output, and how to read it.

No spam. Unsubscribe anytime.

// sprint

Unit Economics & Retention Sprint — $3,500, 10 business days

This skill is one of the engines behind the Unit Economics & Retention Sprint — $3,500, ten business days.

LTV, CAC, payback and churn on your actual numbers — with a verdict, not a dashboard.

See what's included.

// human in the loop

Need a human in the loop?

AAJ builds the strategies, tools, and playbooks these skills are made of — with engagements for growth-stage and enterprise teams.