Metrics
How Fusionmetrics calculates MRR
Understand the recurring revenue included in MRR, how billing intervals and discounts are normalized, and how MRR growth is calculated.
Last updated
Monthly recurring revenue (MRR) is the recurring run-rate Fusionmetrics observes for an App at a point in time. It is not cash collected during the selected date range. Gross earnings can include one-time charges and other activity that does not change MRR, while an annual subscription contributes only its monthly equivalent to MRR.
MRR formula
By default, at each point in time Fusionmetrics calculates:
MRR = monthly subscription MRR
+ annual subscription value / 12
+ usage charges from the trailing 30 days
The calculation uses active, non-test subscription state and the active Merchant relationship observed in the imported billing data. Trial contracts remain outside MRR until their paid recurring term becomes effective.
See trial conversion and history for trial outcomes, upcoming completions, and the fixed monthly value of trial plans.
For fixed recurring subscription items, Fusionmetrics uses the effective price for the current billing cycle when that source data is available. Fixed-amount and percentage discounts are applied before the amount enters MRR. A discount cannot reduce an item below zero.
Monthly and annual plans
Monthly fixed charges contribute their effective monthly amount. Annual fixed charges are divided by 12, so a $1,200 annual subscription contributes $100 MRR rather than producing a $1,200 spike in one month.
Fusionmetrics prefers an explicit billing period from the billing source. When older Shopify activity lacks that field, the reconstruction can use the charge and billing schedule to identify an annual term.
Supported Mantle Flexibill annual fees collected through Shopify usage charges also contribute annual subscription MRR. Fusionmetrics divides the annual fee by 12 and removes it from rolling usage MRR to avoid double-counting.
Usage revenue
Usage MRR is the sum of non-test usage charges observed during the trailing 30 days, excluding recognized Mantle Flexibill annual subscription fees. It is a rolling run-rate, so it can change even when no fixed subscription starts, ends, or changes plan.
Discounts and zero-dollar contracts
An effective recurring discount reduces fixed MRR for the covered billing cycles. A fully discounted contract can therefore remain an active subscription contract while contributing $0 to MRR.
This distinction is intentional: subscription counts answer how many contracts are active, while MRR answers how much recurring revenue those contracts currently represent. See how subscription population affects churn for the separate churn control.
How the historical MRR curve is reconstructed
Fusionmetrics imports subscription lifecycle activity such as activations, cancellations, plan changes, freezes, unfreezes, and reactivations. It combines those movements with current subscription observations to reconstruct historical point-in-time MRR.
The latest MRR is anchored to the latest supported subscription state. Earlier points are reconciled through the movement ledger so the curve changes when recurring value changes, rather than when an import happens. A refreshed import can revise historical points when the source supplies better billing-period, discount, trial, or lifecycle evidence.
Test charges and Merchants explicitly excluded in App settings do not contribute. Fusionmetrics also avoids counting a large future-billed recurring increase as confirmed MRR when the available payment evidence does not yet support it.
MRR movements
Movements explain why MRR changed:
| Movement | Effect on MRR |
|---|---|
| New | A first paid recurring subscription adds MRR. |
| Expansion | A plan or price increase adds MRR. |
| Contraction | A plan or price decrease removes MRR. |
| Churn | A paid recurring subscription ends and removes MRR. |
| Reactivation | A previously ended paid subscription returns and adds MRR. |
| Frozen / unfrozen | A temporary subscription-state change is tracked separately for churn modeling. |
When multiple lifecycle events describe one replacement at the same time, Fusionmetrics reconciles them as one recurring-value change instead of double-counting both contracts.
MRR growth rate
The MRR summary compares current MRR with the opening MRR for the selected dashboard range:
MRR growth rate = (current MRR - opening MRR) / opening MRR × 100
For example, a move from $10,000 to $10,500 is 5% MRR growth. If opening MRR is zero, Fusionmetrics reports 0% rather than dividing by zero.
The chart is a pointwise series. Each plotted growth value compares the MRR at that point with its preceding comparison point, while the headline summary compares the endpoints of the selected range. The two therefore answer different questions and do not need to show the same percentage.
MRR and gross earnings are different
MRR starts with a recurring run-rate and includes the rolling components selected in Product settings. Gross earnings are transactions recorded inside a period. The values commonly differ because:
- annual cash is normalized to a monthly amount in MRR;
- usage MRR uses a trailing 30-day window;
- one-time payments affect MRR only when enabled in Product settings;
- discounts can reduce recurring value before it enters MRR;
- refunds, adjustments, and transaction timing affect earnings independently of subscription state.
Use the dashboard’s number reconciliation view when you need to bridge Shopify transaction gross, completed-day MRR, and the latest dashboard MRR for a specific App.
Configure Shopify MRR
In Product settings → Shopify MRR definition, an organization administrator can choose whether to include usage charges and one-time payments from the trailing 30 days. Usage is included by default; one-time payments are excluded. The same choices apply to every Shopify app in the organization. Stripe keeps its existing definition, and Fusionmetrics billing always uses recurring subscriptions plus trailing-30-day usage.
Recognized Mantle Flexibill annual fees remain in subscription MRR regardless of the usage or one-time payment choices. The usage option controls actual usage charges, such as overages.
Included one-time payments contribute their gross amount before platform fees. Refunds continue to affect earnings separately. Each included usage or one-time payment leaves the rolling MRR window once it is more than 30 days old; expiry does not count as a canceled subscription. Recognized annual fees follow their associated subscription's lifecycle instead.
Choose Save and rebuild dashboards to recalculate available history and related reporting metrics, including LTV and ARPU. Revenue churn uses the chosen opening MRR as its denominator while keeping subscription movements in its numerator. Subscription counts are unchanged.
You can leave the page during rebuilding. Dashboards continue showing the previous definition until the complete update is ready. If rebuilding fails, previous figures remain available; return to settings to retry or discard the change. If retained source data is missing, discard the change and refresh the affected apps before saving again. Saving waits until any current refresh ends.