What winning a project really costs: your proposals, in hours
A won project does not just cost the hours you deliver. It carries the proposal that won it and, through your close rate, the proposals that lost. At 4 hours per pitch and one yes in four, every win starts 16 hours behind, and a 20 hour project billed at 90 pays 50 for every hour it really took. One multiplication puts a number on it.
Not just the hours you deliver. A won project also carries the proposal that won it, and, through your close rate, its share of the proposals that lost. Say a proposal takes 4 hours and you win one pitch in four. Then 16 hours of selling ride on every won project before its first billed hour, and a 20 hour project billed at 90 pays 1,800 across 36 real hours: 50 per hour, on a floor of 80. The formula is one multiplication: sales hours per win = hours per proposal × pitches per yes.
Where do the hours go on a proposal?
A proposal is rarely one sitting. It is an hour on the first call, working out what the client actually needs. Two hours scoping and writing the estimate: reading their material, breaking the work down, putting numbers on it. Half an hour of follow-up messages over the next two weeks. Half an hour of admin around it all.
That is the 4 hours this guide computes with. Yours may be two, or eight if your field expects a concept with the pitch. The steps are the same shape either way, and none of them appears on any invoice. They are non-billable hours by definition, which is exactly why they are so easy to lose track of.
Why does one yes carry the pitches that lost?
Because only won projects bring in money. The hours you spent on proposals that lost do not disappear from your year; they just have nothing of their own to be paid from. Spread them where the revenue is and every win carries its own pitch plus its share of the lost ones. That share is set by your close rate.
At 4 hours per proposal, on a 20 hour project billed at 90 with a floor of 80:
| Close rate | Sales hours per win | Real hours | Effective rate |
|---|---|---|---|
| 1 yes in 2 | 8 | 28 | 64 |
| 1 yes in 3 | 12 | 32 | 56 |
| 1 yes in 4 | 16 | 36 | 50 |
| 1 yes in 5 | 20 | 40 | 45 |
| Repeat client, no pitch | 0 | 20 | 90 |
Every invoice in that table says 90, and every invoice is correct. Nothing about the project went wrong. The gap is entirely the hours it took to get to yes, and those hours are invisible unless you write them down.
That is also why a pitching-heavy quarter feels thin even when the projects in it ran clean. The projects were fine. The selling around them was not free.
What moves the number?
The formula has two inputs, and they respond to different things.
Hours per proposal comes down with discipline about what a lead gets for free. A half-hour qualifying call before any writing is the classic move, and it is cheap insurance: the call costs half an hour, the written estimate costs an evening. Keep the first written version short, an approach and a range rather than a specced document, until the client shows real intent. If your field expects detailed speccing, that speccing can be the first paid phase of the project instead of the free part of the pitch.
Pitches per yes responds to which leads you write for at all. A referral from a happy client and a cold tender do not close at the same rate, and an evening spent on the second is an evening not spent on the first. This is the same portfolio question as which clients are profitable, one step earlier: which leads are worth an evening before they are clients at all.
Halve either input and the sales cost per win halves. Halve the proposal from 4 hours to 2 at one yes in four, and every win carries 8 hours instead of 16; the 20 hour project pays 1,800 across 28 hours, which is 64. Still under an 80 floor, but a different month.
The client you already have needs no proposal
The last row of the table is the one worth staring at. The same 20 hours for a repeat client pay the full 90, because there was nothing to win. No call to schedule, no estimate to write, no two weeks of follow-up.
That gap, 90 against 50 in this example, is what the second project is worth before a word of it is typed. It is also the honest argument for taking care of existing clients over chasing new logos: a new client pays for a pitch and then an onboarding before the first ordinary hour, and a repeat client pays for neither. The follow-up question the pitch decides is not just “do we win it” but “does this client have a second project in them”.
What to do before the next request for a proposal lands
Log proposal hours where the revenue will be. Create the client when the conversation starts, and log the call, the writing and the follow-up on that client as non-billable time. Filed under a general admin bucket they get spread across everything until nobody can see them. Logged on the client, they are sitting in exactly the right place when the project lands.
Count your last ten pitches. How many became projects? That is your close rate, and it turns the formula from a feeling into a number. Ten is enough to start; update it as you go.
Decide what a lead gets for free. A half-hour call, then a short estimate, then detail only with intent. Decide it in advance, in one sentence, the same way you would decide a minimum for small jobs, because inventing the rule during a live conversation always ends in an evening of free work.
Put the number next to your rate. Sales hours per win is overhead your rate has to carry, like every other non-billable hour. If your close rate is one in four and your proposals cost 4 hours, a project has to be big enough to absorb 16 hours of selling, or the win is a loss with a signature on it.
Where CronLoom comes in
CronLoom has no CRM and no lead pipeline, and it does not write proposals. What it has is the division that makes this visible.
Create the client at first contact and log pitch hours on them, marked non-billable. If they sign, those hours are already on the right client, and the client’s effective rate in analytics divides billed revenue by every hour they actually cost, the pitch included, drawn against the floor you set. If they never sign, the client’s record is the price of the pitch, which is worth knowing too: three lost pitches for the same kind of lead is a pattern, not bad luck.
The effective hourly rate calculator does the single division by hand: what a project billed, over its hours plus the pitch hours it carried. If you want the number running per client while the hours happen, join the waiting list.
Count your last ten
Open your sent folder and count the last ten proposals. Note how long a typical one took, all in: call, writing, follow-up. Multiply by ten, divide by the number that became projects.
That is what one yes costs you in hours right now. Divide your next win by it.
Questions, answered straight
Frequently asked questions
- How many hours does a freelance proposal really take?
- Count everything, not just the writing: the first call, scoping the work, writing the estimate, the follow-up messages, and the filing afterwards. The example in this guide uses 4 hours because those steps commonly add up to an afternoon, but the honest answer is to time your next three proposals. The size of the number matters less than what you multiply it by, which is the pitches it takes you to get one yes.
- What is a good close rate for freelance proposals?
- There is no universal benchmark worth trusting, because a warm referral and a cold RFP are different games. The number that matters is yours: count your last ten proposals and how many became projects. At 4 hours per proposal, the difference between one yes in two and one yes in five is 8 versus 20 hours of unpaid selling on every won project, so knowing your own rate changes what a project has to bill.
- Should I charge for proposals or estimates?
- Paid discovery exists in some fields, and for large scoping work it is fair. The more common fix is to shrink the free part: qualify on a half-hour call before you write anything, keep the written estimate short until the client shows real intent, and treat detailed speccing as the first paid phase of the project rather than part of the pitch.
Put numbers to it
Every hour, accounted for.
You set a floor rate; CronLoom flags the clients and fixed bids that slip below it, and projects where the month lands.
Join the waiting listNo credit card · later flat €/$9