SaaS Metrics in NetSuite

SaaS Metrics in NetSuite

SaaS Metrics in NetSuite

ARR, MRR, Churn, and LTV Done Right

ARR, MRR, Churn, and LTV Done Right

ARR, MRR, Churn, and LTV Done Right

July 8, 2025

18 min read

The Metrics That Matter

When investors ask about your business, they don't start with GAAP revenue. They ask for ARR. They want to see MRR trends. They want churn rates, expansion revenue, net dollar retention. They want to understand CAC payback and LTV. These metrics drive valuation—sometimes more than profitability.

The challenge: NetSuite is an accounting system, not a SaaS metrics platform. It's designed to track GAAP revenue, not contract value. It captures invoices, not subscriptions. ARR isn't a standard NetSuite report because ARR isn't an accounting concept—it's an operational metric that happens to matter enormously for SaaS businesses.

Getting these numbers right isn't optional if you're raising capital, preparing for exit, or even just trying to understand your business clearly. Getting them wrong has real consequences: incorrect investor reporting, flawed strategic decisions, embarrassing restatements, and valuation adjustments when someone looks closely.


Defining the Terms Precisely

Part of the challenge is that these metrics aren't always defined consistently. Different companies calculate them differently, which makes comparisons difficult and creates room for misunderstanding. Before building anything, get precise about definitions.

ARR (Annual Recurring Revenue)

The annualized value of your recurring contracts at a point in time. This is the foundation metric for SaaS valuation.

Critical details that affect calculation:

  • Contract value, not GAAP revenue: ARR is what customers have committed to pay, not what you've recognized under accounting rules. A customer who signs a $120,000 annual contract in December is $120,000 of ARR, even though you might only recognize $10,000 of GAAP revenue by year-end.

  • Recurring only: ARR excludes one-time fees (implementation, training), professional services, variable usage that isn't committed, and anything else that isn't recurring by nature.

  • Annualized: Monthly contracts are multiplied by 12. Quarterly contracts multiplied by 4. Multi-year contracts might be divided by term length to get annual value, depending on your definition.

  • Active contracts only: Churned, cancelled, and expired contracts are excluded. Only contracts currently in force count.

The definition sounds simple. The implementation is not—especially when contracts have complex terms, mid-term changes, or non-standard structures. Is a two-year contract with annual price escalation one ARR value or two? How do you handle contracts with usage minimums plus overage? These edge cases require clear policy.

MRR (Monthly Recurring Revenue)

ARR divided by 12, but MRR is often tracked separately because the monthly granularity reveals trends that annual numbers smooth over.

The components of MRR matter more than the total:

  • New MRR: Revenue from new customers or first contracts—new logos entering the business

  • Expansion MRR: Revenue growth from existing customers—upgrades, additional seats, upsells, cross-sells

  • Contraction MRR: Revenue decline from existing customers—downgrades, removed seats, price reductions

  • Churned MRR: Revenue lost from customers who cancelled entirely

Each component tells a different story. A company with $100K total MRR could be healthy ($80K existing + $30K new - $5K churn - $5K contraction) or sick ($90K existing + $15K new - $3K churn - $2K contraction). The components reveal go-to-market health, customer success effectiveness, and product-market fit.

Churn

Revenue lost from cancellations and contractions. But which churn metric? They answer different questions.

  • Gross revenue churn: Total revenue lost from downgrades and cancellations, expressed as percentage of starting revenue. Always negative. Shows the hole in the bucket.

  • Net revenue churn: Lost revenue minus expansion revenue. Can be negative (meaning expansion exceeds churn), which is the holy grail of "negative churn." Shows whether existing customers are growing or shrinking in aggregate.

  • Logo churn: Percentage of customers lost, regardless of revenue. A different lens—losing 10% of customers might be 5% of revenue if you're losing small customers.

  • Dollar churn: Percentage of revenue lost. Weights customers by size.

Investors care about all of these because they reveal different aspects of customer health. You need to track at both customer and dollar levels, and distinguish between gross and net.

Net Dollar Retention (NDR)

The percentage of revenue from existing customers retained after accounting for churn, contraction, and expansion. If you started the year with $1M from a customer cohort and end with $1.1M from the same cohort, NDR is 110%.

NDR above 100% means your existing customer base is growing without any new sales. NDR of 120%+ is considered excellent for enterprise SaaS. Below 90% indicates serious retention problems.

LTV (Lifetime Value)

Average revenue per customer divided by churn rate, often adjusted for gross margin. The theoretical total value of a customer relationship.

The simple formula: LTV = ARPU / Churn Rate. If average customer pays $10,000/year and churn is 10% annually, LTV is $100,000.

Complications that matter:

  • Which customers? Average across all customers masks segment differences. Enterprise customers might have 5% churn while SMB has 20%.

  • Which revenue? Recurring only, or total including services?

  • Which churn rate? Customer churn or dollar churn?

  • Gross margin adjustment? Usually yes—you want profitable lifetime value, not just revenue lifetime value.

  • Discount rate? Sophisticated calculations apply a discount rate since future revenue is worth less than present revenue.

LTV becomes most useful when segmented—by customer type, acquisition channel, product, or cohort. The blended average hides important variation.


The NetSuite Challenge

These metrics don't exist in standard NetSuite reports because NetSuite tracks accounting transactions, not subscription economics. Getting them requires custom infrastructure.

Contract Data Structure

Native sales orders and invoices capture billing events, not contract terms. For SaaS metrics, you need:

  • Contract start and end dates: Not just the invoice date—when does the subscription actually run?

  • Recurring vs. one-time identification: Which line items are recurring revenue?

  • Contract term and renewal information: Annual? Monthly? Auto-renew? When is renewal?

  • Amendment and modification history: How has this contract changed over time?

  • Customer relationship linkage: Which contracts belong to the same customer for NDR calculation?

This usually means custom records or custom fields that capture contract attributes distinct from billing transactions. The subscription record becomes the source of truth for metrics, even though billing transactions drive GAAP revenue.

Point-in-Time Snapshots

MRR is a moment in time. To show MRR trends—or to calculate movement (new, expansion, churn, contraction)—you need historical snapshots.

If you only calculate current MRR, you can't answer: What was MRR last month? How much new MRR did we add? How much did we lose to churn? These questions require comparing current state to prior state, which means you need prior state stored somewhere.

Custom scheduled processes capture end-of-period snapshots and store them in custom records. This creates the time series data needed for trend analysis, cohort analysis, and reconciliation to prior reports.

Movement Categorization

The hardest part of MRR tracking is categorizing changes correctly. When a contract changes from $1,000 to $1,200, is that expansion? What if they also added a year to the term? What if they changed from monthly to annual billing?

Movement logic requires comparing current contract state to prior contract state and categorizing the difference:

  • Was this customer present last period? If not, it's new.

  • Is this customer gone this period? If so, it's churn.

  • Is the value higher? Expansion.

  • Is the value lower? Contraction.

Edge cases abound. Customer cancels and then reactivates—is that new or reactivation? Contract pauses for a month—is that churn or something else? Customer consolidates two contracts into one—expansion or just restructuring?

These categorization rules need to be encoded in custom logic. The rules should match your business model and be applied consistently.

Reconciliation Requirements

SaaS metrics should tie to something verifiable. If your ARR can't be reconciled to any other number in your system, investors and auditors will have questions.

Common reconciliation approaches:

  • ARR to deferred revenue: Annual contracts billed upfront create deferred revenue that should approximate ARR (with timing adjustments)

  • MRR to monthly billing: The sum of recurring invoices should be close to MRR

  • Change in ARR to movement components: Starting ARR + New - Churn + Expansion - Contraction = Ending ARR

Building reconciliation into regular processes catches discrepancies before they're reported externally.


Building the Solution

Design the Data Model First

What custom records do you need? What fields? How do they relate to native transactions? The data model is the foundation everything else builds on.

Typical components:

  • Subscription/Contract record: Core record tracking contract terms, value, dates

  • MRR Snapshot record: Monthly snapshots of MRR by customer/contract

  • Movement record: Categorized changes period over period

Get this right and reporting follows naturally. Get it wrong and you'll be retrofitting data structures while trying to report.

Automate Population

Manual entry of subscription data doesn't scale and introduces errors. Build workflows and scripts that capture contract data consistently—when sales orders are created, when renewals process, when amendments are made.

Automation should:

  • Create subscription records from sales transactions

  • Update subscriptions when contracts change

  • Handle renewals systematically

  • Flag exceptions that require human attention

Create Snapshot Processes

End-of-month scheduled scripts that capture current MRR state. These need to:

  • Calculate MRR for each active subscription

  • Store the snapshot with date

  • Calculate movement vs. prior period

  • Categorize movement correctly

Snapshots should be immutable—once captured, they represent the truth at that point in time. Current calculations might change as data is corrected, but historical snapshots preserve the record of what was reported.

Build Reports and Dashboards

With proper data infrastructure, reporting becomes straightforward:

  • Current ARR/MRR by segment, product, cohort

  • MRR trend over time

  • Movement analysis—new, expansion, contraction, churn

  • Cohort retention curves

  • NDR calculation

  • Churn analysis by reason, segment, tenure

Custom saved searches and Suitelets can present this data. Integration with BI tools can enable more sophisticated visualization.


The Investment

Building SaaS metrics infrastructure in NetSuite isn't trivial. It requires thoughtful custom development—data model design, automation, snapshot processes, movement categorization, reporting.

But the alternative—spreadsheets that nobody trusts and can't be audited—is worse. When you need ARR for a board meeting, investor pitch, or M&A due diligence, you need it to be right, traceable, and defensible.

The companies that invest in this infrastructure have confidence in their numbers. They can answer questions in real-time rather than scrambling to rebuild analysis. They catch problems early because they're looking at metrics regularly, not annually.

The right custom solution becomes your source of truth for the metrics that drive valuation. That's worth investing in.

Ready to Work Together?

Ready to Work Together?

Ready to Work Together?

Let us talk about your NetSuite challenges and how we can help. No pressure, no sales pitch. Just a straightforward conversation.

Let us talk about your NetSuite challenges and how we can help. No pressure, no sales pitch. Just a straightforward conversation.

Author

Michael Strong

Michael Strong

Founder & Principal Architect

Founder & Principal Architect