Pipeline by stage

A bar per pipeline stage showing how many leads are sitting there right now and what share of the pipeline that is — counted the same way the board counts them.

What it is

Not a cumulative conversion funnel. Each live card is counted once at its current stage, using the same dedupe rules the board itself uses, so the chart and the columns can never disagree. Hovering a bar gives 'Leads here now' and 'Share of pipeline'. The project pipeline falls back to distinct opportunities that ever reached each stage, because project cards do not live on the sales board.

Also called: sales funnel · how many deals in each stage · stage counts · share of pipeline

See it
Pipeline by stage
New lead 2
Marlin Hoover
$54k
Delia Yoder
$58k
Contacted 3
Sutter Kline
$39k
Ronan Petsch
$57k
Ivy Brubaker
$35k
Estimate 2
Ivy Brubaker
$59k
Gideon Alt
$35k
Sold 3
Marlin Hoover
$46k
Delia Yoder
$45k
The 'Pipeline by Stage' card: labelled progress bars per stage with count and % on the right, hover tooltip showing 'Leads here now'. FunnelSection in AnalyticsView.tsx. Sample data — no customer information appears here.
How it works
  1. 1Opportunities are the canonical cards; each is bumped into its current stage bucket.
  2. 2A synthetic lead only counts if it has no SmartBuild job, is not already covered by an opportunity, is not the held imported backlog, and is not in a non-lead bucket (_team / _supplier / _contractor).
  3. 3Demo rows and demo-prefixed ids are dropped before counting.
  4. 4Share of pipeline = that stage's count ÷ total cards on the board.
Why we built it

The route comment explains the switch away from history: counting from the event log 'made history-based counts wrong' because of 'pre-capture moves + mixed opportunity-id conventions', so the analytics now 'MATCH THE BOARD exactly'. It also carries an ACADEMY DEMO GUARD: the seeded demo lead 'passes every skip below and would bump into the org's stage funnel for as long as a paused tour leaves it on the board', so demo rows are filtered on the read side too.

The problem
  • Analytics and the pipeline board disagreed about how many deals existed.
  • Imported backlog leads with no owner inflated the New Lead column.
  • A paused Academy tour left a fake lead sitting in the org's real funnel counts.
Sound familiar?
What you get
The chart is auditable against the board, card for card.
Traffic jams are visible at a glance — the stage with the tallest bar is where time is going.
Demo and training data never contaminates a real report.

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →