Most freelancers track hours. Far fewer track billable utilization, which is the share of your genuinely available working time that a client actually pays for. That number sits between the two things you already care about: how much work you can safely accept, and what your rate really earns once the unpaid parts of the week are counted.
This is a method you can run in a blank spreadsheet this afternoon. You need five columns, one month of honest time records, and a few decision rules for what to do when the number moves.
Start With Capacity, Not With a Percentage
The mistake that ruins most utilization tracking is dividing billable hours by a made-up denominator. If you divide by 160 hours a month because that is what a full-time job looks like, your percentage will always look bad and you will never learn anything from it.
Build the denominator from the bottom up instead. Work through four layers:
- Gross hours. Working days in the period times the hours you are willing to work in a day. Use the number you actually want to work, not the number you sometimes survive.
- Available hours. Gross hours minus time off, holidays, travel days and anything already committed elsewhere.
- Committed overhead. The non-client work that has to happen every week: sales calls, proposals, bookkeeping, invoicing, marketing, tooling, learning.
- Practical capacity. Available hours minus committed overhead. This is the only honest denominator, because it is the pool of hours a client could realistically buy.
Do this once per month, in advance. Capacity is a plan, not a measurement. If you build it after the fact, you will unconsciously fit it to the result you got.
How to Calculate Billable Utilization in Five Columns
Open a sheet with one row per week and these columns: Available hours, Committed overhead, Practical capacity, Planned billable, Actual billable. Everything else is derived.
Then add three calculated columns:
- Utilization on capacity = actual billable divided by practical capacity. This is your operating number and the one to manage week to week.
- Utilization on gross = actual billable divided by gross hours. This is your reality check and the number that explains your effective hourly rate.
- Planning gap = planned billable minus actual billable. This is where the lesson lives.
Track both utilization figures. The capacity number tells you whether your delivery week is working. The gross number tells you what your time is actually worth. They will be far apart, and the distance between them is your overhead cost expressed in hours.
A Worked Example: One Month of Solo Consulting
Take a solo consultant with 20 working days in the month and a 8-hour target day. Gross hours are 160. She takes one day off, so available hours are 152.
Her committed overhead per week is 6 hours of sales and proposals, 3 hours of admin and bookkeeping, and 2 hours of internal work and learning. That is 11 hours a week, or 44 for the month. Practical capacity is 152 minus 44, which is 108 hours.
She plans 96 billable hours, which is about 89 percent of practical capacity. At month end her timesheet shows 78 billable hours.
- Billable utilization on capacity: 78 divided by 108, about 72 percent.
- Utilization on gross hours: 78 divided by 160, about 49 percent.
- Planning gap: 18 hours.
Now attach money to it. At a 150 dollar rate, 78 hours bills 11,700 dollars. Spread across practical capacity that is about 108 dollars per available hour, and across gross hours about 73 dollars per hour of her working life. Nothing here is a projection or a promise. It is division, and it changes how the next proposal gets priced.
The 18-hour gap is the real output of the exercise. It is not a failure score. It is a list of things you have not looked at yet.
Where Planned Hours Actually Go Missing
Add one more column to the sheet: a leak code on every non-billable block over 30 minutes. Four or five codes are enough, and consistency matters more than precision. Common ones:
- Unbilled rework. Revisions past the agreed round. This is usually a scope-definition problem, not a client problem.
- Reschedules and no-shows. Hours held for a client and released too late to refill.
- Fragmentation. Gaps of 45 to 90 minutes between meetings that are too short for deep work.
- Internal fires. Your own tooling, hosting, invoicing disputes, hardware.
- Unpriced pre-sales. Discovery, audits and scoping given away before a contract exists.
After two months you will see that most of the gap comes from one or two codes, and usually from one or two clients. That is the point. A generic utilization percentage tells you to work harder. A coded gap tells you to change a contract clause, a calendar rule, or a deposit policy. If you want more methods in this vein, the Cursiqa blog covers the operational side of solo delivery work.
Decision Rules and a Weekly Checklist
Numbers only help if you decide in advance what they will make you do. Write these rules down before you look at next week’s result.
- Below 55 percent on capacity for two weeks with a full pipeline: this is a delivery problem. Audit the leak codes before you sell anything else.
- Below 55 percent with an empty pipeline: this is a sales problem. Move hours from delivery buffer into outbound, and put it in committed overhead so it stops being invisible.
- Above 85 percent for three weeks: you have no buffer left. Stop accepting work at the current rate. The correct responses are raising prices, lengthening lead times, or subcontracting, not absorbing more.
- One client generating more than 10 percent of their billed hours as unbilled rework for two months: re-scope, add a change-order clause, or reprice at renewal.
- Planning gap under 5 percent for three months: your plan is too safe. Raise planned billable hours.
The weekly ritual is short. Close the timers Friday afternoon, code every non-billable block over 30 minutes, update actual billable, read the two utilization figures, check the rules above, and set next week’s planned billable before you close the laptop. Fifteen minutes is enough once the sheet exists. If you would rather not build the formulas yourself, the time budget and billable utilization dashboard is built around exactly this capacity-first structure.
Where a Spreadsheet Stops Being Enough
Be honest about the limits. A sheet like this works well for one person, and reasonably well for a team of two or three with a shared weekly close.
It starts to break when you need per-person and per-project roll-ups at the same time, when someone other than you has to enter time reliably every day, when timesheets feed invoices directly and errors become billing disputes, or when you need an audit trail of who changed which entry. Manual reconciliation between a timer app and a sheet also has a break-even point: once it costs more time than the insight returns, move to a real time-tracking system and keep the capacity model as the planning layer on top.
Until then, the spreadsheet has one advantage no tool matches. You see every assumption, which means you can argue with it.
If you want the capacity math, the leak coding and the weekly close already wired together, the Time Budget and Billable Utilization Dashboard is the direct next step, and the rest of the Cursiqa shop covers the pricing and pipeline work that usually follows once you can see where your hours go.