Know your revenue.
Keep more of it.

One dashboard for MRR, ARR and churn across Stripe, the Shopify App Store and the Wix App Market. Spot customers who are drifting away, and follow up before the revenue goes with them.

Free during early access. Read-only billing connections.

  1. UnderstandOne MRR across the platforms you sell on
  2. DetectCustomers whose activity is falling, with their MRR
  3. ActBranded follow-up emails you control
Example OneMRR dashboard for a demo company: Stripe $21,460, Shopify $15,320 and Wix $11,430 add up to $48,210 MRR. A notice says one customer's key activity fell 74% and a follow-up email draft is ready to review.

Every platform. One MRR.

Selling on the Shopify App Store, the Wix App Market and Stripe? Stripe's dashboard only sees Stripe. OneMRR puts every platform in one subscription ledger, so MRR means the same thing everywhere.

  • StripeSubscriptions, invoices and refunds Live
  • Shopify App StoreApp billing from the Partner API Live
  • Wix App MarketPayout exports, with estimates labelled Live
  • Paddle and Lemon SqueezyRead-only API keys Beta
  • Your own billingSend customers and subscription events to the API API
MRR by source for a demo company: Stripe $21,460, Shopify $15,320, Wix $11,430, $48,210 in total.

Know exactly what's changing.

See how much MRR came from new customers, upgrades and returns, and how much went to downgrades and cancellations. Select any movement to see the customers behind it.

MRR bridge
September to October. The axis starts at $44K so the change is visible.
September MRR$46,870
October MRR$48,210
New in October
23 customers · the 4 largest
  • AL Atlas LabsS Business, monthly · Oct 4 +$349
  • CR Cedar & RyeS Pro, monthly · Oct 9 +$99
  • OS Orbit SupplyS Growth, monthly · Oct 15 +$79
  • LY Lighthouse YogaW Premium, annual · Oct 11 +$33

Also in OneMRR: customer and revenue churn, net revenue retention, cohorts, CAC, LTV and payback, an experimental forecast, and CSV export.

Spot warning signs before customers leave.

OneMRR connects product activity to subscription revenue. When a paying customer's activity drops well below their own normal level, you see who it is, why they were flagged and how much MRR they carry.

Pick what happens next: a digest for you, a draft to review, or an automatic email.

BB
Bluebird Bakery
S Growth, monthly · customer since March 2025
$79 MRR
Key activity per week · report_published
HighActivity dropped · weekly ruleDetected Oct 17, 04:30 UTC

Key activity fell 74%: 31 a week on average over the 56 days to Oct 3, 8 a week in the 14 days since.

At risk customers
CustomerMRRPriorityNormal → recentLast key activityOutreach
Bluebird Bakery $79 High 31 → 8 a week Yesterday —Draft ready
Harbor Fitness $149 Medium Quiet 30 days Sep 17 Replied
Maple Fair $29 Low Quiet this season Aug 9 Draft ready
When this rule flags a customer Notify mePrepare an emailEmail automatically

Your product's rhythm

Tell OneMRR whether customers use you daily, weekly, monthly, seasonally or every few days. Quiet months outside your season don't raise alarms.

Rules you can read

Activity fell by at least 60%. Quiet for twice their usual gap. Stopped completely. Change any threshold or window; every change is saved as a new version.

A priority, not a prediction

Each customer is compared with their own history. Thin histories are marked "not enough data" instead of guessed, and priority only orders the list. It isn't a probability.

Another rule, on another customer: “No key activity for 30 days, since Sep 17. This customer usually goes at most 6 days between active days, so OneMRR expected some within 14 days.”

Turn warning signs into action.

Follow up with customers who may need help, in your own words and your own brand. You decide which signals send email, when it goes and how many go out a day. Nothing is sent automatically until you turn it on.

Automations
What happens when a rule flags a customer. Try it.
Activity droppedFell 60% or more · weekly
Activity stoppedQuiet for 2× their usual gap Notify mePrepare an emailEmail automatically
Send afterTime to come back on their own 1 hour1 day3 days1 week
Sending hoursEmails wait for the next window 9:00 to 17:00 · America/Chicago
Daily limitAutomatic emails a day 20
Automatic emailsCustomers flagged before this was turned on are never emailed On since Oct 2

Draft waiting for your review in At risk.

Maya from Pulse Tasks <hello@pulsetasks.app> To: Ana at Bluebird Bakery A quick check-in from Pulse Tasks
Pulse Tasks

Anything we can help with?

Hi Ana,

Just checking in to see how things are going with Pulse Tasks. If there's anything you're stuck on, or something we could make better, we'd love to hear from you.

Book a 15-minute call

Thanks,
The Pulse Tasks team

Pulse Tasks · 120 Main St, Austin, TX · Unsubscribe

  • Rechecked right before sending: still paying, no cancellation started
  • Never sent to anyone who unsubscribed, bounced or complained
  • At most one email per customer every 30 days
  • Replies come back to OneMRR and to your own inbox
  • Drafts wait in At risk until you approve them
  • Delivery, opens, clicks, replies and outcomes are reported

Learn why customers leave, and what to fix first.

When a subscription is cancelled, OneMRR can send a short email and a one-question survey in your brand. Answers arrive grouped by reason, next to each cancellation, so you know what to fix first.

  1. 1A cancellation comes in

    Stripe · Oct 14, 10:42 AMCedar & Rye cancelled Pro, monthly−$99 MRR at the end of the period
    Before sending Verified Stripe cancellation Customer email on file Hasn't unsubscribed Sending after 1 day
  2. 2Your email goes out

    Pulse Tasks

    Could we ask you one quick question?

    Hi Jo, thanks for giving Pulse Tasks a try. We're sorry to see you go.

    Would you tell us what made you decide to cancel?

    Share feedback

    One question. Less than a minute.

  3. 3They answer in your survey

    Pulse Tasks

    Sorry to see you go.

    What was the main reason?

    Too expensiveMissing featuresNot using it enoughSwitching to another productOther
  4. 4You see why

    Cancellation feedback · last 90 days
    Missing features6
    Pricing5
    Low usage3
    Competitor2
    1. 41 sent
    2. 39 delivered
    3. 30 opened
    4. 19 clicked
    5. 16 answered
  • Company name
  • Logo
  • Brand color
  • Sender name
  • Subject and body
  • Survey question
  • 3 to 8 reasons
  • Optional comment box
  • Thank-you message
  • Send delay
  • “Powered by” on or off

Automatic emails go to Stripe customers. Shopify and Wix don't give apps their customers' email addresses, so for marketplace cancellations OneMRR gives you a survey link to send yourself.

Numbers you can actually explain.

Every source is checked against the platform's own billing, and each difference is sorted into a reason you could give an investor. The MRR rules are written in plain English, and anything estimated says so.

  • Annual plans count as one-twelfth a month
  • See MRR before or after marketplace fees
  • Rebuild the ledger from your sources at any time
Reconciliation · Stripe OneMRR MRR $21,460 · billed in Stripe over the last 30 days $21,612
DifferenceCustomersStripe − OneMRR
Match exactly271$0
Billed, then cancelled or refunded3+$187
Billed more than once2+$58
Discounts, prorations or price changes4−$64
Not in both1−$29
Explained+$152

Connect. Monitor. Act.

Revenue analytics needs only the first step. Churn Signals needs a few lines of server code.

  1. 1Connect billing

    Add read-only keys for Stripe, Shopify Partners or Paddle, or upload Wix payout exports. History imports and your MRR appears.

  2. 2Send key activity

    From your server, tell OneMRR which account did something that matters. Only the account ID, event name and time are kept.

    // npm install @onemrr/node
    import { OneMRR } from "@onemrr/node";
    const onemrr = new OneMRR({ apiKey });
    
    onemrr.track({
      accountId: "merchant_123",
      event: "report_published",
    });
  3. 3Choose what happens

    For each rule, pick a digest for you, a draft to review, or an automatic email with your own delay, hours and daily limit.

Built because we needed it ourselves.

I run Ticket Spot, an event ticketing app sold on the Shopify App Store, the Wix App Market and directly through Stripe. Each platform reports revenue its own way, so "what's our MRR?" meant three dashboards, a payout spreadsheet and a lot of copying.

The second question was harder: why are organizers leaving? By the time a cancellation showed up, the organizer had usually stopped creating events weeks earlier. I wanted to see that drop while there was still time to ask if they needed help, and to hear from the ones who left anyway.

So OneMRR does both. It gives you one number for revenue that you can trust and explain, and it helps you notice and follow up when customers drift. It shows its work and labels anything it estimates.

Chris McCaw
Founder of OneMRR and Ticket Spot

Questions

Why use OneMRR instead of Stripe's dashboard?

Stripe's dashboard only covers Stripe. If you also sell on the Shopify App Store or the Wix App Market, OneMRR puts it all into one MRR, shows which customers caused each change, and connects revenue to how customers actually use your product.

What happens when I sell on several platforms?

Each platform connects read-only and goes into one subscription ledger with the same rules: annual plans count as one-twelfth a month, and fees are handled the same way everywhere. View everything together or filter by source, before or after marketplace fees. Wix doesn't share live subscription data, so Wix MRR is estimated from payout exports and labelled as estimated.

What does OneMRR actually measure?

MRR and ARR; new, expansion, reactivation, contraction and churned MRR; customer churn, gross and net revenue churn and net revenue retention; ARPA and paying customers. There are also cohorts, CAC, LTV and payback, and an experimental forecast. Every number opens to the customers behind it.

How does OneMRR help me understand churn?

In three ways. Churn reports show who left and what it cost, by source and plan. Churn Signals flag paying customers whose activity drops, along with the MRR they carry. Cancellation surveys tell you why people left, grouped into reasons such as pricing, missing features or low usage.

Can I choose which activity counts?

Yes. You send the events that matter from your server with @onemrr/node or the HTTP API, then mark each one as key, engagement or ignored. Rules can watch key events, key and engagement events, or specific events by name, with the thresholds, time windows and minimum history you choose. OneMRR keeps only the account ID, event name and time.

Will OneMRR email my customers on its own?

Only if you turn it on. Each rule can notify you, prepare a draft for you to review, or email automatically. Automatic emails wait the delay you choose, go out within your sending hours and daily limit, and never go to customers flagged before you turned sending on. Each one is rechecked right before it goes: still paying, no cancellation started, not unsubscribed, and not emailed in the last 30 days.

Can I customize the emails and survey?

Yes. Set your company name, logo, brand color and sender name; write the subject and body; and choose the survey question, three to eight reasons, an optional comment box and the thank-you message. Preview it, send yourself a test, and publish when it's ready. The “Powered by OneMRR” line can be turned off.

Which cancellations get the follow-up email?

Verified Stripe cancellations with a customer email on file, after the delay you set. Shopify and Wix don't give apps their customers' email addresses, so for marketplace cancellations OneMRR gives you a survey link to send yourself.

Is my billing data safe?

Billing connections are read-only. Credentials are encrypted at rest and never shown again after you save them, and every workspace's data is kept apart by row-level security in the database.

Know your revenue.
Keep more of it.

Connect your first billing platform in a few minutes. Free during early access, and every connection is read-only.