Referrals, invite codes, and affiliates aren't three products to build and maintain. They're one relationship—"who brought whom"—paying out in different currencies as we grow. Here's why that's the right architecture, and how it makes our beta advocates wake up already monetized on launch day.
"Refer a friend to climb the line," "share an invite code to let someone skip," and "earn commission for sending a paying customer" feel like three features. They share one verb: I brought you here. Build that bond once—then let the reward change with the season.
Separate referral table, separate invite-code logic, separate affiliate attribution. Three schemas that drift, three places to debug, and a beta advocate who has to re-sign-up as an affiliate at launch—losing the relationship they already earned.
One attribution edge—"X brought Y"—written once at signup. Referral link or invite-code redemption both write the same edge. A payout layer reads that graph and changes by phase. Three concepts, one system.
Superhuman's own data: a waitlisted user converts to paid at ~3% vs ~10% live—and that halves every year they wait. The system's real job isn't a giant list. It's identify your hottest advocates and fast-track them in, monetizing the relationship for the long haul.
Referral = a position. Invite = a seat. Affiliate = a dollar. Same edge in the graph. Different payout, depending on what we have to give at that moment.
Climb the waitlist. The viral growth engine while we're gated. Costs us a seat we were releasing anyway.
Skip the line entirely. The scarce accelerant—you get a few to hand trusted friends instant entry. Clubhouse mechanic.
Earn cash. Only meaningful once there's something to buy. Same person, same sharing—now there's revenue to share.
▲ Critical: every "I brought you" event—referral link OR invite-code redemption—writes the same parent-affiliate edge. The friend you fast-track becomes your downline. Forever.
A single person's sharing behavior never changes. What it earns upgrades from position → seat → dollars as they move through the funnel and as we move from gated to public.
Shares referral link, jumps the queue with score-ranked position.
→Spends scarce invite codes to fast-track their best friends past the line.
→Gets in, builds a real app. Rewards vest on activation—fraud earns nothing.
→At public launch, their beta downline auto-converts to paid affiliate commission.
We don't rebuild at launch. The payout layer reads the existing edges and switches what it pays. Public launch is a flag flip, not a migration.
The whole vision lived or died on one feasibility question: can we set a parent affiliate at beta signup and have commission auto-route to them on a purchase months later—after any cookie is long gone? We attacked it adversarially. The answer:
Whop exposes createAffiliate (mint an affiliate for any user by email/userID) plus a programmatic affiliateCode we inject server-side at checkout (data-whop-checkout-affiliate-code). That means our graph drives attribution at checkout time—no surviving cookie required. The "auto-monetized on launch day" claim is buildable.
▲ Two things only Whop/Ari can confirm: (1) does our injected code beat Whop's last-click cookie when both exist? (2) recurring all_payments behavior. There's no affiliate.* webhook in v1 — we poll listOverrides and diff earnings. All flagged, all solvable.
Cheap + instant early (drive the zero-to-one share); rare + expensive late (margin-protected). Credits cost ~$0.01 retail but near-zero COGS and only redeemable by building—so they pull people into the product, not toward a cash-out.
| Milestone | Reward | Why it shares | Margin guard |
|---|---|---|---|
| 1 referral | Badge + 250 credits + visible jump | Zero-to-one is the whole game | Credits = near-zero COGS, in-app only |
| 3 | 1,000 credits + 7-day Pro preview | Goal-gradient kicks in; taste of paid | Time-boxed = the upsell, not a giveaway |
| 5 | Skip to next wave + "Builder" badge | Access is what they actually want | Costs only a seat we were releasing |
| 10 | 1 month Pro (vests on activation) + founding price lock | Founding price creates a future payer | Vests on build — filters freebie-seekers |
| 25 · Founder | 3 months Pro + name on wall + founder Discord | Status + unity — recognition is the reward | Rare by construction; badge/Discord = $0 |
| 50 · Champion | 6 months Pro + build-with-founders calls | Experiential beats merch at the top | Unpaid evangelists worth far more |
| 100 · Legend | 1 yr Studio + real affiliate rev-share + wall | Aspirational halo over the whole ladder | Real rev-share — NEVER vague "equity" |
▲ The Legend tier's "real affiliate rev-share" is the unified graph paying out — your top beta advocates graduate straight into the paid affiliate system. Same edge, cash currency.
We lean hard into Cialdini—but every scarcity and urgency claim is literally true. For a "Builder, not Magician" brand, truth is the persuasion: real scarcity builds trust, while fake scarcity provokes the strongest backlash of any dark pattern (and is an active 2026 FTC/EU enforcement target).
Real seat caps + real dates. "Wave 3 = 200 seats, Fri 9am." Never a fake counter.
"3 people passed you this week"—only because position is genuinely zero-sum.
"You're 1 referral from Pro preview"—only when literally true. Discrete endpoints.
"1,144 builders already shipped apps." Real numbers, real activity.
The friend gets credits + a head-start first. People share to give.
Founder / Champion / Legend identity. A real community of builders.
In beta, a fake referral only costs us a position—cheap. But these edges auto-convert to paid affiliate edges. So a ring that games the leaderboard now holds paid edges. One rule closes most of it:
Beta rewards vest only when the referee actually builds an app. Affiliate commission only pays when they buy. A fake signup can't build and won't buy—so fraud earns nothing in either phase. This is the single most powerful anti-fraud rule, and unification makes it apply end-to-end.
On top of vesting: graph-overlap checks (email/IP/device/payment-instrument) at mint · commission math so a self-purchase is never net-positive · first_payment + retention gate for beta-seeded edges · velocity/ASN clustering at edge-write · Whop's refund auto-clawback · terms-based clawback + archive authority.
▲ Commission rate, tiered by edge type: beta auto-enrolled → 10–15%, first_payment (high cannibalization on people who'd buy anyway); intentional/content affiliates → 20–30%. The launch-day magic still lands at 10–15% — automatic is the delight, not the rate.
The current "admit the next wave" path stamps access but never sets status:active—it would silently strand everyone. Must fix before any release lever is pulled. (Same bug class we just fixed in the per-person grant.)
Write ONE permanent "X brought Y" edge—on referral link AND invite-code redemption. This is the spine of the whole system.
Replace flat "+25 spots" with a transparent score. One-tap share + pre-written copy + personalized OG card at the post-signup moment (highest-leverage share point).
Disposable-email block, device fingerprint, velocity caps, ring detection—before scaling traffic, so the list stays clean.
The one load-bearing test: mint a test parent by email → inject their code at a fresh checkout from a never-touched device → confirm it credits them AND overrides last-click. Pass = the vision is proven. (Then it's all policy we control.)
Lazy-mint Whop affiliate at first conversion + polling reconciliation (no webhook in v1). Build it so public launch is a flag flip, not a rebuild.
The only slide that matters: "if we release X off the waitlist, we get Y paying customers." That Y/X ratio is the whole game. Release fast (<30 days) or conversion decays.
▲ The hidden self-destruct (proven in queuing-theory research): referral-priority queues collapse via congestion + perceived unfairness if too successful. Guard = release cadence proportional to inflow. The wait is a tool, not a warehouse.
Don't build referrals, invites, and affiliates as three systems that drift apart and force your advocates to start over at launch. Build one attribution graph, a phase-aware payout layer, and vest-on-activation as the fraud guard that works end-to-end. Your beta advocates build their downline now—and wake up monetized on launch day. It's feasible, it's fraud-resistant, and it's honest.