Best pipeline setup for tracking SAAS metrics (ARR/NRR/CHURN/EXPANSION)

Hi everyone,
Lookign to build out HubSpot in the best way to track all the key SAAS metrics (ARR/MRR/NRR/Churn etc etc).
I’ve got the new business setup but want to be able ot track expansion, downsell and churn etc and espeiclaly NRR or NDR.
We sell Monthly contracts you can cancel at any time which makes tracking the above hard. If anyone else has tackled a simliar situation let me know! Happy to look into other tech stacks etc.

Hi @TOffen,

Thanks for reaching out to the Community!

I came across a question that’s really similar to yours in another thread, and I thought it might be helpful for you. I’m sharing it here so you can take a look and see how others approached achieving the goals you mentioned. Hopefully, it gives you some good ideas! :slightly_smiling_face:

Best,

Diana

Hey @TOffen I know this is an old thread, but I wanted to ask what your billing and subscription management system is? Are you using Stripe or HubSpot Commerce something else to manage your subscriptions? I think that context will be crucial to answer to your question since every system and approach structures its data in HubSpot differently.

Ok, so there’s a lot of conflicting advice in threads like this because the answer really depends on your deal structure. I’ve seen teams create pretty custom setups. In general, there’s 3 approaches you can bucket into.

Option 1: Deal properties with formula fields: easiest to set up, but formulas in HubSpot are limited. You can calculate a rough ARR from deal amount x contract length, but expansion/contraction over time is very hard to capture accurately this way.

Option 2: Custom objects for subscriptions: more accurate because you model each subscription as its own object with its own lifecycle. Downsides: requires significant setup, and you need a process to keep subscription objects in sync with what actually happened in your billing system.

Option 3: External billing sync tools: connect Stripe/Chargebee/Recurly directly to HubSpot and have actual billing events (new MRR, expansion, contraction, churn) written as properties or activities on the contact/company. This gives you the most accurate data with the least manual work, but you’re adding a tool to your stack.

For monthly cancellable contracts specifically, Option 3 tends to work best because the billing system is the source of truth. Trying to mirror that in HubSpot deals manually gets messy fast. I’d be happy to dig into specifics if you share more about your setup.

Option 3 (external billing sync) is the right call for monthly cancellable contracts. The billing system is always the source of truth.
Worth noting: SaaS Hapily (formerly Zaybra), the most commonly recommended solution here, is no longer accepting new customers. That leaves ClearSync (reporting only) and Finrite (billing automation only) — neither covers both needs.
I am building a Stripe to HubSpot app that handles both: clean MRR/ARR with proration logic, plus workflow triggers on subscription events. Works on all HubSpot tiers, not Enterprise-only.
Happy to give early access if you want to shape what gets built.

This is exactly the use case we built for — triggering WhatsApp template messages when a HubSpot property changes.
The workaround of copying ticket properties to contacts and chaining workflows gets messy fast, especially when multiple tickets are active simultaneously as you described.
We built an app that listens directly to HubSpot contact property change webhooks and sends WhatsApp Business API template messages automatically — no workflow chaining needed. You set the trigger property, pick the template, and it fires.
Currently looking for early users to test it. Happy to give you access if this matches what you need.