River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Lifecycle Stage Definitions Template

Four tests on every stage you already have, then exit criteria rewritten as evidence your buyer produced rather than work a rep logged.

Free download  ·  No account needed

StageDiscovery CompleteTurns on the rep logging call notes
Median dwell11 hA field update, not a stage
Forward conversion98%Nothing is filtered here
Quarterly spread2 ptsStable, and carrying no information
VerdictMerge into QualifiedOne boundary, not two stages

Everything published on lifecycle stages tells you to pick the stages, write entry and exit criteria for each, and get sign-off. That is the easy half and it is thoroughly covered. The hard half is finding out which of the stages already in your pipeline mean anything at all. Your stage history answers that, and it answers it with numbers rather than opinions. This pack runs the diagnosis first, then rewrites the definitions from whatever survives it.

Four tests decide it. How long records really sit in a stage, because a median dwell of eleven hours is a field update rather than a stage. Whether anything is ever filtered out, because a stage converting at ninety-eight percent has no boundary in it. What share of won deals skipped the stage entirely. And whether the conversion rate holds still across quarters, because a stage swinging twenty-four points between quarters is measuring your pipeline reviews rather than your buyer.

Then every exit criterion gets rewritten as something the buyer can be seen doing. Proposal Sent is the canonical failure: it turns on a rep attaching a document, so the stage advances on outbound activity and fills with deals nobody has answered. The register counts how many of your stages work that way, which is usually most of them. The definitions land beside a CRM field dictionary and your metric definitions, so one vocabulary survives into the reports.

Nine stages in, seven out, and the two that were never stages

Every verdict on the register is derived from the two sheets beside it. Nothing was decided in a workshop.

Stage Register

Illustrative rows for a fictional workforce scheduling company, Ostwick. 1,240 closed deals over four quarters.

#StageWhat it turns onObservable byDwellFwdSkippedVerdict
1QualifiedRep marks it after discoveryRep only4 d71%3%Keep, rewrite the exit
2Discovery CompleteRep logs the call notesRep only11 h98%4%Merge into Qualified
3Demo ScheduledBuyer accepts a diary invitationBuyer evidenced6 d84%7%Keep as written
4Demo DeliveredRep marks it after the meetingRep only2 d66%9%Keep, rewrite the exit
5Proposal SentRep attaches the documentRep only14 d52%2%Rewrite: buyer answers on scope
6Verbal CommitmentRep believes the deal is wonRep only9 d61%31%Delete
7Legal ReviewBuyer's counsel returns commentsBuyer evidenced21 d89%12%Strongest stage on the sheet
8ProcurementBuyer raises a PO or names a contactBuyer evidenced17 d93%38%Keep, make it conditional
9Closed WonCountersigned contractBuyer evidencedn/an/a0%Keep as written

Five of nine stages turn on nothing but an action a rep took. Verbal Commitment goes because 31% of winners never entered it. Procurement stays but only applies above 40 seats, so it becomes conditional rather than a hole in everyone else's funnel.

Conversion by Stage

Deals entering each stage in the four quarters to 30 Sep. The spread column, not the rate, decides whether a stage can be forecast from.

StageEnteredAdvancedRateQ1Q2Q3Q4SpreadForecast input
1 Qualified3184226171%69%73%70%72%4 ptsYes
2 Discovery Complete2261221698%97%99%98%98%2 ptsNo. Filters nothing.
3 Demo Scheduled2216186184%82%86%83%85%4 ptsYes
4 Demo Delivered1861122866%63%68%65%68%5 ptsYes
5 Proposal Sent122863952%44%58%49%57%14 ptsMarginal
6 Verbal Commitment63939061%71%47%64%62%24 ptsNo. Measures optimism.
7 Legal Review39034789%88%90%87%91%4 ptsYes
8 Procurement21419993%92%94%91%95%4 ptsYes, 40 seats up
End to end31842367.4%Median path 84 days  

Proposal Sent swings 14 points and the swing tracks who was running pipeline review that quarter, which is why it reads Marginal rather than Yes. Procurement's smaller base is the conditional population, not a data gap.

Stage History Audit

13,284 stage change events in the same four quarters. About 19% of them were not buyer events at all.

PatternHow it shows upCountShareWhat it corruptsVerdict
Bulk stage update31 or more deals changing stage at an identical timestamp by one user147011%Every conversion rate and dwell median in that quarterExclude and annotate
ImportChange sourced to an import rather than a user action6125%Dwell time, because the entered-stage date is the import dateExclude
Stage skipped forwardDeal jumps two or more stages in one change8917%The skipped stage's rate, computed on a smaller base than the diagram impliesKeep, read as skip rate
Change by a non-ownerOwner field and the changing user disagree3482.7%Pipeline review cleanups appear as deal progressFlag
Backward moveAn earlier stage recorded after a later one2031.6%Undercounted by construction. See the row below.Keep, investigate
Closed Lost then reopenedClosed Lost followed by a return to an open stage1271%Win rate, computed twice on one dealDeduplicate on deal id
Same-day create and winCreated and Closed Won inside 24 hours, no intermediate stage84n/aEnd to end rate, and the median path looks shorterFlag. Mostly renewals.
Regression never recordedNot visible in the export at allunknownunknownEvery stage count, which only ever risesStructural. Design around it.

The last row is the one that changes the method. Automatic lifecycle stage updates only move a record forward, so no automated tool ever writes a regression and a disqualified lead that returns reads as one continuous journey.

What the pack does that a criteria worksheet does not

01

Runs the diagnosis before the definitions

Four tests on every stage you already have: real dwell, forward conversion, skip rate among won deals, and quarterly spread. The register carries a verdict per stage, so the rewrite starts from seven survivors rather than a blank nine-column grid.

02

Counts the stages that turn on rep activity

Every stage gets an observable-by value with two options, buyer evidenced or rep only. The headline number is how many of yours are rep only, and in the worked example it is five of nine.

03

Separates the rate from its stability

A conversion rate is only a forecast input if it holds still. Conversion by Stage carries the rate and its spread across four quarters, so a stage running 71% one quarter and 47% the next is disqualified on the spot.

04

Strips the events that were never buyer events

Bulk updates at an identical timestamp, import-sourced changes, non-owner edits and reopened losses all get counted and excluded before a single rate is quoted. In the worked example that is about 19% of all stage change events.

05

Finds the stuck deals your platform report cannot see

A separate sheet computes dwell for deals still sitting in a stage, ranks them by multiple of the stage's own 75th percentile, and names the last thing the buyer actually did. Eight deals, six of them dead, 542,000 of stated pipeline.

06

Writes the policy that keeps the definitions true

Who may move a deal, what evidence gets attached, what happens on a skip or a backward move, and when a stuck deal gets closed. Definitions decay without it, and the decay is what produced the nine stages in the first place.

How the pack runs

  1. 1

    Send the export

    The deal or opportunity export with stage history: dates entered and exited each stage, owner, amount, close date and outcome. Four quarters is ideal, two is workable.

  2. 2

    Audit the history

    River separates real buyer events from bulk updates, imports and non-owner edits, then quantifies what each pattern corrupts before any rate gets computed from it.

  3. 3

    Test every stage

    Dwell, forward conversion, skip rate among won deals and quarterly spread, one row per stage, ending in a keep, rewrite, merge or delete verdict.

  4. 4

    Rewrite and publish

    Each surviving stage gets an exit criterion the buyer can be seen meeting, plus the change policy and the stuck deal report that keep the register honest.

Frequently asked questions

Is this not just entry and exit criteria with extra steps?

The criteria are the last thing it writes. Most pipelines already have criteria and still have nine stages, two of which nothing passes through. The diagnosis is what tells you which stages to write criteria for, and it usually removes two before anything gets written.

What actually counts as buyer evidence?

Something in the record that the buyer caused. Accepting a diary invitation, returning a proposal with questions on scope, naming a procurement contact, raising a purchase order, having counsel send comments. Attaching a document, logging a call and marking a stage complete are all things a rep did. Post-sale, the same problem is signals that fire only after the customer decided.

Our pipeline is HubSpot's default. Does that change anything?

It sharpens the problem. The default pipeline ships seven deal stages carrying probabilities of 20, 40, 60, 80 and 90 percent, and the weighted amount in board view multiplies each stage total by them. Those are round numbers from a vendor, so replacing them with your measured rates is the whole exercise.

Our average time in stage looks fine. Why the separate stuck report?

Because the average cannot see the stuck deals. HubSpot's Latest time in stage property carries no value while a record is still in that stage, so any figure built on it is computed only over deals that already left. In the worked example none of the eight worst offenders appear in it.

Half our stage history is bulk updates. Is the data usable?

Yes, once the patterns are named and excluded rather than averaged in. The audit sheet counts each one and says what it corrupts, so the rates you publish come from a clean denominator. If the wider database is the problem, run a CRM audit diagnostic first. Merges corrupt it too, which survivorship rules prevent.

How many stages should we end up with?

However many pass the four tests, which is almost always fewer than you have. The worked example goes from nine to seven: one merges because nothing was filtered by it, one is deleted because 31% of won deals routed around it, and one becomes conditional on deal size.

We run two CRMs and they report different pipeline. Same fix?

Stage definitions are one of the four reasons those numbers disagree, so start here and then reconcile record by record with a HubSpot and Salesforce reconciliation. Aligning definitions across systems is pointless while one of them is still advancing deals on rep activity.

Find out which of your stages mean nothing

Send four quarters of stage history and get the register, the conversion sheet and the verdicts back.

Get the template