Lead lifecycle stages
Each campaign owns an ordered list of lead stages (leadStatuses on the campaign). New campaigns inherit the default pipeline below unless your admin customized the campaign type.
Default stage pipeline
Section titled “Default stage pipeline”| Order | Stage | Category | Typical meaning |
|---|---|---|---|
| 0 | New | NEW | Imported or created; not yet worked |
| 1 | Intro | ACTIVE | First contact or introduction visit |
| 2 | Demo | ACTIVE | Product demo completed or scheduled |
| 3 | Trial | ACTIVE | Trial or pilot in progress |
| 4 | Follow-up | ACTIVE | Active pursuit after initial touch |
| 5 | Negotiation | ACTIVE | Terms or pricing in discussion |
| 6 | Deployment | OUTCOME | Implementation in progress |
| 7 | Go-live support | OUTCOME | Post-win onboarding support |
| 8 | Won | OUTCOME | Closed won |
| 9 | Lost | OUTCOME | Closed lost — capture reason on the visit |
Categories (NEW, ACTIVE, OUTCOME) let dashboards and reports aggregate across campaigns even when stage labels differ.
How stages change
Section titled “How stages change”- Reps and managers update stage when logging or editing a visit (visit form includes stage when the campaign type defines it).
- Managers can also change stage from the Leads grid row actions.
- Reports tabs (Visits, Leads & MTD, Conversion, Outcomes) read the current stage and visit history — no separate spreadsheet update.
Custom stages
Section titled “Custom stages”Campaign types can define additional stages or rename labels. Locked keys (existing pipeline keys) keep historical visit data meaningful. See Define a campaign type.
Source: default list in src/lib/form-schemas.ts (DEFAULT_CAMPAIGN_LEAD_STATUSES).