Imagine a buyer asks, “Walk me through your customer numbers.” You open a spreadsheet, pause at the first column and realise the presentation needs a better starting point than a percentage in a large font.
Here’s a practical preparation exercise: write down what the number means, work through a small example, then leave a record someone else can follow. The aim is an explanation you can stand behind. There is no prize for the most impressive acronym.
Start with a definition, not a dashboard
BDC’s January 2022 technology study recommends tracking recurring revenues and renewal or churn when discussing subscription models. That is a useful starting question for an owner: what, exactly, are we tracking? Treat it as historical context, not a current market forecast.
Definitions deserve their own space. In its fiscal 2025 results, Docebo defines annual recurring revenue by annualizing subscription value under existing contracts, including OEM. It excludes non-recurring implementation, support and maintenance revenues, and warns that its KPI calculations may differ from other companies. That is Docebo’s definition. It does not mean every business should exclude all support or maintenance. For your explanation, identify the included items and the reason for each exclusion.
Stripe distinguishes fixed subscription pricing from usage-dependent pricing. A fixed fee applies to the chosen plan; a customer can still move between plans. Our exercise uses that simpler fixed-monthly-fee setting. It does not supply a calculation method for every business that happens to receive repeat orders.
The definition card for this exercise
Everything below is fictional. Amounts are CAD monthly fee rates at May 31 and June 30, not cash received, accounting revenue or business value. Each customer has one subscription. A–E form the fixed opening group; F joins later. A positive ending fee means an original customer remains.
Assume only the changes shown. There are no one-off fees, tax, refunds, discounts, trials, FX, acquired customers, annual prepayments, proration, usage billing or unresolved debt. No customer cancels and returns, and none makes multiple changes between dates. Two snapshots suffice here because that history is stipulated. Real snapshots alone cannot reconstruct every intervening gross movement.
Keep that card beside the working sheet. If a real account does not fit these assumptions, flag it for a separately defined treatment instead of quietly squeezing it into the example.
One bridge, four answers
Monthly fees, opening → ending:
A: C$3,000 → C$4,000.
B: C$2,500 → C$2,000.
C: C$2,000 → C$0.
D: C$1,500 → C$1,500.
E: C$1,000 → C$1,000.
New F: C$0 → C$3,500.
Gross revenue retention: subtract C’s C$2,000 cancellation and B’s C$500 contraction from opening C$10,000. C$7,500 ÷ C$10,000 = 75%.
Net revenue retention: add A’s C$1,000 expansion. C$8,500 ÷ C$10,000 = 85%.
Customer retention: four original customers remain; 4 ÷ 5 = 80%.
Whole-business monthly fees: add F’s C$3,500. C$12,000 versus C$10,000 is 20% growth.
Change only A’s ending fee to C$5,500. Expansion becomes C$2,500, the original group ends at C$10,000, and net retention reaches 100%. Gross retention stays 75%; customer retention stays 80%. Expansion has offset losses, not removed them.
Pause here before preparing your own version. Could you talk someone through each line without saying “the software calculated it”? Try explaining it aloud, with the working sheet closed. Then reopen the sheet and see which part of your explanation needs a clearer label.
Leave a trail from the answer to the records
Stripe’s reporting guide describes transaction, customer, product and subscription information separately, and discusses combining billing data with CRM records. For this exercise, propose a crosswalk: one owner-facing customer ID, its billing ID, the dated amount source and the applicable plan. This is a working design, not a universal software schema.
Here is a fictional entry for B. Use it as a prompt to decide what your own record needs, not as a form a buyer is guaranteed to accept.
Customer: B; billing ID: SUB-202.
Sources: May extract row 18; June extract row 21.
Monthly amount: C$2,500; then C$2,000.
Explanation: plan-change record PC-04, effective June 1.
Open question: CRM ID B-OLD appears beside the June record.
Responsible person: Alex; confirm the mapping before the sheet is used.
Stripe’s cohort guide emphasises consistent timestamps and connected records. Preserve the original extract and identify the evidence for a correction. For B-OLD, ask Alex to confirm the customer mapping. Record the answer and its supporting reference before using the sheet.
Make the handoff easy to use
Ask a colleague to review it as though you were unavailable. Can they identify the person who should answer the open question? Use their questions to improve the handoff, rather than adding another page of confident commentary.
You can also rehearse the discussion you want to have with your adviser: “Here is the exercise I prepared. Here is what I excluded. Here is the point I cannot yet explain. What would you need to examine before we use this in a sale discussion?” That invitation is more useful than asking someone to endorse a finished slide.
Apply it—or stop at the unanswered question
This five-customer exercise teaches arithmetic, not a market trend. Stripe cautions against overinterpreting small cohorts. Treat the example as a rehearsal, not a benchmark.
If the example fits, your next step is to assemble a small working version and have someone challenge it. If it does not, stop at the mismatch and ask for an appropriate method. Either way, take a clear question into the conversation. A polished chart can wait.
For general information and education, not legal, tax, investment or valuation advice. Examples are illustrative and do not predict your business’s value, financing terms or sale outcome. Consult qualified advisers about your situation.
Subscribe to Deal Flow Canada for practical owner guides and Canadian deal updates.


