Skip to content
Churnora

How it works

Three steps, from a CSV to a save list

You bring the customer data. A behavioral ML model scores every account in seconds. You work the saves from a ranked list with factors and a drafted play. The language model enters only at the last step.

The three steps

Data in. Saves out.

Import takes minutes. Scoring finishes before the page loads. Your CS team has a ranked list, factors, and a drafted email for the riskiest accounts the same day.
01

Bring your customer data

Upload a CSV export from your billing tool or product analytics platform. Column names are matched loosely, so most exports work without renaming a header. Or load the one-click sample book of 48 believable accounts and see the scorer immediately.

The columns that matter: company, plan, monthly revenue, signup date, days since last sign-in, sign-ins for each of the last two 30-day windows, features used, seats paid and active, support tickets, and failed payments over 90 days.

From your CSV

companyHarrowgate Systems
mrr$4,200
last_login_days31
logins_30 / prev3 / 14
payment_failures_902

Loose header matching

02

The model scores every account

Scoring runs in-process the moment the import finishes: no queue, no async job, no waiting for a result. The same logistic regression model runs for every account, producing a churn probability between 0 and 1. The same inputs always produce the same score.

The model is code, not a prompt. It computes eight behavioral features from your data, standardizes them, multiplies by the fitted weights, and passes the result through a sigmoid. Deterministic and inspectable.

Scored and ranked

Harrowgate Systems90%
Merrow Health81%
Corvid Analytics17%
Northgate Robotics2%
03

Work the saves

The ranked list puts the riskiest account first. Click any at-risk account to see the top behavioral factors that pushed the score, each tied to a concrete number from your data. A language model translates those factors into a drafted save email, a retention offer suggestion, and call notes.

On Growth, the weekly saves list surfaces only the accounts that crossed into at-risk since the last scoring run, so your CS team knows exactly what is new. On Scale, scores and factors are available via API.

Harrowgate Systems

90% at-risk

Sign-in recency

Last sign-in 31 days ago

raises risk

Usage trend

Sign-ins down 79% month over month

raises risk

Payment health

2 failed payments in 90 days

raises risk

Under the hood

Five stages, one language model call

Import, featurize, score, and rank are all code. The language model enters only at the explain step, after the score is already final. It translates; it does not predict.

Import

CSV uploaded, headers matched loosely

Featurize

Eight behavioral features computed per account

Score

Logistic model: standardize, weight, sigmoid

Rank

Sorted by risk, then by revenue at risk

ExplainLLM

Language model translates top factors, drafts play

Scoring runs in-process

No queue, no async job, no polling for a result. The logistic model scores the whole book in the same request that reads the CSV. By the time the confirmation screen appears, every account has a score and a band.

Deterministic, not probabilistic

The same inputs always produce the same score. There is no randomness in the scorer: no temperature, no sampling, no prompt that drifts. The ML model is fitted code; the language model only touches the explanation step.

Every factor is checkable

Every factor shown to a human traces to a number in that customer's own row. "Last sign-in 31 days ago" is the actual value in the imported data, not an inference the model made. You can open the CSV and verify it.

See it on your own data

Free for up to 200 customers a month. Score, rank, factors, and a drafted save email, no card required.