The month-end close for recurring revenue, step by step
A practical sequence for closing a subscription and usage book, and the three places it usually stalls.
Closing a recurring revenue book is not conceptually hard. It stalls for predictable reasons, and knowing which step you are stuck on is most of the fix.
Here is the sequence, and where it tends to break.
1. Seal the usage period
Metered events arrive after the period ends. Before anything else can be computed, you need a stated cutoff and a decision about stragglers: are late events billed in the period they occurred, or the period they arrived?
Where it stalls: no cutoff exists, so the number moves every time someone refreshes. Pick a cutoff, write it down, and hold it.
2. Finalise subscription changes
Every upgrade, downgrade, pause and cancellation in the period produces a partial charge. Proration should already be computed; this step is confirming there are no changes still in a pending state waiting on approval.
Where it stalls: scheduled changes that were future-dated into the period and never applied, usually because the approval sat with someone on holiday.
3. Generate and review invoices
Invoices are produced per entity, in the customer’s currency, in the local format. Review is looking for anomalies rather than reading every line: unusually large swings, zero-value invoices, and anything with a manual adjustment.
Where it stalls: the review has no exception list, so it becomes reading every invoice, which does not scale and is not actually a control.
4. Post payments and open the receivable
Payments captured in the period are matched to invoices. Anything unmatched is either a timing difference or a genuine break, and the two need separating on the day rather than at the end.
Where it stalls: partial payments and payments that arrive against a consolidated invoice covering several subscriptions.
5. Run recovery on failures
Failed payments enter the dunning sequence. They do not reduce revenue; they move cash. Keeping that distinction clean is what stops your revenue chart from moving when a card is declined.
6. Compute movement, not just totals
The total is the least interesting number. The movement is what leadership needs: new, expansion, contraction, churn, and reactivation, each isolated.
Where it stalls: movement is derived in a spreadsheet from two total snapshots, which cannot distinguish a downgrade from a churn plus a new sale.
7. Consolidate
Entity books roll up to a reporting currency at a stated rate on a stated date. Both views persist: the local statutory one and the group one.
The shape of a good close
A close that runs well has three properties. Each step has an owner. Each step has an exception list rather than a full review. And no step requires re-deriving a number that an earlier step already produced.
The third one is the tell. If your close involves recomputing revenue from raw data because you do not trust the system that produced it, the problem is not the close process. It is upstream of it.
Read next
Multi-entity revenue: what changes when you add the second entity
The second legal entity is the point at which revenue operations stops being a reporting problem and becomes a structural one.
Designing a usage pricing model your finance team can close on
Most usage pricing fails in the close, not in the market. Four decisions to make before you launch a metered plan.
What actually breaks when billing and revenue live in separate systems
The cost of a fragmented revenue stack is rarely the software. It is reconciliation, and it compounds every cycle.