ImprovementJuly 16, 2026

The lifecycle dashboard learned to draw

The dashboard had the numbers; now it has the picture.

KPI tiles carry meters. Win rate and bid hit rate fill a slim gauge under the number, and the win-rate change vs last year is a colored delta — green up, red down. Avg cycle gets the treatment it deserved: a meter with a tick at your target, and a fill that turns red the moment the average crosses it. 38 days against a 30-day target now looks like a problem.

Contracted value by stage. A new panel under the execution KPIs draws one bar per stage — Setup, Field, Closeout, Warranty — on a shared dollar scale, so you can see at a glance that the money is concentrated in Field and exactly how much rides each stage. Every row links to that stage's pipeline view.

The pursuit funnel draws real columns now. It turns out the funnel's bars have been invisible since it shipped — two styling bugs compounded (an undefined color variable and a height that never resolved), so the panel showed counts floating over nothing. The columns render properly now, stepping down Lead → Estimating → Proposal → Award, with Won in green and Lost receded to gray so the period's outcomes read at a glance.

Smaller sharpenings:

  • Bottlenecks show severity — the red / amber / gray dot the data always had but the panel never drew.
  • Open changes shows its dollar exposure, and billing pipeline shows how many pay apps are out — instead of both restating their stage numbers.
  • The same undefined-variable bug was quietly blanking backgrounds and rules in a handful of other spots (pipeline drag-over highlight, roster group headers, section rules); all fixed to the real tokens.

Open it in the app →

Want in?

STrOp is onboarding California specialty contractors in small batches — bid through warranty in a single pipeline.

Request beta access →