TL;DR: A viral loop is a closed feedback cycle where each new user produces at least one more. The math is K = i × c: invitations sent per user, multiplied by the conversion rate of those invitations. K > 1 means compounding growth; K < 1 means a paid-acquisition treadmill. Dropbox hit K ≈ 1.5 to 2 with two-sided storage rewards. Morning Brew hit K ≈ 1.3 with tangible swag milestones. Robinhood grew to 1M pre-launch signups with a position-based referral queue. This guide shows the mechanics, the math, and how to ship your own viral loop as a pre-launch waitlist, where LaunchList gives every signup a referral link, a live place in line and verified-only referral credit on every plan, the Free plan included.

What is a viral loop?

A viral loop is a user-acquisition pattern where the product itself is the distribution channel. A user signs up, experiences value, is given an incentive or mechanic that rewards them for inviting others, and those invitees become new users, who repeat the cycle. Unlike paid ads (which stop acquiring users the moment you stop paying), a well-designed viral loop compounds. Every user who joins is a multiplier, not just a cost.

Not all referral programs are viral loops. A referral program that pays a $10 coupon per referral is a promotion. It becomes a loop only when the referred users are incentivized to refer others in turn, closing the cycle. That's the distinction that matters.

The viral coefficient (K): the only metric that matters

The viral coefficient, usually written as K, is the single number that determines whether your loop compounds. The formula:

K = i × c

  • i = average number of invitations each user sends
  • c = conversion rate of invitations into new signups

If each user sends 5 invitations (i = 5) and 20% of those convert (c = 0.20), then K = 1.0. That means each user produces exactly one new user: flat growth, not viral. K must exceed 1 for compounding. Most successful consumer products hit K = 1.1 to 1.5. Anything above 2 is rare and usually short-lived (PayPal, early Dropbox, Hotmail in the 90s).

The other variable people forget: cycle time. Even with a high K, a long cycle time (say, 30 days) means slow compounding. Shorter cycle time = faster viral growth. Dropbox's loop had a cycle of about 1 to 2 days; PayPal's was ~3 days. Position-based waitlist loops (like Robinhood's) often have cycle times of hours.

The 4 components of every viral loop

1. Activation: the first value delivery

Nothing else matters if new users don't experience the product's core value quickly. Dropbox shows you your files syncing on another device within seconds of install: that's the activation moment. Robinhood's activation is seeing your waitlist position counter drop from 500,000 to a number you can track. Build the activation moment ruthlessly short. Every friction point halves the number of users who ever reach the sharing trigger.

On a waitlist, the activation moment is the page people land on right after signing up. In LaunchList that is each signup's personal status page: their position, their referral link with a copy button, share buttons, how many friends they have referred and, if you run rewards, how far they are from the next one. If double opt-in is on, it also tells them they still need to confirm and what that is holding up, so the confirmation click becomes part of the loop instead of a leak.

2. Value exchange: the incentive to invite

Users only invite when the exchange feels fair. The best viral loops offer a two-sided reward: the inviter and the invitee both get something. Dropbox gave both 500MB of storage. PayPal gave both $10. This doubles the perceived fairness and increases acceptance rates on the invitee side.

One-sided rewards still work, but only when the reward is high-value or status-driven. Robinhood's position-queue waitlist gave no cash, just a number that went up when you referred. The reward was early access, which felt exclusive enough to drive referrals despite no tangible benefit.

3. Sharing mechanism: frictionless distribution

Every extra click drops your invitation rate by roughly 20%. Best-in-class loops give users a single personal referral link, a pre-filled message, and native share-sheet integration. Don't make users compose their own invitation: write it for them. Don't bury the share UI behind an Account menu: surface it on the main screen.

Two waitlist-specific details matter here. First, where the link lands: in LaunchList you choose whether referral links open your hosted page, your own site or any custom URL (Audience, Referrals & rewards, Settings), and the code is captured on arrival and kept in the visitor's browser for 90 days, so the link can point at any page. Second, how the link looks when pasted: hosted pages get an automatic share card (or your own 1200x630 image), so the link unfurls properly in WhatsApp, Slack and X instead of showing a bare URL.

4. Reinforcement: the reason to send more

A one-shot reward gives you one invite per user. A tiered or ongoing reward gives you many. Morning Brew's swag ladder (3/10/15/25/50/100 referrals) turned one-off sharers into ongoing promoters. In LaunchList, milestone rewards and a live place in line do the same: people see their position move as friends join, and see how many more referrals the next reward takes. Rewards and milestones, and points for follows and shares, are on the Collect plan and up; the live place in line and leaderboard are on every plan.

Case studies with real numbers

Dropbox: the canonical two-sided loop

Dropbox's 2008 referral program offered 500MB of free storage to both inviter and invitee, up to 16GB total. The result: signups grew from 100,000 to 4,000,000 in 15 months, a 3,900% increase. Houston (Dropbox's CEO) has said referrals drove 2.8× more signups than their paid acquisition at the time. The loop worked because storage was a recurring pain point, the reward was directly usable, and the cycle time was short: users installed Dropbox and immediately hit the "my other computer needs this too" moment.

Morning Brew: swag milestones at scale

Morning Brew grew from ~100,000 to 2,500,000+ subscribers partly through a referral program with tangible milestones: a sticker at 3 referrals, a mug at 10, a t-shirt at 25, a hoodie at 50, a branded bookshelf at 100. The genius is that each milestone feels like an identity marker ("I'm a Morning Brew power user"). Conversion rates at the 3-referral threshold were extraordinary because the cost, asking 3 friends to sign up for a free newsletter, was tiny.

Robinhood: the position queue

Robinhood accumulated 1 million users on its waitlist before launching, using a position-based viral queue. Each signup saw their position (e.g. "You're #872,451") and could move up by referring friends. The mechanic is pure gamification: no cash, no product, just a number. But the psychological sunk-cost effect kept users engaged for months. It is the mechanic LaunchList gives every waitlist by default; see 15 waitlist landing page examples for teardowns of the best ones.

How to design your own viral loop

Step 1: Pick the mechanic that matches your product

  • Two-sided credit (Dropbox, PayPal): works when your product has a quota/credit the user wants more of.
  • Milestone rewards (Morning Brew): works when you have a long-term engaged user base and tangible swag budget.
  • Position queue (Robinhood): works pre-launch or for scarcity-driven products. Free to ship.
  • Feature unlock (Notion, Superhuman): works when your product has gated features you can selectively unlock.

Step 2: Measure K before you optimize it

Instrument your product to track: invitations sent per user, invitation acceptance rate, and cycle time (how long between signup and first invitation). If K is below 0.5, your loop is too weak to matter yet: fix the product or the reward, not the sharing UI. If K is between 0.5 and 1.0, you can realistically push it above 1 by reducing friction. If K is already above 1, focus on extending lifecycle so the loop runs more times per user.

On a waitlist, most of the inputs are already counted for you. In LaunchList, Analytics, Referrals shows referred signups, how many people referred anyone, referrals per referrer, a referred vs organic chart, a signup-to-reward funnel and a leaderboard by network, each read against the period before, so you can see whether the loop is getting stronger. LaunchList does not hand you a single K score; plug those numbers into the formula above to get your own, and use the referred share of signups as the week-to-week health check. The Overview tab adds hosted-page visit-to-signup conversion, which is your c for traffic that arrives through referral links.

Only count verified referrals when you compute K. A loop inflated by fake addresses looks like K > 1 right up until you email the list. LaunchList credits a referral only after the friend verifies, caps credit at 3 per IP address and 20 per hour by default, and takes credit back when a signup later turns out to be part of a device farm, so the referral numbers you read are real people.

Step 3: Ship the loop as a waitlist first

The cheapest test of a viral loop is a pre-launch waitlist landing page with referral positions. It requires no product, no payments, and gives you real viral coefficient data in days, not months. If your waitlist goes viral, your product will too. If it doesn't, you've learned something critical about demand and positioning for a $0 cost. For the exact stack, see our comparison of the best free waitlist tools.

Step 4: Reduce sharing friction ruthlessly

Every click, every form field, every "compose your message" step halves your invitation rate. The best loops give users: a single personal link on the thank-you page, one pre-filled share button per platform (Twitter/X, WhatsApp, email, LinkedIn), and a copy-to-clipboard action. Nothing else on the screen.

Step 5: Reinforce with ongoing feedback

Send a well-crafted email when each new referral joins. Show the user's updated position in real time on the thank-you page. If you're doing milestone rewards, show progress toward the next tier. Every reinforcement signal is free fuel for the loop.

In LaunchList the position on the status page is computed live, so it moves the moment a friend's referral is credited. On the Launch and Grow plans, an automation triggered by Referral credited (it can be narrowed to fire only at N referrals) can email the referrer, tag them or invite them early, and rewards send their own unlock email on the Collect plan and up. The Referral nudge email in the library is a ready-made broadcast for people who have not shared yet.

Common mistakes that kill viral loops

  • Incentive mismatch. If the reward isn't something the user actually wants, no amount of sharing UI will save the loop. Test this before you build.
  • Broken invitation tracking. If you can't attribute the new signup back to a specific inviter, you can't reward them, and the loop breaks. Capture the referral code when the visitor arrives, not only at the moment they submit, because people browse, leave and come back before signing up.
  • Ignoring cycle time. K = 1.5 with a 30-day cycle is slower than K = 1.1 with a 2-day cycle. Shorten the cycle by moving the first invitation prompt as close to activation as possible.
  • Spammy mechanics. Email-scraping "invite all your contacts" flows tank trust and invite acceptance rates. LinkedIn burned this hard in the 2010s. Don't do it.
  • Counting fake referrals. If a made-up address moves someone up the line, people will farm it and your K stops meaning anything. Credit a referral only once the friend verifies.
  • No pre-launch test. Building the loop inside your app first, before validating demand, wastes months. Always ship a pre-launch waitlist first.

Want to ship a viral loop this weekend?

LaunchList is pre-launch waitlist software for founders, and the loop above is what it is built around. On every plan, the Free plan included, you get:

  • A page to send people to. A hosted launch page you can write from one sentence with the built-in AI, or build from 19 block types including a live signup counter and a referral leaderboard. Or embed the form on your own site with one script tag.
  • The loop itself. A personal referral link and live place in line for every signup, shown on their status page with one-tap share buttons. Referral codes are kept in the visitor's browser for 90 days, so a friend who browses around before joining still credits the person who sent them.
  • Credit you can trust. Referral credit lands only once the friend confirms, every contact gets a Contact Trust verdict (Verified, Valid, Unknown, Risky or Fake), and suspicious signups are held for review instead of entering the leaderboard.
  • The numbers. Referral analytics against the period before, so you can work out your K and watch it move.

The Free plan holds 100 contacts with no card. When the loop starts working, the Collect plan adds rewards and milestones, points tasks and email broadcasts to your list, from $9 a month for 500 contacts. The Launch plan adds automations (a nudge at N referrals, automatic invites for top referrers), your own sending domain and Launch Day tools, from $19 a month.

Wire the loop into your product

If the reward is something inside your product (more storage, a feature unlock), you need the loop to talk to your backend. Every plan includes a REST API with 53 operations and a public OpenAPI spec, and signed webhooks for 27 events, including referral.made, referral.skipped and reward.granted. When you open access, your app can redeem a LaunchList invite code through the API so the person who earned early access is the one who gets in. And if you work with an AI assistant, the LaunchList MCP server (35 tools, over OAuth or a scoped API key) lets Claude, ChatGPT or Cursor answer "who are my top ten referrers this week?" or tag everyone one referral away from a reward, without you opening the dashboard.

Start your free waitlist →

Frequently asked questions

What is a viral loop?

A viral loop is a growth cycle where each new user is given a reason to invite others, and those invitees do the same, so acquisition compounds instead of stopping when you stop paying for ads. A referral program only becomes a loop when the people it brings in also refer.

How do you calculate the viral coefficient?

Multiply the average number of invitations each user sends (i) by the share of those invitations that become signups (c): K = i × c. A K above 1 means each user brings in more than one new user and growth compounds.

What is a good viral coefficient for a waitlist?

Anything above 1 compounds on its own, and most successful consumer loops sit between 1.1 and 1.5. Below 1, referrals still lower your cost per signup, they just do not grow the list without other traffic.

What is the easiest viral loop to build before launch?

A position-based waitlist, where each signup sees their place in line and moves up when friends join through their link. It needs no product and no budget, and LaunchList gives it to every waitlist on every plan, the Free plan included.

Does LaunchList show my K-factor?

No. LaunchList shows referred signups, referrers, referrals per referrer and the referred vs organic split against the previous period, and you calculate K from those numbers.

How do I stop fake referrals from inflating my viral loop?

Credit a referral only after the referred person verifies their email, and limit how many referrals one IP address or device can earn. LaunchList does both by default and takes credit back if a referred signup later turns out to be fake.