Why agency time tracking data is usually garbage — and what it costs you
Time tracking exists to answer two questions: what does delivery cost, and which clients make money. Most agency time data can't answer either, and the agency is making pricing and hiring decisions on it anyway.
Agency time tracking is the practice of recording hours against clients and projects so you can calculate delivery cost, utilization and client-level profitability. It fails in most agencies because hours are entered retrospectively in round numbers, non-billable work is unclassified, and nobody separates delivery from overhead — which means the resulting cost per client is wrong in a direction nobody can measure.
What is agency time tracking for?
It is not a productivity surveillance tool, and treating it as one is the fastest way to make the data useless.
In an agency, hours are the only mechanism you have for converting payroll — your single largest cost — into a cost per client. Everything downstream depends on it:
- Client profitability. Fee income minus delivery cost, per account. Delivery cost is hours × loaded rate. No hours, no answer.
- Pricing. What a retainer should cost is a function of what it actually takes to deliver. Without hours you are pricing on last year's number plus a bit.
- Capacity and hiring. Whether you need another designer is a question about committed hours against available hours.
- Scope conversations. "This engagement now takes 40% more hours than we scoped" is a conversation you can have. "It feels like a lot of work" is not.
When people say time tracking doesn't matter because they bill on value or on retainer, they're conflating how you charge with how you measure cost. You can bill any way you like. You still need to know what it cost you.
Why does agency time tracking data break?
1. Friday-afternoon reconstruction
Hours entered from memory at the end of the week are a story about the week, not a record of it. People remember the big blocks and forget the twenty minutes here and the interrupted afternoon there. The error isn't random either — it systematically under-reports the fragmented, context-switching work, which is exactly the work that makes an account unprofitable.
2. Everything is round
A timesheet made entirely of 1s, 2s and 4s is a budget, not a measurement. It usually means someone is filling the day to eight hours from the top down rather than recording what happened.
3. Non-billable work is invisible
The status call, the revision round nobody scoped, the "quick favour," the onboarding that took three weeks. If there's no code for it, it either gets dropped or gets absorbed into a billable client — and an absorbed cost is worse than a missing one, because now it's wrong rather than just incomplete.
4. Delivery and overhead sit in one bucket
If new business, finance and internal marketing land in the same pool as client delivery, your cost of delivery is inflated and your overhead is invisible. You cannot compute a gross margin from this, and any client profitability number derived from it is guesswork wearing a decimal point.
5. The loaded rate is made up
Plenty of agencies multiply hours by a salary-derived hourly figure and stop there. That understates cost, often by 25–40%, because it ignores employer taxes, benefits, software, and the fact that nobody is available 2,080 hours a year.
A useful loaded cost is roughly: salary plus employer taxes plus benefits plus per-head software and equipment, divided by realistically available hours after holiday, sick leave, training and internal time. For most agencies, available hours land somewhere near 1,600–1,750 a year, not 2,080.
What does bad time data actually cost?
The failure is quiet, which is what makes it expensive. Nothing breaks. You simply make a series of decisions with numbers that are wrong by an unknown amount in an unknown direction.
| Client | Fee revenue | Hours | Delivery cost | Margin |
|---|---|---|---|---|
| Northwind Labs | 186,000 | 612 | 91,800 | 50.6% |
| Beacon Health | 240,000 | 948 | 142,200 | 40.8% |
| Halcyon Retail | 144,000 | 1,019 | 152,850 | (6.1%) |
| Ardent Software | 312,000 | 1,104 | 165,600 | 46.9% |
Halcyon is the second-smallest account by fee and the second-largest by hours. It is losing money. Nobody in the agency knows, because the hours that would have revealed it were entered on Fridays in round numbers against a project code that also absorbed two other things.
In practice the underwater account is rarely the one people would guess. It is usually the oldest logo — priced years ago, scoped by accretion, never repapered, and defended internally because it has been there forever.
The minimum standard that actually works
You do not need a perfect system. You need one that is good enough to trust at the client level, which is a much lower bar than most agencies assume.
- Entered daily, or close to it. Same-day capture beats a sophisticated taxonomy filled in on Friday. Every additional day of delay degrades accuracy measurably.
- Client and project on every entry, always. One required field, no exceptions, no "general" bucket that quietly grows to 20% of the agency.
- A billable flag and a real non-billable taxonomy. Five to eight internal codes — new business, internal marketing, admin, training, PTO, management. Enough to see where the time goes, few enough that people use them.
- Delivery separated from overhead. A person's time can land in either. This is the split that makes gross margin computable.
- Loaded cost, reviewed annually. Fully burdened, over realistically available hours.
- Reported back monthly. If nobody ever sees a number derived from the timesheets, the timesheets rot. Showing the team margin by client is the single most effective way to improve data quality, because it makes the entry obviously consequential.
Tooling matters less than people think. Harvest, Toggl, Float, Runn, ClickUp and a dozen others will all do this. The failure is almost never the software.
Common questions
Do agencies on retainer or value-based pricing still need to track time?−
Yes, and arguably more. How you charge and how you measure cost are separate questions. Value pricing sets what the client pays; time tracking tells you what it cost to deliver, which is the only way to know whether the price was right. Agencies that abandon time tracking when they move to value pricing lose the ability to detect a decaying account until it's badly decayed.
What's a good utilization rate for an agency?+
Billable utilization for delivery staff commonly sits in the 60–75% range, and pushing much above that tends to trade against quality, training and new business. The more useful number is utilization measured against realistically available hours rather than a notional 40-hour week, because the notional version flatters everyone equally and tells you nothing.
How do I get people to actually fill in timesheets?+
Two things move the needle far more than reminders. Make entry take under two minutes a day, which usually means fewer codes rather than more. And show the team what the data produces — margin by client, where the hours went, which accounts are under pressure. People fill in timesheets that visibly matter and abandon ones that disappear into a void.
Can you calculate client profitability without time tracking?+
Only by allocating payroll on a proxy, usually headcount or revenue share. It's directionally better than nothing and it's how most agencies without hours data get a first answer. But allocating by revenue share is circular — it assumes the expensive clients are the big ones, which is precisely the assumption you're trying to test.
We turn your hours into margin by client
We pull hours from your PM tool, map them to loaded cost, and put margin by client on one page every month alongside a closed set of books. Send us three months of statements and we'll show you what's actually going on. Free, once.
Get a free books reviewGeneral information for agency owners and operators, not accounting advice. Figures shown are illustrative.