Recurring Revenue (ARR/MRR)

Recurring revenue represents the predictable income your business generates from customers on a monthly or annual basis. This metric is especially important for subscription and SaaS companies because it helps you understand growth, customer retention, and overall financial performance.

In Rillet, the MRR / ARR report shows how recurring revenue changes over time based on your contracts, invoices, credit memos, and overrides. This allows you to analyze revenue trends and identify expansion, churn, and reactivation using consistent calculation rules.

How ARR/MRR Is Calculated in Rillet

Rillet calculates recurring revenue using several data sources that impact your results. These records can be created directly in Rillet or synced from external systems such as Stripe or internal billing tools.

The following objects can affect ARR and MRR:

  • Contracts

  • Invoices

  • Credit memos

  • Overrides

Rillet evaluates each line item from these objects to determine whether it contributes to recurring revenue.

Three key inputs are used for each line item:

  • Product Type: The product must have Count to MRR/ARR enabled.

  • Product Dates: The start and end dates defined on the line item from contracts, invoices, or credit memos.

  • Product Amount: The monetary value of the line item.

Using these inputs, Rillet applies the following formulas:

  • MRR = Line item value ÷ number of months

  • ARR = (Line item value ÷ number of months) × 12

You can apply overrides to existing invoices or create standalone overrides in ARR Waterfall > Rollforward View.

Types of ARR and MRR Changes

Rillet tracks changes in recurring revenue by comparing each customer’s recurring revenue at the end of a month with the previous month. These changes are grouped into categories so you can quickly understand how your revenue is evolving.

Each category represents a specific customer behavior or revenue movement.

New Sales

This category applies when a customer begins generating recurring revenue for the first time.

Rillet classifies a customer as a new sale when all of the following conditions are met:

  • The customer does not have any previous recurring revenue in Rillet

  • Prior month recurring revenue equals $0

  • Current month recurring revenue is greater than $0

Churn

Churn represents customers who are no longer active and no longer generate recurring revenue.

A customer is marked as churned when these conditions are met:

  • Prior month MRR is greater than $0

  • Current month MRR equals $0

Expansion

Expansion occurs when an existing customer increases their recurring revenue compared to the previous month.

Rillet classifies a customer as expansion when:

  • Prior month recurring revenue is greater than $0

  • Current month recurring revenue is greater than the prior month

Contraction

Contraction applies when an existing customer continues to generate recurring revenue but at a lower amount than before.

A customer is considered contraction when:

  • Prior month recurring revenue is greater than $0

  • Current month recurring revenue is greater than $0

  • Current month recurring revenue is less than the prior month

Reactivation

Reactivation applies when a customer who previously had no recurring revenue becomes active again.

Rillet identifies reactivation when:

  • The customer previously existed in Rillet

  • Prior month recurring revenue equals $0

  • Current month recurring revenue is greater than $0

Usage Impact

Usage impact reflects changes in recurring revenue driven by variable or usage-based subscriptions, such as metered billing.

This category is calculated separately because usage revenue can fluctuate significantly from month to month.

The usage impact is determined using the following formula:

  • Usage overage of the current month minus usage overage of the prior month

Usage overage represents the portion of revenue generated from usage products that exceeds any minimum commitment.

FX Impact

If your contracts use multiple currencies, exchange rate changes can affect your recurring revenue even when customer spending stays the same.

Rillet separates foreign exchange impacts into a dedicated FX Impact category so you can distinguish true revenue changes from currency fluctuations.

For more details, see articles in the Multi-Currency section.

Special Rules for Recurring Revenue

Rillet applies additional logic to ensure recurring revenue classifications remain accurate.

Keep the following behaviors in mind:

  • When importing usage-based invoices from Stripe, recurring revenue impact is limited to the month of usage to prevent retroactive changes to prior months.

  • If recurring revenue exists on any day within a month and the following month still has recurring revenue, changes are classified as expansion or contraction instead of churn and reactivation. This prevents short contract gaps from being treated as customer churn.

  • You can enable a configuration option to classify churn only when a contract has been terminated. This is useful for open-ended, usage-only contracts that invoice monthly in arrears.

See Also

Learn more about recurring revenue and financial metrics:

Last updated