Skip to content

No telemetry, no product analytics, renewal in March

How Do I Build a Health Score Without Usage Data?

A health score without usage data is buildable: the nine inputs that predict churn with no telemetry, how to weight them, and how to prove the score works.

By , Co-founder, GainTrace · Updated · 15 min read · For CS Operations, Head of Customer Success

Short answer

A health score without usage data is built from nine inputs you already hold: contract facts, payment behaviour, the seat gap, support pattern, onboarding milestones, meeting attendance, reply latency, sponsor changes and survey response behaviour. Score each one as change against the account's own baseline, weight them from your own churn history, and publish how many churns the score caught.

Building a health score without usage data is the situation most customer success teams are in, whatever the software demos assume. The product ships on-premise, or the analytics were never instrumented, or the events exist but sit in a warehouse nobody will give you access to. Meanwhile you have 200 accounts, a renewal calendar, and a leadership team that wants a colour beside every account by the end of the month.

This page is for the CS Ops lead or Head of CS scoring accounts with no telemetry. It gives the nine inputs you can gather without engineering help, what the score loses and gains against a usage-based one, a weighting method that uses your own churn history instead of opinion, and the backtest that tells you whether any of it works. For the version that assumes usage inputs exist, see how to build a customer health score template in a spreadsheet.

Key takeaways
  • Nine inputs are available with zero product telemetry, and seven of them come from systems the CS team already owns: billing, the helpdesk, the calendar, the inbox, the CRM and the survey tool.
  • The seat gap, licences billed minus users provisioned, is the closest thing to an adoption signal you can get without telemetry, and it comes from an admin console rather than from the product.
  • Score change against each account's own baseline, never level against the account base. A customer whose reply latency goes from one day to eight is in trouble at any absolute number.
  • Remove every input a CSM types. A score built from relationship signals is more exposed to gaming than a usage score, so the discipline matters more here, not less.
  • Backtest before you trust it. Pull the accounts that churned in the last four quarters, rebuild the score as it stood 90 days out, and count how many were green.
Browse this guide

Questions this page answers

  • Our product has almost no telemetry, how do we score customer health?
  • How do I build a customer health score without product usage data?
  • What can I use instead of usage data in a health score?
  • How do you score health for on-prem or air-gapped software?
  • Is an engagement-based health score any good at predicting churn?
  • What is the minimum product data I should ask engineering for?
  • How do I weight health score inputs when I have no adoption data?

Which nine inputs build a health score without usage data?

A health score without usage data draws on nine inputs, seven of which live in systems the customer success team already owns. Billing knows who pays late. The helpdesk knows who has stopped asking questions. The calendar knows who cancelled the last two reviews. The inbox knows who takes eight days to reply now and took one day in March. None of that needs a product engineer, and none of it can be lost when an analytics migration breaks.

The seat gap

The seat gap is the difference between the licences a customer is billed for and the named users their administrator has provisioned, expressed as a percentage and measured monthly. It is the closest thing to an adoption signal available with zero product telemetry, because provisioning lives in your own admin console and your own billing system. A seat gap that widens three months running is a downgrade being prepared.

Nine health score inputs available with no product telemetry, the system each comes from, and what a deterioration looks like. Ordered from the hardest evidence to the softest.
InputSource systemWhat deterioration looks like
Payment behaviourBilling or finance ledger.Invoices paid later each quarter, a new PO requirement, a finance contact added to the thread, a card decline.
Seat gapYour admin console plus the contract.Licences billed hold steady while provisioned users fall, so the gap widens month on month.
Contract and commercial factsCRM and the signed agreement.Auto-renew removed at the last renewal, term shortened from 24 months to 12, a discount granted to keep them.
Support pattern as changeHelpdesk.Ticket volume 50% below the account's own prior quarter, or reopen rate rising while volume falls.
Onboarding milestonesProject tracker or CRM stages.A milestone date slipping twice, or the account sitting at the same stage for more than 30 days.
Meeting cadence keptShared calendar.Two consecutive reviews cancelled or rescheduled, or the senior attendee replaced by a junior one.
Reply latency and thread breadthShared inbox or CRM email sync.Median days to reply rising against the account's own baseline, and fewer distinct people on the thread.
Sponsor and champion changeContact records, plus public role changes.The economic buyer leaves, a new decision maker appears, or your main contact changes job title.
Survey response behaviourSurvey tool.The account stops responding at all. Whether they respond is a better signal than the score they give.
How in the hell does a B2B SaaS company build a product that doesn't have any usage telemetry? I can't tell how often people are logging in to the platform, nor what tools they're using, how much adoption is taking place, etc.
r/CustomerSuccess, 2025

The gap is wider in the market than the product pages suggest. Of 4,978 public G2 reviews of customer success platforms published up to 2026, 459 (9.2%) mention a customer health score while only 114 (2.3%) mention usage data and 5 mention telemetry at all. Teams are scoring health far more often than they are feeding a score with product events.

It can also be difficult to import product usage data, which is key for creating many automated CTAs (Calls to Action) for CSMs and for influencing an objective customer health score.
Mid-Market reviewer, public G2 review

What does a health score without usage data lose, and what does it gain?

A health score without usage data loses depth and gains timing. It cannot tell you which feature a customer stopped using or which team inside the account went quiet, so feature-level risk and user-level expansion signals are out of reach. What it gains is that relationship and commercial signals often move before behaviour does, and that none of them disappears when an analytics pipeline breaks or a customer runs the software inside their own network.

What a health score without usage data gives up against a telemetry-based score, and what it gets in return. Ordered by how much the trade matters for a typical B2B company.
DimensionTelemetry scoreNo-telemetry score
Feature-level riskShows which capability was abandoned and by whom.Invisible. This is the real loss, and nothing on this page recovers it.
TimingMoves when behaviour changes, which is often after the decision.Sponsor departures, cancelled reviews and slower replies frequently move first.
CoverageOnly accounts on the instrumented version of the product.Every account, including on-premise, resold and air-gapped deployments.
Resistance to gamingHard to fake, because the events come from the product.Exposed, if any input can be typed. Every input here must be system-generated.
Time to first scoreWeeks to months, once instrumentation and a data feed exist.Days. Seven of the nine inputs come from systems the CS team already administers.
The renewals that burn me are not the angry accounts. Those I see coming. It's the ones where the relationship is warm, usage is fine, nobody escalates, and then they don't renew and I'm explaining to my boss why my forecast said safe.
r/CustomerSuccess, 2026

That practitioner account matters for anyone waiting on telemetry before they build anything. Usage data answers whether the product is being used; it does not answer whether the reason the customer bought it still exists. A score built from sponsors, meetings and commercial behaviour is aimed at the second question, which is the one that decides annual renewals. What are the early warning signs of churn when data is scattered covers pulling those signals out of the tools you already have.

How do I weight inputs I cannot calibrate against adoption?

Weights come from your own churn history, not from a template. Take every account that churned or contracted in the last four quarters and an equal number that renewed flat, then compare each input across the two groups at the 90-day mark. An input that looks the same in both groups predicts nothing and gets a weight of zero, whatever anyone believes about it. An input that separates the groups earns weight in proportion to how cleanly it separates them.

The seat gap

Seat gap = (Licences billed Named users provisioned) ÷ Licences billed × 100

Named users provisioned
accounts created in your admin console, whether or not anyone signs in. This is administration data, not usage data, which is why it survives with no telemetry
Read it as change
the level is meaningless, because some customers over-buy on purpose. Three consecutive monthly increases in the gap is the signal
What good looks like
a gap that is flat or shrinking. A gap widening past 25% on an annual contract usually turns into a seat reduction at renewal
Change against the account's own baseline

Input change = (Value in the last 30 days The account's own prior 90-day average) ÷ The account's own prior 90-day average × 100

Why the account's own baseline
a customer who has always replied in four days is not at risk for replying in four days. The same absolute number means opposite things on two accounts
Direction matters
support volume falling is a risk signal; reply latency rising is a risk signal. Set the sign per input before you weight anything
What good looks like
no input contributes more than 25% of the total score, so no single deterioration can turn an account red on its own

Weighting from 20 events

180 accounts had 11 churns and 5 contractions over four quarters, plus 16 random flat renewals as a control. At the 90-day mark, sponsor change appeared in 9 of the 16 loss events and 2 of the 16 controls. Meeting cancellations of two or more appeared in 10 of the losses and 3 of the controls. The seat gap had widened by more than 20% in 7 of the losses and 1 control. Payment lateness split almost evenly, 6 against 5, so it earned a weight of zero despite being the input everyone assumed mattered most. The resulting weights were sponsor change 25, meeting cadence 25, seat gap 20, reply latency 15, support change 10, onboarding milestones 5. These figures are illustrative; run the comparison on your own churn list before you set a single weight.

The effectiveness and reliability of the scorecards are primarily determined by the quality and thoroughness of the data input.
Customer Success Manager, enterprise SaaS, public G2 review

How do I build the score in five steps without telemetry?

Building a no-telemetry score takes five steps and about a week of elapsed time, most of it spent getting export access to the helpdesk and the shared inbox. Do the inputs before the weights and the weights before the colours, because a colour scheme agreed early becomes the thing people argue about for a month.

  1. List the systems you can already export from

    Billing, helpdesk, calendar, shared inbox, CRM, survey tool, admin console. Write down the refresh interval of each one, because the slowest source sets the speed of the whole score.

  2. Pull 90 days of history per account for the inputs you can get

    You need history to compute change against a baseline, so a score built from today's snapshot cannot work. Start with four inputs you can get this week rather than waiting for all nine.

  3. Compute each input as change, and set its direction

    Support volume down is bad. Reply latency up is bad. Seat gap up is bad. Meeting cancellations up is bad. Write the direction beside each input so nobody has to guess later.

  4. Set weights from the churn comparison, not from a workshop

    Run the churned-against-renewed comparison from the section above. Any input that fails it gets a weight of zero and stays visible on the account record as context.

  5. Publish the score with its refresh time and its accuracy

    Print when each input last updated and how many of last year's churns the score flagged at 90 days. A score that shows its own limits gets used correctly; one that hides them gets trusted and then abandoned.

Everything was very subjective in the way that we measured our client's health.
Customer Success Manager, mid-market SaaS, public G2 review

One rule carries more weight here than on a usage-based score: nothing a CSM types enters the number. A score built from relationship signals is easier to flatter than one built from product events, so keep the CSM's read of the account as a note beside the score where it is useful and cannot move a colour. The customer success scorecard shows the same separation in a form you can hand to a team.

How do I prove a health score without usage data is working?

Proving a health score without usage data works takes one afternoon and the last four quarters of churn. Rebuild the score as it stood 90 days before each loss, count how many of those accounts were green, and you have the only number that matters about your score. Do the same for an equal number of flat renewals to get the false alarm rate. Without that test, weights are opinions with decimal places.

Before the score goes live

  • Every input is system-generated, and no field can be edited by a CSM.
  • Every input is expressed as change against the account's own 90-day baseline.
  • The direction of each input is written down, and support volume falling counts as a risk.
  • Weights came from the churned-against-renewed comparison, and inputs that failed it sit at zero.
  • No single input can move an account from green to red on its own.
  • Accounts under 90 days old are scored on onboarding milestones instead, or excluded.
  • The refresh interval of every source system is printed next to the score.
  • The score shows how many of the last four quarters of churn it flagged at 90 days.
  • The backtest is in the calendar for next quarter.

The full procedure, including what precision and recall mean for a score like this and what a passing result looks like, is on how to backtest customer health score logic before rollout. The failure modes that break scores of every kind, including gamed inputs and new customers scoring red, are on why customer health score accuracy is so poor.

I tried building a health score in a spreadsheet. It flags accounts that already stopped logging in, which is like a smoke detector that goes off after the house burns down.
r/SaaS, 2026

What is the smallest telemetry ask worth making of engineering?

Three events cover most of what a health score needs from a product, and asking for three is far more likely to succeed than asking for analytics. Engineering teams refuse open-ended instrumentation projects and accept narrow ones with a named consumer, so bring the three events, the destination, and the renewal number they protect.

The three product events worth asking engineering for, what each one unlocks in the score, and why the build is small. Ordered by value per hour of engineering time.
EventWhat it unlocksWhy it is a small build
Authenticated session, account and user ID, dailyActive users per account, which converts the seat gap from a provisioning measure into a real adoption measure.One line at the point where a session is already created. No new schema.
One core action completed, per account, per dayWhether the customer is doing the thing they bought the product for, which is the only usage signal that maps to value.One event at a code path that already exists. The argument is about which action, not about the build.
User provisioned or deprovisionedSeat movement in real time, so a 40% deprovisioning shows up in March instead of at the renewal call in June.Admin actions are usually already logged for audit. This is often an export, not a build.

Until those arrive, the nine inputs stand on their own. Plenty of teams with full telemetry in 2026 end up back here anyway, because product events describe the users and the renewal is decided by people who never log in.

We have very little insight into our product usage per user, and [the platform] allows us to track this.
Partner Success Manager, mid-market SaaS, public G2 review

How does GainTrace score health without usage data?

GainTrace connects billing, CRM, support and email first, so a score exists from those sources on day one and improves if product events ever arrive. Each account is scored on change against its own baseline, and the signals behind the number are shown on the record with their refresh times. Customer health shows the sponsor, meeting and commercial movements behind each score, and churn prediction learns from your own renewals which of those signals carried the risk.

Frequently asked questions

Our product has almost no telemetry, how do we score health?

Use the nine inputs that need no product events: payment behaviour, the seat gap, contract facts, support pattern as change, onboarding milestones, meeting cadence, reply latency, sponsor changes and survey response behaviour. Seven of them come from systems the CS team already administers. Score each as change against the account's own 90-day baseline, and set the weights from your own churn history.

What is the seat gap and why does it matter without usage data?

The seat gap is licences billed minus named users provisioned, as a percentage of licences billed. It comes from your admin console and your billing system, so it exists with zero product telemetry. The level means little, because some customers over-buy deliberately. A gap that widens three months running usually turns into a seat reduction at the next renewal.

Is an engagement-based health score any good at predicting churn?

It can be, if every input is measured as change against the account's own baseline and the weights come from a backtest rather than a workshop. Relationship signals such as a sponsor leaving or two cancelled reviews often move before behaviour does. The honest answer is that you cannot know until you rebuild the score as it stood 90 days before each of last year's churns and count the misses.

How do you score health for on-premise or air-gapped software?

Exactly as described here, because none of the nine inputs requires the customer's environment to phone home. Support pattern, meeting cadence, reply latency, sponsor changes, payment behaviour and seat provisioning are all yours. Add release adoption if you can see which version each site is running, since a customer two major versions behind is disengaging in the one way you can observe.

What is the minimum product data I should ask engineering for?

Three events: an authenticated session with account and user identifiers, one core action completed per account per day, and a user provisioned or deprovisioned event. Each is a small change at a code path that already exists, and together they turn the seat gap into a real adoption measure. Ask for three named events with a named consumer, never for analytics in general.

Can I use NPS or CSAT as the backbone of a health score?

No. Survey scores come from a self-selected minority and arrive too infrequently to show change. Use the response behaviour instead: an account that answered every survey for a year and has now ignored two is telling you something the score can read. Keep the sentiment itself as context on the record, outside the number.

How this was researched

The nine-input set, the seat gap, the weighting method and the three-event telemetry ask are our own analysis. Practitioner evidence comes from 4,978 public G2 reviews of customer success platforms, of which 459 (9.2%) mention a health score, 114 (2.3%) mention usage data, 96 (1.9%) mention product usage and 5 mention telemetry, and from 33,600 posts collected from r/CustomerSuccess, r/SaaS, r/sales and r/startups between May 2024 and September 2026, of which 106 discuss health scores. The worked weighting example uses illustrative figures, and the page states plainly that no published benchmark exists for the accuracy of a relationship-based score, which is why the backtest is the only test offered.

Next steps

Pull 90 days of the four inputs you can export today, run the churned-against-renewed comparison, and set your weights from what it shows. Start free or book a demo.

See GainTrace first in your Google results

Add as a preferred
source on Google
View markdown