A paid newsletter's real payout is never just "subscribers times price" — most of your list stays free, a slice converts to paid, and then the platform and its payment processor take a cut before anything lands in your account. This calculator walks that whole chain in one pass: your free subscriber count, the share who convert to paid, your monthly price, and the blended platform-plus-processing fee on Substack, beehiiv, or wherever you publish, so you get one honest net-annual number instead of a gross figure that overstates what you'll actually keep.
How it works
The engine runs in three steps, each feeding the next. First it estimates how many free subscribers become paying ones: your free subscriber count times your free-to-paid conversion percentage, rounded to the nearest whole subscriber since you can't have a fraction of a person. Second, it multiplies that paid subscriber count by your monthly price to get gross monthly recurring revenue. Third, it annualizes that figure — multiplying by 12 — and applies your platform-plus-processing fee as a single haircut, since that's the number that actually clears into your bank account over a year.
Keeping the fee as one input instead of hard-coding a specific platform's rate is deliberate: Substack, beehiiv, Ghost, and self-hosted setups on Stripe all take a different cut, and your own blended rate can shift with your price point and processor. Entering your real, known fee — or a platform's published one — keeps the output honest rather than generic.
Worked example
Take a newsletter with 5,000 free subscribers, a 3% free-to-paid conversion rate, an $8/month price, and a 13% blended platform-plus-processing fee — roughly what Substack's 10% cut plus Stripe processing works out to.
- Paid subscribers: round(5,000 × 3%) = 150
- Gross monthly recurring revenue: 150 × $8 = $1,200
- Gross annual revenue: $1,200 × 12 = $14,400
- Net annual revenue: $14,400 × (1 − 13%) = $12,528
Swap that same audience onto a platform with a 0% platform fee and only Stripe's roughly 3% processing cost, and the same 150 paying subscribers net $13,968 a year instead — over $1,400 more, from the exact same subscriber math, purely because of where the fee line sits.
How to interpret your result
Treat paid subscribers and net annual revenue as a planning estimate anchored to a single conversion rate and price, not a promise. Real newsletters see conversion drift with the traffic source: subscribers who found you through in-app recommendations or your own referral network convert at a meaningfully higher rate than a cold list you imported or grew through paid ads, so your blended average may not hold steady as your list composition changes.
The net annual figure also assumes every paid subscriber sticks around and pays the same monthly-equivalent price for the full year, which real newsletters rarely see cleanly. Churn, refunds, chargebacks, seasonal cancellation waves, and subscribers on discounted or founding-member pricing all pull the real number below this static snapshot — while a strong referral push or a well-timed price increase can push it above. Use the output as a floor to plan a budget against, not a number to spend against in advance.
Methodology & sources
The formulas are paidSubscribers = round(freeSubscribers × conversionPercent / 100), monthlyRecurring = paidSubscribers × monthlyPrice, and netAnnualRevenue = monthlyRecurring × 12 × (1 − platformFeePercent / 100).
Substack's fee structure — a flat 10% of each paid transaction on top of Stripe's standard 2.9% + $0.30 processing charge and a small recurring-billing fee — is documented in Substack's own pricing support article, and blends out to roughly 13-16% of gross revenue depending on subscription price. Beehiiv, by contrast, charges 0% platform fee on paid subscriptions for its Scale and Max plans, leaving only Stripe's processing cost — see beehiiv's pricing page for current plan tiers. The conversion-rate guidance used in the worked example reflects the commonly cited 2-5% range from published creator data, well below the more optimistic 5-10% figure Substack itself suggests aiming for — treat your own historical rate, once you have one, as more reliable than either benchmark.