Subscription Billing: The Complete Guide for SaaS
Subscription billing is the practice of charging customers on a recurring schedule, monthly or annually, for ongoing access to a product or service. It is the financial backbone of every SaaS company, and it involves far more than "charge the card each month." Done well, subscription billing runs invisibly and produces clean, predictable revenue. Done poorly, it leaks money, frustrates customers, and corrupts the numbers you use to run the business.
This complete guide covers the pricing models, the mechanics that make subscription billing tricky, the operational pieces like trials and dunning, and, crucially, the reporting you need to actually understand the recurring revenue you are generating.
Subscription Billing Models
The first decision is how you charge. The main models each have different implications for revenue predictability and reporting:
- Flat-rate: one price for the product. Simple to sell and to report, but leaves money on the table with larger customers.
- Tiered: multiple plans (Starter, Pro, Enterprise) at different price points. The most common SaaS model.
- Per-seat: price scales with the number of users. Revenue grows naturally as customers expand, which is great for expansion revenue.
- Usage-based: customers pay for what they consume. Aligns cost with value but makes revenue harder to predict.
- Hybrid: a base fee plus usage or seats, which many modern SaaS companies land on.
Your model shapes everything downstream, so pick deliberately, because changing it later means repricing an entire customer base.
The Mechanics That Make It Hard
Subscription billing looks simple from the outside, but a handful of mechanics create most of the complexity and most of the bugs.
Proration
When a customer upgrades or downgrades mid-cycle, you owe or credit a partial amount for the unused portion. Getting proration right is genuinely hard, and getting it wrong overcharges customers or corrupts your revenue data.
Billing intervals
Supporting both monthly and annual billing is standard, but annual plans complicate everything. A $12,000 annual contract is $1,000/month of recurring revenue, not a $12,000 spike in one month. If your systems do not normalize this, your reporting will be wildly misleading. Deciding between the two is a real strategy question, covered in annual versus monthly pricing.
Discounts and coupons
Percentage discounts, fixed discounts, and time-limited promotions all need to flow correctly into what you charge and into your revenue figures. A customer on a 30% discount contributes 30% less to MRR, and your reporting must reflect the discounted amount, not the list price.
Try StripeReport Free
Get your Stripe revenue every morning
Yesterday’s revenue, MRR, churn, and today’s renewals, delivered to your inbox and Slack daily. Plus a full revenue dashboard. 3-day free trial.
Start Your Free Trial →Multiple currencies
Selling internationally means charging customers in their local currency, which adds another dimension to both billing and reporting. Your billing system has to hold prices in each currency, and your revenue reporting has to convert everything back to a single reporting currency so your MRR is not a meaningless mix of dollars, euros, and pounds. Exchange-rate drift also means the same subscription can contribute slightly different MRR month to month, which is worth understanding before it puzzles you.
Trials and Conversion
Most SaaS companies offer a free trial, and how you handle it in billing matters. A trialing customer has not paid, so they are not revenue and must never be counted in your MRR. When the trial ends, the billing system attempts the first charge automatically. Track your trial-to-paid conversion rate closely, because it is one of the biggest levers on growth, and a drop in conversion masquerades as a new-revenue problem when it is really a billing or onboarding one.
Failed Payments and Dunning
A large share of subscription churn is involuntary, caused by declined cards rather than customers choosing to leave. Expired cards, insufficient funds, and fraud flags all cause renewals to fail. Dunning is the process of recovering these: retrying the charge on a smart schedule and emailing the customer to update their card. A good dunning setup recovers a meaningful chunk of revenue that would otherwise vanish. Our guide to Stripe failed payment recovery covers how to tune it.
Invoicing and Compliance
Subscription billing has to produce proper invoices and receipts, calculate tax by jurisdiction, and give customers self-serve access to their billing history. For B2B especially, clean invoicing is not optional, and unpaid or overdue invoices are revenue you booked but have not collected. Keeping an eye on outstanding balances, and chasing the overdue ones, is part of the job rather than an afterthought.
The Reporting Half of Subscription Billing
Here is the piece teams consistently underestimate: charging customers correctly and understanding your recurring revenue are two different jobs. A billing platform like Stripe handles the charging beautifully but does not, on its own, tell you your MRR, your churn rate, your ARPU, or your net revenue retention. Those require normalizing annual plans, separating new from expansion from churn, and comparing periods, which transaction-oriented billing tools do not do.
This is the gap StripeReport fills for Stripe-based businesses. It connects with a read-only API key and turns your subscription data into normalized MRR, churn, ARPU, and revenue forecasts, delivered as daily email and Slack reports so you catch a big cancellation or a signup surge the day it happens. It does not replace your billing; it interprets it. For the full picture of what Stripe surfaces and what it misses, see our overview of Stripe revenue reporting and the deeper Stripe subscription billing guide.
Revenue Recognition and Deferred Revenue
There is one more layer that trips up growing SaaS companies: the difference between cash collected and revenue earned. When a customer pays $12,000 up front for an annual plan, you have the cash, but under accrual accounting you have only earned one twelfth of it in the first month. The rest is deferred revenue, a liability you recognize month by month as you deliver the service. Your billing system tracks the cash; your accounting has to track the recognition. Confusing the two makes your financials look far lumpier and healthier than they are, which is a problem the moment an investor or auditor looks closely.
Scaling Your Billing as You Grow
Subscription billing that works fine at 50 customers can strain at 5,000. As you scale you accumulate more pricing tiers, more grandfathered legacy plans, more currencies, and more one-off negotiated deals. Each addition makes both the billing and the reporting harder. The discipline that keeps this manageable is restraint: keep your product catalog clean, reuse prices rather than minting a new one for every deal, apply coupons for discounts instead of custom prices, and retire old plans deliberately. A tidy catalog is not just aesthetic; it is what keeps your revenue reporting trustworthy as the business gets more complex.
Common Subscription Billing Mistakes
- Not normalizing annual plans, which turns your monthly revenue chart into meaningless spikes.
- Counting trials as revenue, inflating MRR and misleading stakeholders.
- Neglecting dunning, quietly losing recoverable revenue to failed payments.
- Confusing billing with reporting, assuming that because Stripe charges correctly, you understand your revenue.
Try StripeReport Free
Get your Stripe revenue every morning
Yesterday’s revenue, MRR, churn, and today’s renewals, delivered to your inbox and Slack daily. Plus a full revenue dashboard. 3-day free trial.
Start Your Free Trial →Key Takeaways
- Subscription billing charges customers on a recurring schedule and spans pricing models, proration, trials, dunning, and invoicing.
- Annual plans, proration, and discounts create most of the complexity and most of the reporting errors.
- Dunning recovers involuntary churn, and clean invoicing keeps collected revenue from slipping.
- Billing correctly is not the same as understanding revenue; pair your billing platform with a reporting layer like StripeReport.