Subscription Journey Attribution (demo)
Subscriptions are the canonical offline-conversion problem: the signup happens once, but every Stripe renewal months later is a separate revenue event that needs to be attributed back to the original touchpoint. Channels that look identical on signup-day volume diverge dramatically once you measure the actual revenue stream.
Channels ranked by realized lifetime value of subscribers acquired there. The LTV:CAC ratio tells the unit-economics story.
| Channel | Signups | LTV | CAC | LTV : CAC | 12-mo Retention |
|---|---|---|---|---|---|
| salesforce / outbound | 411 | $3,244 | $612 | 5.3× | 78.2% |
| google / cpc — brand | 1,412 | $2,188 | $188 | 11.6× | 71.4% |
| organic / seo | 988 | $1,944 | $42 | 46.3× | 68.1% |
| partner-network / referral | 612 | $1,812 | $220 | 8.2× | 66.8% |
| (direct) / (none) | 923 | $1,644 | — | ∞ | 70.2% |
| klaviyo / lifecycle-email | 522 | $1,488 | $88 | 16.9× | 62.4% |
| google / cpc — competitor | 1,188 | $612 | $412 | 1.5× | 28.4% |
| facebook / paid_social | 1,644 | $488 | $224 | 2.2× | 22.0% |
| tiktok / paid_social | 712 | $312 | $184 | 1.7× | 14.8% |
Key insight: Facebook and TikTok paid social drive the most signups (~28% of new subscribers combined) but have the worst LTV — a third of those subscribers are gone after a month, and the LTV barely covers CAC. Outbound and brand search look small at signup but compound: those cohorts retain past 70% at month 12 and produce 4–17× LTV:CAC. Without joining Stripe revenue back to acquisition channel in the warehouse, every signup looks equally valuable — and the budget gets misallocated for years.
Percentage of each channel's signup cohort still subscribed N months later. Same product, same pricing — wildly different retention.
Stacked monthly recurring revenue, attributed back to the channel that originally acquired each subscriber. The composition is what matters — paid social adds up to less MRR than its signup share would suggest.
Percentage of each acquisition cohort still subscribed at month 1, 3, 6, and 12. Sorted by 12-month retention.
| Acquisition Channel | Signups | M1 | M3 | M6 | M12 |
|---|---|---|---|---|---|
| salesforce / outbound | 411 | 97.1% | 93.0% | 86.2% | 78.2% |
| google / cpc — brand | 1,412 | 96.2% | 89.4% | 80.8% | 71.4% |
| (direct) / (none) | 923 | 95.9% | 88.8% | 80.0% | 70.2% |
| organic / seo | 988 | 94.8% | 87.6% | 78.4% | 68.1% |
| partner-network / referral | 612 | 95.4% | 88.2% | 79.6% | 66.8% |
| klaviyo / lifecycle-email | 522 | 93.0% | 84.8% | 75.0% | 62.4% |
| google / cpc — competitor | 1,188 | 81.2% | 58.2% | 40.2% | 28.4% |
| facebook / paid_social | 1,644 | 78.4% | 49.8% | 30.4% | 22.0% |
| tiktok / paid_social | 712 | 71.6% | 41.2% | 24.0% | 14.8% |