Login
Aligning Stripe and SaaSGrid

Aligning Stripe and SaaSGrid

Chelsey Fang

Last updated: 6 March 2025

There are a variety of reasons why your MRR numbers may not match up perfectly when first configuring the Stripe <> SaaSGrid integration. These discrepancies can be caused by a variety of things - most of the time, these differences arise from the fact that SaaSGrid offers more granularity in what is included / excluded from our MRR calculations, and the follow up exercise would be to ensure these settings match what is configured within Stripe. Let’s take a look at what settings we often see can cause some of these differences.

Discounts

Stripe Behaviour

By default, Stripe incorporates forever coupons. One-time and repeating coupons can additionally be incorporated into MRR.

SaaSGrid Behaviour

SaaSGrid matches Stripe’s behavior for coupons; we allow once, repeating, and forever coupons.

Resolution

Within your Stripe Data Source Settings, navigate to the “Coupons” section and confirm that the options selected within SaaSgrid match those within Stripe. 

Another thing to note is that coupons that are deleted within Stripe will not be accounted for within SaaSGrid’s logic. Make sure you are deactivating coupons rather than deleting them altogether. 

Tax

Stripe Behaviour

Taxes and application fees are not included in MRR.

SaaSGrid Behaviour

By default, inclusive tax is not incorporated into MRR. SaaSGrid can allow inclusive tax to be incorporated into MRR. Exclusive tax is never included in MRR.

Resolution

Within your Stripe Data Source Settings, navigate to the “Tax” section. Confirm whether tax and application fees should be included or excluded from SaaSGrid’s MRR calculations.

Trials

Stripe Behaviour

If a subscription transitions from trialing to active, the subscription will count towards your MRR even if the first invoice is unpaid. Eventually, if the subscription is cancelled or marked unpaid, the subscription will no longer count towards your MRR and will also count towards your churn.

SaaSGrid Behaviour

By default, SaaSGrid counts the trial as converted when the trial ends and the customer is moved to active status. Alternatively, SaaSGrid also allows the date of the first paid invoice to indicate the trial conversion date. To align with Stripe, SaaSGrid can count the subscription and MRR as active before the first paid invoice date.

Resolution

Make sure the following settings (under the Trials tab in the Stripe Rules Flow) align between the different systems:

  1. When a trial completes, and a subscription moves to an active status, when should a customer count as converted?

    • Set to Immediately

  2. Should SaaSGrid respect trials that begin after the first paid invoice?

    • Set to Yes

  3. Should SaaSGrid count a Subscription as active before the first invoice is paid?

    • Set to Yes 

Delinquency 

Stripe Behaviour

Once a subscription is unpaid rather than active, your MRR will decrease by the amount on the subscription. If you mark subscriptions as unpaid as your dunning final action, Stripe considers a subscription delinquent at the time the following invoice is generated and automatically closed. For example, if you had your final payment attempt on the 8th but didn't bill until the 15th of the month, your subscription will be marked delinquent on the 15th.

SaaSGrid Behaviour

SaaSGrid lets you include unpaid invoices in MRR, while Stripe does not include unpaid invoices. SaaSGrid can also optionally exclude draft, open, paid, void, and uncollectible invoices from MRR. 

Resolution

Make sure the following settings (under the Invoices tab in the Stripe Rules Flow) align between the different systems:

  1. Should we include MRR from non-active subscriptions that never have had a successful payment?

    • Set this to No, exclude

  2. Are there any invoice statuses that should never contribute towards MRR even if the Subscription is in good standing?

    • Set this to Yes, include MRR for invoices that have been fully credited

  3. Should SaaSGrid discount MRR for invoices that have been refunded?

    • Set this to Never

Cancellations

Stripe Behaviour

Stripe optionally allows for the date of cancellation to be set for either the billing period end or the cancellation date.

SaaSGrid Behaviour

SaaSGrid optionally allows the subscription end date to be set for either the Last Paid Billing Cycle Date, the Cancel Date, or the earlier of the two.

Resolution

Make sure the following settings (under the Subscription End Dates tab in the Stripe Rules Flow) align between the different systems:

  1. For cancelled subscriptions, which date should the Subscription end?

    • Set to Earliest of Last Paid Billing Cycle and Cancel Date

  2. For unpaid subscriptions, which date should the Subscription end?

    • Set to Last Paid Billing Cycle

  3. Should SaaSGrid mark subscriptions as ended immediately when a subscription is not designated to renew?

    • This should match the Stripe MRR setting of Count canceled subscriptions as churn in Stripe.

Metered Billing

Stripe Behaviour

Metered billing is not included in Monthly Recurring Revenue (MRR) calculations, as the revenue can fluctuate significantly and is not predictable.

SaaSGrid Behaviour

SaaSGrid will include metered billing in MRR. Metered products can be excluded via a segment in SaaSGrid.

Resolution

Create a segment that excludes metered products in SaaSGrid and apply the segment to all MRR charts.

Refunds

Stripe Behaviour

One-off refunds, like one-off discounts, do not affect MRR unless it is due to a change in the Plan’s price.

SaaSGrid Behaviour

SaaSGrid optionally allows both credits or refunds to be incorporated in MRR. Fully credited invoices can still be included in MRR.

Resolution

Make sure the following settings (under the Invoices tab in the Stripe Rules Flow) align between the different systems:

  1. Should SaaSGrid count MRR for invoices that have been fully credited?

    • Set to Yes, include MRR for invoices that have been fully credited.

  2. Should SaaSGrid discount MRR for invoices that have been refunded?

    • Set to Never.

Other Reasons for Differences in MRR

Latest Stripe Data has not synced

We refresh your Stripe data daily. Check the Data Source page to get the timestamp of the last time we ran that job if you aren’t seeing all information reflected within SaaSGrid.

Currency Differences

SaaSGrid reads Stripe invoices and subscriptions and can either simply display the default Stripe currency value or correct it to the SaasGrid-defined currency value.

SaaSGrid will select the date to look up to retrieve the exchange rate based on available invoice and subscription data. If a transaction record is available in Stripe, SaaSGrid will simply report the already converted value from Stripe. If the invoice is paid, then SaaSGrid will lookup the invoice paid date. If the invoice is unpaid, SaaSGrid will lookup the invoice created date. If there is no invoice for the subscription, SaaSGrid will look up the subscription billing cycle start date.



Did you find this article helpful?