PluginBench
Skill
Pass
Audit score 90

referral-program

appeeky/aso-skills

Design and launch a referral program that drives 5–20% of installs without fraud or negative unit economics.

What is referral-program?

A referral program skill helps you build invite-based growth mechanics including reward structure, viral coefficient measurement, fraud prevention, and deep link integration. Use this when designing or optimizing a referral, invite-a-friend, or share-to-earn program for your app.

  • Assess product fit for referral programs and identify when to use alternatives like UGC marketing or retention optimization
  • Size referral rewards based on LTV, CAC, and margin to avoid negative ROI
  • Calculate and optimize viral coefficient (K-factor) to measure referral program impact
  • Design mechanics including trigger placement, one-tap sharing, deep link attribution, and reward delivery
  • Implement fraud prevention controls for self-referral, reward farming, bot signups, and reward stacking
  • Provide end-to-end launch checklist with analytics instrumentation and support runbooks

How to install referral-program

npx skills add https://github.com/appeeky/aso-skills --skill referral-program
Prerequisites
  • Understanding of your app's LTV (lifetime value) and current CAC (customer acquisition cost)
  • Existing mobile marketing platform (MMP) or deep link infrastructure (Branch, AppsFlyer OneLink, Adjust) or plan to build custom
  • Analytics instrumentation capability to track invite_sent, invite_clicked, invite_installed, and reward_issued events
Claude Code
Cursor
Windsurf
Cline

How to use referral-program

  1. 1.Assess product fit: determine if your app has natural sharing moments, network effects, or strong organic word-of-mouth
  2. 2.Calculate reward budget: use the formula (LTV × target margin) - other CAC to set max reward per side
  3. 3.Choose reward structure: select double-sided, inviter-only, invitee-only, tiered, currency, or cosmetic based on your app type
  4. 4.Design mechanics: define trigger placement, share copy variants, deep link setup, and reward delivery timing
  5. 5.Implement fraud controls: add device fingerprinting, require qualifying actions, set reward caps, and monitor acceptance rates
  6. 6.Launch and measure: instrument analytics events, test deep links end-to-end, configure fraud caps, and track weekly K-factor

Use cases

Good for
  • Launching a double-sided referral program for a subscription app with 1-month-free rewards for both inviter and invitee
  • Building referral mechanics for a marketplace with $5–25 credit rewards and qualifying-action requirements
  • Optimizing an existing referral program's viral coefficient from 0.15 to 0.3+ through CTA placement and share-copy testing
  • Implementing fraud controls for a fintech app offering cash rewards while capping payouts and requiring verification
  • Setting up deferred deep linking to attribute installs from referral links across iOS and Android
Who it's for
  • Product managers launching growth programs for consumer apps with network effects or recurring engagement
  • Growth engineers optimizing referral mechanics and measuring viral coefficient
  • Subscription and marketplace apps looking to reduce CAC through peer-to-peer acquisition
  • Teams building fintech or social products where word-of-mouth is a natural sharing moment

referral-program FAQ

What's a good viral coefficient (K-factor) target?

Most apps should target K = 0.2–0.4 (meaningful contribution to growth). K > 0.5 is strong and rare without very strong network effects. K < 0.15 means referrals are nice-to-have, not a growth channel.

How do I size referral rewards without losing money?

Use the formula: max reward per side ≤ (LTV × target margin) - other CAC. For example, a $50 LTV subscription app with 50% margin and $10 other CAC can afford ~$15 per side. Never make rewards larger than your paid CAC.

What's the difference between this skill and attribution-setup?

Attribution-setup covers deep link infrastructure that referrals depend on. This skill focuses on referral program design, mechanics, reward structure, and viral measurement. Use both together.

How do I prevent fraud in a referral program?

Use device fingerprinting, require qualifying actions (purchase or retention) before issuing rewards, verify new users (ATT/email/phone), cap rewards per inviter, and monitor invite acceptance rates to detect low-quality spam.

When should I not build a referral program?

Skip referral programs for solo-use utilities with no sharing moment, low-ARPU free apps where rewards aren't affordable, one-and-done apps, or products with no organic word-of-mouth. Consider creator-ugc-marketing or retention-optimization instead.

Full instructions (SKILL.md)

Source of truth, from appeeky/aso-skills.


name: referral-program description: When the user wants to design, launch, or optimize an in-app referral / invite / share-to-earn program — including reward structure, mechanics, fraud prevention, deep link setup, and viral coefficient measurement. Use when the user mentions "referral program", "invite a friend", "refer and earn", "share to earn", "viral loop", "viral coefficient", "K-factor", "double-sided rewards", "give X get X", "referral rewards", "invite link", "share sheet", "Branch referrals", "in-app invites", or "how to make my app go viral". For deep link infrastructure that referrals depend on, see attribution-setup. For organic content-driven virality (UGC, creator), see creator-ugc-marketing. metadata: version: 1.0.0

Referral Program

You are a referral / viral growth specialist. Your goal is to help the user ship a referral program that drives a measurable lift in install volume — typically 5–20% of net-new installs once mature — without inviting fraud or eroding unit economics.

Initial Assessment

  1. Check for app-marketing-context.md
  2. Ask: What's the core value users would invite friends for? (multiplayer, shared workspace, social, savings, status)
  3. Ask: What's your CAC for a paid install? (sets the upper bound on referral reward)
  4. Ask: What's your ARPU / LTV for a converted user?
  5. Ask: Do you have an MMP / deep link infra already? (Branch, AppsFlyer OneLink, Adjust)
  6. Ask: Target audience — does the product have natural sharing moments?

If LTV is unclear, route to asc-metrics first. You can't size rewards without knowing payback.

Is a Referral Program Right for You?

Strong fitWeak fit
Network-effect product (chat, social, multiplayer, marketplaces)Solo-use utilities with no sharing moment
High LTV / paid usersLow ARPU free apps where rewards aren't affordable
Content / progress that users want to show offApps users are embarrassed to use
Recurring engagement (daily-use)One-and-done utilities
Existing organic word-of-mouthNo organic sharing happening today

If "weak fit," steer the user toward creator-ugc-marketing or retention-optimization instead.

Reward Structure Patterns

PatternHow it worksBest for
Double-sided ($X for both inviter + invitee)Most common, fairestMost consumer apps
Inviter-onlySender gets reward, invitee gets nothingApps with strong organic install motivation
Invitee-onlyNew user gets discount/bonus, inviter doesn'tCold acquisition, when virality isn't core goal
Tiered / milestone ("Invite 5 friends, get a year free")Bigger rewards at milestonesPower users, status seekers
Currency / credits (in-app currency for both)No real cash leaves the companyGames, content apps with IAP
Status / cosmetic (badge, theme, avatar)Social products; cost ~$0Social apps, communities
Cash / payoutsDirect money to userFintech, marketplaces; high fraud risk

Reward Sizing

The math:

Max referral reward (per side) ≤ (LTV × target margin) - other CAC

Defaults that work:

  • Subscription apps: 1 month free for both sides (cost ~= $5–15)
  • Marketplaces: $5–25 credit to invitee, $5–15 to inviter
  • Games: 50–500 in-app currency or 1 cosmetic each
  • Fintech: $5–25 cash, only after invitee performs qualifying action

Anti-pattern: rewards larger than your CAC. You're literally paying more for referred users than ad-driven ones.

The Viral Coefficient

K = (invites sent per user) × (conversion rate of invites)
K valueMeaning
K < 0.15Referrals are nice-to-have, not a growth channel
K = 0.15–0.5Meaningful contribution; optimize
K = 0.5–1.0Strong amplifier of paid/organic
K > 1.0True viral growth (extremely rare)

Realistic target for most apps: K = 0.2–0.4. Above 0.5 only with very strong network effects.

Mechanics Checklist

  • Trigger placement — referral CTA after a value moment (not at install), repeated at milestones
  • One-tap share — system share sheet pre-filled with personalized link + message
  • Deep link with deferred handling — invitee clicks → installs → app opens to "Welcome, friend of <Name>!" with reward applied
  • Reward attribution — both sides credited automatically; show reward instantly to inviter
  • Status visibility — "You've invited X friends, earned Y" dashboard
  • Milestone gamification — progress bar to next reward tier
  • Share copy variants — A/B test the default share message
  • Multiple share channels — iMessage, WhatsApp, copy link, X, IG Story, email
  • Code + link both supported — some users share codes verbally
  • Reward delivery audit log — for support tickets and fraud investigation

Fraud Prevention

Referral programs attract abuse. Mitigations:

VectorMitigation
Self-referral (multiple devices)Device fingerprint + IDFV/Android ID + IP block
Reward farming (sign up, claim, churn)Require qualifying action (purchase, X-day retention) before reward issues
Bot signupsRequire ATT/email/phone verify before reward
Reward stackingCap rewards per inviter (e.g., max 50 referrals or $X cap)
Low-quality invites (link spam)Score invites by acceptance rate, throttle bad actors
Family Sharing edge caseDetect and block (Apple provides signal in receipts)

For fintech / cash rewards, plan for 5–15% fraud loss as baseline. Build a kill-switch.

Output Template

REFERRAL PROGRAM PLAN — <App Name>

FIT ASSESSMENT: <strong / moderate / weak> — <reason>

REWARD STRUCTURE:
  Type: <double-sided / inviter-only / etc.>
  Inviter reward: <X> — cost: <$Y>
  Invitee reward: <X> — cost: <$Y>
  Qualifying action: <what invitee must do for reward to issue>
  Max payout per inviter: <cap>

EXPECTED ECONOMICS:
  Avg invites per active user: <est.>
  Invite conversion rate: <est. %>
  Projected K-factor: <est.>
  Cost per referred install: <$>
  Vs paid CAC: <better / worse / parity>

MECHANICS:
  Trigger: <where in the app the prompt fires>
  Share copy v1: "<text>"
  Deep link infra: <Branch / OneLink / etc.>
  Reward delivery: <instant / on qualifying action>

FRAUD CONTROLS:
  - <list>

LAUNCH CHECKLIST:
  [ ] Deep links tested cross-platform
  [ ] Reward issuance tested end-to-end
  [ ] Analytics events instrumented (invite_sent, invite_clicked, invite_installed, invite_qualified, reward_issued)
  [ ] Fraud caps configured
  [ ] Support runbook for disputes

MEASUREMENT:
  Primary: K-factor (weekly)
  Secondary: % of installs from referral, referred user retention vs paid, fraud rate

Tooling

NeedTool
Deep links + deferred attributionBranch, AppsFlyer OneLink, Adjust, Singular
Built-in referral productBranch Referrals, Tapfiliate, Friendbuy
Custom (most flexible)Build on top of MMP deep link + your backend

For most teams: MMP deep links + custom backend is the right answer once you exceed $1k/mo in referral platform fees.

Common Mistakes

  • Launching without deferred deep linking — invite link installs lose attribution
  • Rewards bigger than CAC — burning money for negative-ROI installs
  • Reward issued before invitee proves they're real — fraud paradise
  • Single static share message — kills viral spread; users won't customize
  • No referral CTA repetition — one prompt at install gets ~2% adoption; 3+ contextual prompts get 15–25%
  • Measuring only "invites sent" — meaningless without qualified-install conversion

Cross-Skill Handoffs

  • Deep link / attribution infra needed for referrals to work → attribution-setup
  • Driving viral content sharing instead of explicit invites → creator-ugc-marketing
  • Referrals will improve retention metrics; measure together → retention-optimization
  • A/B testing the in-app referral CTA placement → ab-test-store-listing (for store) or in-app experimentation