Skip to content

Time in Stage

How long leads sit in each pipeline stage before moving on.

Last updated 05/27/26

What this report shows

For each pipeline stage, the median number of days a lead occupies that stage before transitioning out. Computed from the stage-change activity log plus each lead's implicit entry into "new" when first captured.

The currently-occupied stage runs an open timer against right now — long medians flag stages where leads stall.

How to read it

  • Median days in stage — half the leads moved faster than this, half slower. More robust than an average against one or two outliers.
  • Sample size — how many lead-stage residencies contributed. A small sample makes the median noisy.
  • Long bars = stuck stages. If "qualified" has a 30-day median, leads are sitting in qualified too long.

Common questions

  • Why does "new" always look short? Leads usually move out of "new" quickly after first triage. If it's long, your triage cadence has slipped.
  • Why does the currently-occupied stage look long? Because the timer is still running. A lead that's been in negotiation for 60 days adds a 60-day residency to that stage's median, even though they haven't actually exited.
  • Why does a stage say 0 days? Probably no leads have ever passed through it. Check stage configuration.

What to do if numbers look wrong

  1. Spot-check a couple of recently-converted leads in `/admin/crm/leads` — does their stage history match your expectations?
  2. Confirm stage-change events are landing in `lead_activities` — the report depends on these.
  3. If pre-C3 leads dominate the numbers, expect "current stage anchored on `created_at`" behavior for those — that may inflate older-stage medians.