The estimates were written. Nobody was chasing them.
a $5M+ roofing company in Arizona
What was true
The company was writing more estimates than it ever had and closing a smaller share of them. Chasing lived in people's heads, and heads get busy in storm season. A quote went out, went quiet, and became somebody else's roof.
We pulled every open estimate out of the CRM and counted them by hand against the follow-up tasks attached to each one.
What we built
A follow-up system inside the CRM the company already ran. Every estimate that goes quiet gets worked on a schedule the owner approved, in the company's own voice. Nothing new to buy, no new logins, nothing for the office to learn.
Alongside it: every new lead gets an answer in seconds instead of whenever somebody got off a roof, and the review request fires on its own when a residential job closes.
What changed
The pile has a number, an age, and an owner now. It is worked every day by software instead of remembered by a person who is on a roof.
Reviews went from 138 to 159 over the engagement and the 4.9 rating held the whole way.
Read this with it: That figure is the size of the pile we found, counted once from the company's own export. It is not revenue recovered. Recovered dollars get published when they are measured against the baseline we froze, and not before. Worth saying plainly: the owner and one partner personally sourced 71% of that month's pipeline, so any future claim about signed work has to account for them and not for us.