Loading article…
Loading article…
Last updated on Sep 13, 2026
Every other analytics report in Maxio Core tells you what has already happened. The Projection Report is the one that answers "what does the book look like in eighteen months if renewals behave the way we expect?" — and it does so from the contracts you actually have, not from a spreadsheet forecast. This article explains what the report's levers are for, with a grounded example for each, and finishes with the two controls that price the renewals it projects: renewal factors and CPI-indexed renewal pricing.
For the report's settings and behavior, see Understand the Projection Report and Build Projections for Revenue and Invoices.
The Advanced Subscription Momentum Report walks your MRR from the start of a period to the end through what customers did. The Projection Report walks it forward through what they are likely to do. It takes every recurring transaction that has neither been renewed nor canceled, creates virtual renewal transactions for each future term out to the end of your report window, and then reports actual and virtual data together as one schedule of revenue, invoices, or MRR. The virtual transactions live only inside the saved report: they never appear in your registers or finance reports.
That makes the report a scenario tool rather than a ledger. Each saved report is a snapshot of one set of assumptions — probabilities, uplift, how to treat expired contracts — generated when you save it, not refreshed on every run. Save two reports with different assumptions and you have a base case and a downside case side by side; edit and re-save a report and you have refreshed its projections against today's book.
The report never assumes a renewal is certain. Each projected term is the previous term's value multiplied by the probability that the customer renews, so a contract that renews at 80% is carried at 80% of its value, and the term after that compounds again. The result is an expected-value forecast: the total you would expect on average, not the total if everyone renewed.
Take a $12,000 annual contract running through December 2025, with an 80% probability of a first renewal and 70% for the one after. Ignoring any uplift, the report carries $12,000 for 2025, $9,600 for 2026, and $6,720 for 2027. If renewals actually track those rates, that is what the book is worth — and the gap between it and $36,000 is the retention risk you are carrying.
You can supply probabilities two ways. Input Renewal Probabilities gives you a ladder by term number — a low first-renewal rate and a high rate thereafter is the classic shape for trial- or discount-led sales — and the highest term you define applies to every term beyond it. Use Renewal Probabilities from Transactions reads the probability stored on each transaction, with a single Default Probability for any transaction without one; this suits a book where account teams can score individual customers. The two modes are alternatives, not layers: in transaction mode the unscored long tail gets the default probability, not the ladder.
Renewals rarely repeat last year's price exactly. A Renewal Factor is the multiplier the report applies to each projected renewal, so a factor of 1.05 models a 5% uplift on every term. You can set a single Default Renewal Factor, override it by contract duration with Default Renewal Factors (by Duration) — say, 1.03 for annual contracts and 1.00 for monthly — and any renewal factor already stored on a transaction takes precedence over both. Terms shorter than one month never receive an uplift; a month-long term does, so a month-to-month book picks up whatever factor applies to it.
Return to the $12,000 contract with a 1.05 factor: 2026 is now carried at $10,080 and 2027 at $7,408.80. The factor and the probability pull in opposite directions, which is exactly the tension a renewal forecast should show — pricing power against retention risk — and changing either one and re-saving is how you test which lever your plan actually depends on.
One boundary to know: a renewal factor that is CPI-indexed (see below) is not applied by the Projection Report, because its value is not known until the index publishes. Use a static factor for projection and let the CPI rule price the real renewal when it happens.
A contract whose end date has passed without a renewal or cancellation is either lost or not yet updated, and the Expired Transactions setting is how you tell the report which. Do Not Project treats every expired contract as gone — the conservative view for a book you keep current. Project All Expired Transactions assumes they all renew, which is the right choice when you know renewals are simply not entered yet. Project Transactions Expired in the Last Month is the middle path for month-to-month businesses that import last month's subscriptions on a lag, and Project Transactions that Expired After Date lets you draw the line yourself, at the date you know your data is clean through. Expired contracts you exclude still show as actuals for the periods they covered; they just do not renew.
The Compute setting decides what the projected transactions produce. Transaction Field projects the raw value — MRR, ARR, amount, quantity, or a numeric custom field — and is the quickest way to a forward MRR or ARR curve; Show MRR by Period spreads each projected transaction's MRR across every month it covers. Transaction Revenues runs each virtual renewal through its item's default recognition method, giving you a recognized-revenue forecast. Transaction Invoice Line Items runs it through the transaction's billing method instead, giving you a billing forecast — the closest the report comes to projected cash. Run the same assumptions through all three and you can see how a renewal that books in January recognizes and bills across the year.
Projection assumes an uplift; two other Maxio Core controls apply one to real renewals.
A Renewal Factor attached to a transaction multiplies its amount when it renews, whether that renewal is manual or created by an Auto-Renewal Profile (which schedules the renewal a set number of months and days before expiry). That is how a 3% contractual escalator gets applied consistently across a book without anyone editing prices. See Applying Renewal Factors and Configure Automatic Transaction Renewals.
Many contracts tie the escalator to an inflation index rather than a fixed percentage, and until now that meant creating a placeholder factor and updating it by hand when the index published. A Renewal Factor with the CPI Indexed calculation method (which may need to be enabled for your account) does this automatically. You choose the CPI Index Series from the U.S. Bureau of Labor Statistics, the Comparison Method — the same month year-over-year, or from the transaction's start to its renewal — and a Publication Lag so the rule only uses index values that were published when the renewal was priced. An Adjustment Multiplier scales the index change — a contract that escalates at half of CPI uses 0.5, one that escalates at one-and-a-half times CPI uses 1.5 — and a Floor and Ceiling cap the result. The multiplier is multiplicative, not additive: it cannot express a "CPI plus 1%" spread, so model that kind of contract with the floor and ceiling or a static factor instead.
Suppose a $12,000 contract renews under a rule with a 2% floor and 5% ceiling. If CPI ran at 3.2%, the renewal is priced at $12,384. If it ran at 6%, the ceiling holds it to $12,600; at 1%, the floor lifts it to $12,240. Every calculation writes an audit record — the two index observations, the raw and applied adjustment, whether the floor or ceiling fired, and a plain-English explanation — shown on the transaction as the CPI Renewal Audit. When a customer asks why their renewal went up 3.2%, the answer is already written down.
For every Projection Report setting, the transaction renewal fields the report reads, and the renewal-probability options in detail, see Build Projections for Revenue and Invoices.
For the backward-looking half of the picture, see What You Can Do with the Advanced Subscription Momentum Report.
Still need help?
Reach out and our support team will take it from here.