DEV Community

Tim Carter
Tim Carter

Posted on • Originally published at toolbagcrm.com

The 5 metrics we surface in our contractor CRM dashboard (and why)

We spent way too long debating what should go on the ToolbagCRM dashboard. Not because the data was hard to surface, but because we had to decide what not to show.

Contractors don't need thirty KPIs. Most of them track zero. The ones who try to track ten get buried in spreadsheets, get bored by month three, and quit. The ones who only watch revenue don't actually know if they're making money.

Revenue feels good. It doesn't tell you whether you made any.

So we picked five. Here's what they are, and the reasoning behind each one.

1. Gross margin per job

Not revenue. Margin. A $12,000 re-roof sounds great until you back out materials, dump fees, crew wages, and a slice of the truck. What's left over is the only number that pays you.

We surface this per job, not per month, because the patterns are in the job-level data. Maybe your small service calls run at 12% margin and your install work runs at 40%. Now you know where the money lives. Most owners are surprised at the answer.

The data was already in the system (quote, job costs, invoice), we just had to do the arithmetic. Simple subtraction, but nobody was doing it by hand.

2. Quote close rate

Quotes sent. Quotes that turned into work. Divide the second by the first.

A 60% close rate is healthy. 80% means you're probably underpricing. 30% means your follow-up is broken, or your pricing is too high, or both. Usually it's the follow-up. People hear the number, ask for time to think, and never hear from you again because nobody called them back.

This one was interesting to build because we had to define what "sent" means. Is it when you created the quote in the system? When you emailed it? When the customer opened it? We went with: when you marked it as sent. Simple, and it puts the accountability on the contractor to actually send the thing.

3. Average ticket size

Revenue divided by job count. That's it.

It's the easiest number to move and the one nobody watches. A trade doing 40 jobs a month at $400 each makes $16k. Same 40 jobs at $550 each makes $22k. Same crew, same trucks, same hours. The difference is one extra upsell per visit, or a price increase you've been putting off.

We show this as a monthly trend line. When the number slides, it usually means you're quoting last year's prices on this year's materials.

4. Repeat and referral percentage

Of the jobs booked this month, how many came from somebody you've worked for before, or somebody they sent your way?

This is the one I'm most proud of, honestly. It required us to build a lead source tracker into the booking flow. When you book a job, we ask one question: how'd you find us? The answer gets tagged. At month-end, the dashboard shows the split: paid ads, repeat, referral, walk-in.

Paid ads buy the first job. Repeats and referrals buy the next ten. If your repeat-and-referral percentage is under a third, your retention is bleeding somewhere. Over half, and you've built something that compounds.

5. Cash on hand, in weeks of payroll

Not your bank balance in dollars. Your bank balance divided by what it costs to keep the lights on for a week.

Two weeks is a panic number. Four is uncomfortable. Eight is healthy. Twelve means you can take a slow January without laying anyone off.

This one is hard to compute from CRM data alone, since we don't have full payroll info. We show what we can (outstanding invoices, upcoming scheduled revenue, recent payment velocity) and let the owner plug in their weekly burn number once. After that, the math runs automatically.

What we left off

Website traffic. Social followers. Truck count. None of those tell you whether the business is healthy. They feel like progress because the line goes up. They don't pay you.

The whole dashboard is five numbers, updated monthly. That's the design constraint we set for ourselves. If you only ever knew those five, you'd be running tighter than most of your competition.

Originally published at toolbagcrm.com

Top comments (0)