Most B2B SaaS companies have lifecycle stages. Far fewer have lifecycle stages that anyone trusts. The symptoms are familiar: marketing reports 400 MQLs, sales recognizes 60 of them, the CRM shows 3,000 contacts frozen in a stage nobody remembers defining, and the board deck needs an asterisk on every conversion rate. This guide covers the framework we use when rebuilding lifecycle models for B2B SaaS clients — the stages, the entry and exit criteria that make them enforceable, and how the model maps onto HubSpot, Salesforce and Marketo without turning into three different funnels.
Why lifecycle stages break down
Lifecycle models rarely fail because the stage names are wrong. They fail for four operational reasons: 1. Stages are defined by opinions, not criteria. “MQL” means “marketing thinks this lead is good.” Without a written entry condition — a score threshold, a form fill, a firmographic fit — every pipeline argument becomes a debate about intent. 2. Stages only move forward. Real funnels leak. If a rep works a lead and it goes nowhere, and there is no Recycled or Disqualified path, the record either sits in “Sales Qualified” forever (inflating pipeline) or gets quietly deleted (destroying reporting). 3. Nobody owns the transitions. A stage change is a handoff. If no SLA says “sales-accepted leads must be touched within one business day,” the stage is a label, not a process. 4. The model lives in one platform but the funnel lives in three. When HubSpot lifecycle stages, Salesforce lead status and a Marketo revenue model each tell a different story, the “single funnel” is a fiction — and attribution inherits the confusion. Fix those four things and almost any set of stage names will work. Ignore them and no amount of renaming will help.
The seven stages
Here is the model. It deliberately includes two stages most teams skip — Sales Accepted and Recycled — because those are where funnels actually leak.
- New / Known — the contact exists with a valid identity (email plus minimum firmographic data). Nothing more is claimed.
- Engaged — the contact has taken a meaningful action (content, webinar, pricing page, reply). Still marketing-owned.
- Marketing Qualified (MQL) — the contact meets your written fit-plus-intent threshold. This is a claim marketing makes, and it must be falsifiable.
- Sales Accepted (SAL) — a named rep has reviewed the MQL and agreed it is worth working. This is the handshake stage. Skipping it is why marketing and sales report different funnels.
- Sales Qualified (SQL) / Opportunity — an actual qualification conversation has occurred and an opportunity is open with an amount and a stage.
- Customer — closed-won. Lifecycle does not end here (expansion, renewal), but the pre-revenue funnel does.
- Recycled / Disqualified — the explicit exit ramps. Recycled means “not now, return to nurture with a reason code.” Disqualified means “never a fit, suppress from scoring.” The reason code is mandatory; it is the only way lifecycle reporting becomes diagnostic instead of decorative.
Entry criteria, exit criteria, owner, SLA
A stage is only real if you can fill in all four columns of this table. This is the artifact to build in a working session with marketing and sales leadership — it usually takes 90 minutes and settles arguments that have run for quarters.
| Stage | Entry criteria (example) | Exits to | Owner | SLA |
|---|---|---|---|---|
| New / Known | Valid email + company; passed dedupe and junk filters | Engaged, Disqualified | Marketing ops | Enriched within 24h |
| Engaged | Scored activity above X in 30 days | MQL, Recycled | Marketing | — |
| MQL | Fit score ≥ A AND intent score ≥ B, or hand-raise form | SAL, Recycled (reason) | Marketing → routing | Routed to a named rep in < 5 min |
| SAL | Rep clicked Accept (or moved status) | SQL, Recycled (reason) | Named rep | First touch < 1 business day |
| SQL / Opportunity | Qualification call held; opp created with amount | Customer, Closed-lost | Rep / AE | Per pipeline stage |
| Customer | Closed-won | Expansion motions | CS / AM | Onboarding kickoff SLA |
| Recycled | Reason code set | Engaged (re-entry rules) | Marketing | Re-nurture enrolled within 48h |
Two design rules make this durable:
- Every backward move requires a reason code. A picklist of 6–10 reasons (“no budget,” “wrong persona,” “timing — revisit in Q3,” “bad data”) turns your Recycled stage into a feedback loop that improves scoring and targeting. Free-text notes do not aggregate; picklists do.
- Hand-raises skip the queue. A demo request or pricing inquiry should jump straight to routing regardless of score. Lifecycle models that force hot leads through nurture logic are optimizing the diagram instead of the revenue.
Mapping the model to HubSpot, Salesforce and Marketo
The framework is platform-agnostic; the implementation is not. The principle that keeps a multi-platform stack honest: one system is the source of truth for lifecycle, and the others subscribe. HubSpot. Use the native Lifecycle Stage property for the macro model and a separate Lead Status property for the sales-facing micro states (attempting, connected, recycled reasons). The most common HubSpot mistake is letting workflows and list imports write Lifecycle Stage from multiple directions — HubSpot will not move the property backward on its own, so a contact stamped Opportunity by a careless import is stuck there until someone notices. Centralize every lifecycle write into one governed set of workflows. Salesforce. Lead Status carries the pre-conversion stages; conversion maps to Contact plus Opportunity. The design decision that matters is what happens at convert: your SAL/SQL definitions must survive the Lead-to-Contact boundary, or your funnel reporting will show leads vanishing mid-funnel. A small set of validation rules (“Status cannot move to Qualified without a logged activity”) does more for data quality than any dashboard. Marketo. Model the stages in the Revenue Cycle Model if you have it; otherwise a Lifecycle Program with statuses. Marketo’s strength is the transition logic (triggers moving people between stages with full history); its risk is drift between the Marketo model and CRM status fields. Pick the direction of sync for each field and document it — bidirectional lifecycle syncing without a defined winner is how funnels fork. When HubSpot and Salesforce are both in play, lifecycle ownership is the first field-mapping decision, not an afterthought. Decide which platform’s stage field is authoritative, sync one direction, and filter the sync so junk records never cross. (We cover the mechanics in our HubSpot–Salesforce integration work.)
The metrics that tell you the model is working
You do not need thirty lifecycle reports. You need five numbers, trended monthly:
- Stage conversion rates (New→Engaged→MQL→SAL→SQL→Won) — the funnel shape.
- Stage velocity — median days in each stage. Slowing velocity in SAL is a routing or capacity problem, not a lead-quality problem.
- SAL acceptance rate — the single best marketing/sales alignment metric. Below ~70%, your MQL definition and your reps’ reality have diverged.
- Recycle reasons distribution — what the funnel is teaching you.
- Stage population anomalies — records stuck in a stage beyond 2× median velocity. This is your leak detector. If those numbers are not trustworthy, the problem is usually upstream of the lifecycle model: duplicate records splitting activity history, or stage fields being written by too many hands. Lifecycle design and data hygiene are the same project wearing two hats.
A 30-day implementation sequence
- Week 1 — Define. Run the criteria workshop. Produce the stage table above, signed by marketing and sales leadership. Agree reason codes.
- Week 2 — Audit. Snapshot the current stage distribution. Identify records in impossible states (Customers with no closed-won opp, MQLs with no activity in 180 days). Decide the remediation rule for each cohort.
- Week 3 — Build. Centralize stage-writing automation. Add validation rules. Build the routing and SLA notifications for MQL→SAL. Backfill reason-code picklists.
- Week 4 — Migrate and monitor. Apply remediation to the legacy cohorts in batches. Stand up the five metrics. Review weekly for the first month; drift appears fast. The teams that keep lifecycle models healthy treat them as operations, not documentation: someone owns the model, reviews the anomaly report, and has the authority to change criteria when the data says so. That is the difference between a funnel diagram and a funnel.
If your lifecycle stages exist but nobody trusts the numbers they produce, that’s exactly the kind of friction a free RevOps audit is built to diagnose — we’ll map where records are leaking and give you a practical next step, no obligation.
Frequently asked questions
- What are lead lifecycle stages?
- Lead lifecycle stages are the defined statuses a contact moves through from first touch to revenue — commonly New, Engaged, Marketing Qualified (MQL), Sales Accepted (SAL), Sales Qualified/Opportunity, Customer, and Recycled/Disqualified. Each stage needs written entry criteria, an owner, and an SLA to be operationally meaningful.
- What is the difference between MQL and SQL?
- An MQL (Marketing Qualified Lead) meets a written fit-and-intent threshold set by marketing — it is a claim that a lead is worth sales’ time. An SQL (Sales Qualified Lead) has been through an actual qualification conversation with a rep, typically resulting in an open opportunity. The Sales Accepted (SAL) stage between them records whether sales agreed with marketing’s claim.
- How many lifecycle stages should a B2B company have?
- Six to eight macro stages is typical. Fewer than five usually means handoffs and exits are invisible; more than nine usually means sales micro-statuses (like “attempting contact”) have been promoted into the macro model, where they add noise. Keep micro-states in a separate lead status field.
- Should lifecycle stages ever move backward?
- Yes — through explicit Recycled or Disqualified paths with mandatory reason codes. Funnels that only move forward accumulate stuck records that inflate pipeline and corrupt conversion reporting. What should be prevented is accidental backward movement from imports or competing automations.
- Which system should own lifecycle stages when we run HubSpot and Salesforce together?
- One of them — deliberately chosen — with a one-directional sync for the stage field and documented mapping. Bidirectional lifecycle syncing without a defined source of truth is the most common cause of forked funnels in two-CRM stacks.
