Growth loops: a primer for product managers
Contents:
Funnel vs loop: why the distinction matters
A funnel is linear. Lead, activation, purchase, retention. Every step runs once per user, and at the end the user falls off the bottom. To get a new customer you go back to the top and pay for another ad. The funnel models how you spend money to buy users.
A growth loop is different in one specific way: the output of the last step becomes the input to the next cycle. A user who finishes the journey generates the next user — through a referral, a piece of content, a shared link, or revenue that pays for the next ad. The loop is not a marketing trick; it is a property of the product itself. If the loop is real, your new-user rate compounds instead of staying flat.
Startups whose loops work grow with acceleration; companies with only a funnel grow linearly and only as long as the ad budget holds. Formally, a loop is a directed cyclic graph: input → action → output → new input. Every full revolution must add something to the input, otherwise the picture is just a circle on a slide.
Load-bearing trick: if you pause paid acquisition for a month and growth still happens, you have a loop. If growth collapses to zero, you have a funnel painted to look like a loop.
The mental model changes what you optimise. Funnel thinking pushes you toward conversion rate at each step. Loop thinking pushes you toward cycle time and the multiplier per cycle — variables that compound, not just add.
The four canonical loop types
Reforge popularised a three-class taxonomy; in practice it is cleaner to talk about four, because UGC loops behave differently from editorial content loops. The table below summarises how they differ on the dimensions that matter when choosing which to build.
| Loop type | Input that compounds | Typical cycle time | Headline metric | Where it breaks |
|---|---|---|---|---|
| Viral | Invited users | Hours to days | K-factor (target K > 1) | Friction in the invite, no incentive to share |
| Content (editorial) | Indexed pages | Weeks to months | Organic sessions per page | Thin content, Google deprioritisation |
| UGC / content (user-generated) | User-generated pages | Days to weeks | Pages created per active user | Quality collapse, spam |
| Paid | Reinvested revenue | Days (per cohort) | LTV / CAC, payback months | LTV drops or CAC rises past unit economics |
A viral loop is when a user invites another user because the product works better with more people (messengers) or because sharing is the core action (Dropbox file sharing, Calendly meeting links). The number to watch is K-factor: how many new users one existing user brings per cycle. If K > 1, organic growth is exponential; if K < 1, the loop decays. Most viral loops start at K = 0.1 to 0.3.
A content loop is when the product or its users generate content that gets indexed by search engines or shared on social platforms. This is the slowest loop to build and the hardest to kill once it works. Stack Overflow, marketplace reviews, Reddit threads — all content loops. Cycle time is months because Google has to crawl, rank, and serve the page.
UGC loops are a subspecies where content is generated by ordinary users as a byproduct of using the product. Pinterest boards, Notion public pages, GitHub repos, Figma community files. The headline metric is pages created per active user per week, multiplied by the share of those pages that drive new sign-ups.
Paid loops are when revenue from existing customers funds acquisition of new ones. Customer pays, revenue lands, a share routes into performance marketing, the channel returns new customers. This is only a real loop if LTV exceeds CAC with enough margin to reinvest — otherwise it is just burning money in a circle.
Real product examples
Pinterest runs a UGC content loop. Users save images into boards; boards are public and get indexed by Google. Someone searches for "minimalist kitchen ideas", lands on a board, signs up to save their own, and now they are creating new boards. The product never had to write the content; the users did.
Calendly runs a viral loop welded to the core action. Sending a meeting link is the primary action. The recipient sees a branded scheduling page, signs up, and starts sending their own links. There is no separate "invite friends" feature — the invite is the product.
Notion combines a viral loop with a workflow loop. A team creates a workspace, shares pages externally, external readers click around and sign up, then bring the tool into their own teams. Once Notion is embedded into a team's processes, replacing it is expensive — which boosts retention, which keeps the loop alive.
Stripe runs a content loop of a different shape: developer documentation. Every Stripe doc gets linked from forums and indexed by every search related to "how to charge a card with X language". The docs themselves are the acquisition channel.
None of these products bolted a loop onto a finished product. They designed the core flow around the loop. Loops are an architectural property, not a feature.
How to design your own loop
The recipe is short, but each step is hard.
1. Identify the core action.
2. Find an output of that action that can become an input for new users.
3. Make the share/output feel natural, not bolted on.
4. Measure the baseline multiplier.
5. Improve one link at a time, never all of them.Step one is finding the core action — the thing the user does most often and gets the most value from. For Pinterest it is saving an image. For Calendly it is sending a meeting link. If you do not know your core action with confidence, you are still in product-market fit territory and not ready to design a loop.
Step two is identifying an output of that action that can plausibly become an input for someone else. A saved image becomes a public board (content). A meeting link becomes a branded page (viral). A message becomes a workspace invite (workflow). If your core action produces nothing shareable, indexable, or referable, the loop will not exist no matter how clever the marketing.
Step three is the design step, and it is where most loops die. The output has to feel like part of the product, not a growth-team add-on. If sharing breaks the user's flow or feels like a guilt trip, they will not do it. The strongest loops are ones where the user is sharing for their own benefit — they want the meeting scheduled, the doc reviewed, the file co-edited — and acquisition is a side effect.
Step four is measurement. You need a baseline multiplier per cycle, even if it is 0.05. Pick a single metric per loop and report it weekly: invitations sent per active user, pages indexed per cohort, payback months per channel.
Step five separates teams that ship from teams that thrash. Improve one link at a time. A loop is a chain — find the weakest link, fix it, measure, then move on. Trying to optimise five links in parallel produces noisy data and stalls progress for a quarter.
Sanity check: if your loop diagram has more than five nodes and ten arrows, it is either two loops drawn together or wishful thinking. Real loops are simple.
Metrics that actually measure a loop
Each loop type has its own headline metric, plus a small set of supporting numbers.
For a viral loop: K-factor, cycle time, and branch ratio (the share of invitees who convert). K = 0.8 with a one-week cycle beats K = 1.5 with a one-year cycle — most PMs under-weight cycle time.
For a content loop: volume of content produced per period, organic traffic per page, and conversion from visitor to registered user. "Indexed pages per active user per month" is a useful derived metric.
For a UGC loop: pages created per active user per week, share of pages that bring at least one external visitor, and the conversion rate of those visitors.
For a paid loop: CAC, LTV, payback period in months, and the share of revenue you can reinvest. LTV / CAC = 3 and payback in 8 months is the textbook healthy range. LTV / CAC under 2 or payback longer than 18 months is the danger zone.
The single best diagnostic: pause paid acquisition for a month. If growth holds, the loop is real. If growth craters, you have been running a funnel with a self-referential metric on top.
If you want to drill product-sense and growth questions like the ones above in a structured way, NAILDD is launching with a question bank that covers exactly this — funnel-to-loop conversions, K-factor estimation, payback math, and the case studies behind them.
Common pitfalls
The most common mistake is designing a loop without a core action. Teams get excited about sharing mechanics — invite codes, referral rewards, public pages — and start building them before the product has a clear, repeated, valuable action users actually want to do. People share things they value. If the core experience is weak, no invite mechanic will save you.
A second trap is drawing a linear funnel in a circle and calling it a loop. The test is whether each full cycle adds something new at the input. If your "loop" is just the same user moving through retention stages, that is a retention diagram — useful, but different. A real loop must add new users per cycle, not just keep existing ones engaged.
A third pitfall is expecting K > 1 on day one. Most viral loops start at K = 0.1 to 0.3. That is normal, and not a sign the loop is broken — it is a sign the loop is young. The right question is "is K growing month over month?" Teams that kill loops at K = 0.4 in month three never get to see them reach K = 0.9 in month nine, by which point cycle-time improvements would have made the math work.
A fourth pitfall is ignoring retention. A loop without retention is a sieve: users come in, the loop sends out one or two invites, then they churn. If monthly churn is 20%, you lose 90% of a cohort in 11 months, and your loop has to outrun that decay. Fix retention before optimising the loop.
A fifth pitfall is running several weak loops in parallel instead of building one strong one. Three loops at K = 0.2 each are worse than one loop at K = 0.6 because each weak loop demands its own design and instrumentation. A related mistake is forgetting cycle time: K = 1.2 with a one-year cycle doubles users in twelve months, while K = 0.7 with a one-week cycle compounds far faster. Always report K and cycle time together.
Related reading
- AARRR framework: pirate metrics
- Cohort analysis for data science interviews
- How to calculate funnel drop-off in SQL
- How to calculate cohort retention in SQL
FAQ
Is a loop strictly better than a funnel?
Not better, different. A funnel describes how you spend money to convert prospects; a loop describes how the product generates the next prospect. Mature products run both — the funnel pays for cold acquisition while the loop compounds on top.
Can a B2B product have a real loop?
Yes, though cycle times are longer. Sales-led loops (referrals between buyers in an industry), workflow loops (the product becomes the system of record across companies), and content loops (developer docs, case studies) all work in B2B. What does not transfer cleanly is the consumer-style viral loop with a one-day cycle; B2B cycles run weeks or months.
How many loops should one product have?
Usually one strong loop and at most one supporting loop. Ten weak loops scattered across the product are far worse than one obvious loop everyone on the team can name. If you cannot describe your primary loop in a single sentence, you do not have one yet.
How do I tell if my loop is broken?
Pause paid acquisition for thirty days and watch new-user rate. If new users drop close to zero, the loop is broken or never existed. If new users hold within 20 to 30% of the previous month, it is working at a baseline level.
Where does retention fit into a loop?
Retention is upstream of every loop type. A user who churns before completing the core action contributes nothing. Before optimising K-factor or cycle time, make sure your retention curve flattens out — if it goes to zero, no loop will compound.
What is the fastest way to start if I have no loop today?
Start with the core action and retention. Identify the one thing users do that drives the most value, make it repeatable, and ship the smallest artifact that gets produced as a byproduct — a shareable link, a public page, a referral code. Do not build referral programs before you have a core action; you will be building on top of a leaky bucket.