Health and troubleshooting

Recurring revenue health

Recurring share, the active-paused-ended split, the churn signals that arrive before anyone cancels, and how to tell whether your forecast is worth anything.

Recurring arrangements decay quietly. Nobody sends a cancellation; runs get paused, quantities get trimmed, suggestions stop being accepted. This is the monthly read that catches it while it is still a conversation.

Where the numbers will come from, and where they come from today. The arrangement states and run counts below belong to the planned scheduling feature; the dashboard that shows them belongs to Analytics Studio, also planned. The per-account rhythm is live now on every organization in CRM, and a CSV export of the order list covers the rest until then. The four numbers are worth defining today regardless.

The four numbers worth reporting

Everything else is diagnostic detail. These four are the report.

NumberHow to read itWhat a bad value means
Recurring share of revenueRevenue from scheduled runs, subscriptions and accepted suggestions, over total revenue, per periodIt is not growing: the mechanism is not spreading beyond the pilot accounts
Active / paused / endedThe count of arrangements in each state, and the movement between them since last monthPaused is growing faster than active: silent churn
Run success rateRuns that produced an order, over runs dueBelow 95 percent: something structural, not bad luck
Accounts with at least one arrangementCount, against total trading accountsFlat: your team stopped setting them up

The fourth is the one that predicts the other three. Recurring revenue is mostly a sales-motion question, not a software question: arrangements exist because somebody sat with a customer and set one up.

Define "recurring revenue" once, in writing, before you report it. Does an accepted reorder suggestion count? Does an order the buyer placed from a saved list without being prompted? Different answers are all defensible; changing the answer between two board meetings is not. Write the definition next to the number. See What counts as an order.

The states, and what movement between them means

MovementReading
New → ActiveYour team is selling it. The number to grow
Active → PausedFine once. A pattern across an account is a signal
Paused → ActiveThe mechanism is trusted enough to be resumed
Paused → (nothing, 60+ days)This is churn. It has not been recorded as such
Active → Ended, with a reasonHealthy. You can learn from it
Active → Ended, no reasonA gap in your process, not in the data

The fourth row deserves the emphasis. A paused arrangement counts as active in most naive reports, so a business can lose a third of its recurring base and show a flat number. Put an age on every pause and treat anything over sixty days as ended until somebody proves otherwise.

Churn signals that arrive early

B2B customers do not cancel. They go quiet, and in a recurring context they go quiet in a specific, detectable order:

  1. Quantities drift down on the underlying order list. The arrangement is still active; it is carrying less each run.
  2. Skips increase. Two skips in a quarter is a conversation.
  3. Suggestions stop being accepted. The acceptance rate for the account falls before anything else moves.
  4. The interval between manual orders lengthens, even while the recurring part looks stable. They are buying the ad-hoc half somewhere else.
  5. Then a pause. By this point the decision was made weeks ago.

The account-level signal for the last two is already maintained for you. On every organization in CRM, the Orders tab shows Last order, Orders 30 d, Orders 90 d, Revenue 30 d and Revenue 90 d; underneath, organization_metrics also holds the 365-day figures and the average order value. Together they tell you whether an account is slower than its own normal rhythm, which is the only churn definition that works when every account has a different interval. See The metrics that matter in B2B.

Hold the result as a segment with a rule on days since last order, so it is a list of company names somebody works through, not a percentage on a slide.

Forecast accuracy

The point of recurring revenue is that it is predictable. Test that claim rather than assuming it.

Once a month, take last month's forecast, the runs that were scheduled and the subscription amounts that were due, and compare it with what was invoiced. Then split the gap:

Gap sourceFixable by
Runs that did not fireCommon problems
Runs that fired at a different pricePrice mode and expiring contract prices
Quantities changed before the runNothing. This is normal, but it should be in the forecast as a variance band
Orders held for approval and never releasedStuck approvals
Suggestions forecast as revenue but never acceptedDo not forecast suggestions as revenue

The last row is a common self-inflicted wound. A suggestion is a proposal. Put accepted suggestions in the actuals and leave unaccepted ones out of the forecast entirely, or your recurring number is a wish.

Three months of this tells you your real variance band. A forecast quoted without one is a single number pretending to be a fact.

Where the numbers come from

  • Order-list conversions are the reorder metric. Every time a saved list becomes an order, the order exists with its position count and value. That count over time is the cleanest measure of whether reordering is being used. Until the planned run report exists, filter the order list by organization and count. See Order lists and recurring carts.
  • Per-account rhythm comes from the Customers app's per-organization metrics, visible as the Order history block on the organization's Orders tab and usable as segment rules.
  • Everything else is an export today: the order list in Commerce Studio as CSV, or an export profile in Integration Studio. When Analytics Studio ships, the same questions become a report over the datasets your apps publish. See Reports and exports.
Before any of this goes upward, check the currency flag on the accounts in it. An organization that has traded in both EUR and CHF shows Mixed currencies on its Orders tab, and its revenue figures are a sum of two currencies, wrong as a single number. See Trusting your numbers.

The monthly loop

  1. Read the four numbers. Note the direction, not the value.
  2. Work the paused-over-sixty-days list. Each one is a call.
  3. Work the quiet-account segment. Each one is a call.
  4. Compare last month's forecast with actuals and attribute the gap.
  5. Check that the number of accounts with an arrangement went up.

Twenty minutes, once a month, with names attached. That is the whole discipline.

Next