Field Notes
What Your Bid Win Rate Is Telling You
Bids out, divided into bids signed. That is the entire formula for a contractor bid win rate, and I have yet to sit with a builder who kept both numbers in the same place.
The signed contracts are easy. They are in a drawer, or a folder, or the accounting software, because money moved. The bids that went out are scattered across an estimating spreadsheet, a sent folder, and a PDF on somebody's desktop with the previous client's name in the footer. The bids that were lost are usually nowhere. Nobody files a loss.
So when the question comes up the answer is a rounded fraction with no denominator under it. One in three. Maybe one in four. It feels right, and it cannot be checked, which is a bad combination for the single number that decides whether the estimating hours were worth it.
Why the fraction is a guess
The lost bids are the problem. A builder remembers the jobs he won because he built them. He drove past them for a year. The bids he lost are three weeks of work that ended in silence, and silence does not leave a record. Six months later the memory keeps the wins and drops most of the losses, and the win rate drifts upward every time it is recalled.
There is a second distortion. Bids are not the same size. A builder who won two kitchens and lost a whole house had a decent month by count and a terrible one by dollars. If the rate is kept at all, it is usually kept by count, because that is the number that flatters the estimator.
Neither of those is dishonesty. They are what happens when the only ledger is a person's memory.
The ledger that fixes it
The fix is a sheet with eight columns, kept from the day the bid goes out. This is the whole thing.
| Column | What goes in it |
|---|---|
| Date out | The day the link or the PDF left the building |
| Job | Address or the family's name, and the contract value you bid |
| Size band | Under $100K, $100K to $500K, $500K to $1M, $1M to $5M, over $5M |
| Source | Referral, repeat client, your website, an ad, a walk-up, a lead service |
| Second reader | Did anyone from your side meet the decision-maker who stayed home |
| Opened | For a link, the date and which page held them; for a PDF, blank |
| Outcome | Signed, lost, or went quiet, with the date |
| Days to decision | Outcome date minus date out |
Fill it backward for the last twelve months from your sent folder before you start filling it forward. The backfill is rough. It is still better than the fraction.
Once there are thirty rows in it, the rate you get from that sheet is the first honest one you have had. It will almost certainly be lower than the one you have been quoting.
The three cuts that say something
One overall rate tells you almost nothing. Three cuts of the same rows tell you where the bid is failing.
By source. Referral bids and cold bids are different products. A referral arrives with your reputation already in the room; the packet is confirming a decision the homeowner half made on a neighbor's porch. A bid to a stranger who found you on the web is the packet alone, doing all the work. If referrals close at three in four and everything else closes at one in six, the packet is being carried by the reputation on the first kind and doing nothing on the second. Most builders I have looked at are living on the first kind and calling the blend their win rate.
By size band. Larger jobs have more readers. A $60K bathroom is decided by the person who called you. A $1.5M home is decided at a kitchen table by two people and sometimes a parent putting money in. If your rate falls as the contract value rises, the bid is losing the people who never met you. That is a presentation problem, and it is specific.
By second reader. This is the column nobody keeps. It explains the other two. Mark whether anyone on your side ever spoke with the second decision-maker. Then compare rates. Among the bids I have followed, the ones where the second reader met nobody and got only paper are the ones that stop answering without a reason. I have seen the pattern, not a study of it, and I will keep saying so.
What a PDF cannot put in the ledger
The Opened column is where the two kinds of bid separate.
A PDF's row says "sent." That is everything it can say. Whether it was opened Friday night or the following Wednesday, whether it was forwarded, whether the reader got past the cover page, none of it comes back. When the job goes quiet, the row has a date out and a blank, and the builder fills the blank with a theory. The theory is usually price.
A bid served from your own domain fills the column itself. Opened Saturday morning. Two people on it by the look of the two sessions. The rendering page held them for four minutes, the estimate for six, and then nothing after the draw schedule. That last detail is the one that changes the follow-up call from "just checking in" to a specific question about the payment terms. The next post in this cluster, on follow-up, is about what to do with that information. Without it, the ledger has a hole in exactly the place the loss happened.
The measured version of this, across 785 general contractors we studied this summer, is that 95.8% show no client-facing proposal system or portal at all. Nineteen of every twenty are keeping the Opened column blank by default, and most are not keeping the ledger either. The study has the rest of the numbers.
Whose win it was
Once the ledger exists, a harder question follows: which of the signed rows the system earned, and which arrived on the owner's name alone.
The rule I use is discovery-only. If the homeowner typed the builder's name into Google, or came from a referral, or drove past a job sign, that job belongs to the owner. It belongs to him even when it converted through a form on the new site and a proposal built on the new system, because the reason it arrived was years of reputation, and the system just caught it. The system gets credit only for the jobs it sourced, which means jobs that arrived through a search the builder did not already own, an ad, a page that ranked for something other than his name.
That is the same rule a fractional seat is paid on, and the same rule keeps a win rate honest. The fractional CTO/CMO post covers how it is written into an agreement. For the ledger, it is one more column if you want it: sourced by the system, or sourced by the owner. Keep them apart and neither number flatters the other.
The one ledger I can show
On Cape Cod, at Custom Crafted Homes, five proposals left through the system we installed. Four signed. The $1.1M home is among the four, won on its rendered proposal; it sits inside the roughly $1.4M closed through that CRM, never added to it. The CRM also holds $6.7M in qualified pipeline actively working in it, built in 75 days. Those figures sit on the proof page with the line that always travels with them: the systems were built here; the company closed the sales.
A sample of five is small and I will not dress it up. What it is, is a ledger with the denominator in it. Five went out and I know where every one of them landed. That is what separates a win rate from a feeling about one.
Start the sheet this week
Backfill twelve months from the sent folder. Add the size band and the source to every row. Mark the second reader honestly, even where the answer is "never met him." Then cut it three ways and look at the worst cut first.
If the worst cut is cold bids to strangers, the packet is doing nothing on its own and the post that opens this cluster is the place to start. If it is the big jobs, the second reader is deciding on paper and the fix is what the bid looks like when it lands. Where the ledger shows a run of "went quiet" with no dates in the Opened column, that is the post-mortem post, and the fastest way to fill that column on the next bid is to send it as a link instead of a file. The Bid Room exists for exactly that: one bid at a time, in five business days, with the Opened column filling itself.