PeakKR

agency time tracking

Why Agency Time Tracking Data Lies (And How to Fix It)

Ask any agency owner if their time tracking data is accurate and you'll get a shrug. Ask them if they use it to price retainers, decide which clients to fire, and calculate whether the new SEO package makes money — and they'll say yes without hesitation.

That gap is expensive. Most agency time tracking data is wrong by 20-30%, and the errors aren't random. They lean in a consistent direction: they make you look more profitable than you are, right up until the month your cash flow disagrees.

The four ways timesheets lie

1. Retroactive logging is memory, not measurement

If your team fills in timesheets on Friday at 4:45pm, you are not collecting data. You are collecting a reconstruction. And reconstructions are tidy — 2 hours here, 1 hour there, everything in neat half-hour blocks that add up suspiciously close to 40.

Real work doesn't look like that. A technical SEO audit for a mid-size ecommerce client is 25 minutes in Screaming Frog, a 12-minute Slack detour about a different client's Core Web Vitals, 40 minutes writing findings, an unscheduled call with the dev lead, then 15 minutes re-checking a redirect chain you'd already checked.

When someone reconstructs that on Friday, the Slack detour vanishes. The unscheduled call gets attributed to the client it was about rather than the client it was billed to. The re-check disappears entirely because it felt like a mistake, and nobody logs their mistakes.

2. Rounding is always in the same direction

A 22-minute task becomes "half an hour." A 38-minute task becomes "half an hour." Sounds like it evens out — it doesn't, because people round down on things they feel took too long and up on things they feel were quick wins. The bias tracks self-perception, not the clock.

Across a 10-person team logging 8 entries a day, a 6-minute average rounding error is 4 hours a day of phantom or missing time. Over a month that's roughly 80 hours — two full weeks of one person, invisible.

3. The invisible work never gets a code

Here's a test. Look at your timesheet categories. Do you have codes for:

Most agencies have "Admin" and hope for the best. So people either dump everything into Admin (making it useless) or spread it across client codes (making those useless). Either way, you lose the single most valuable insight available: which clients generate more unbillable overhead than others.

I've seen a £4,000/month retainer that looked like a 45% margin turn out to be a 12% margin once the client's habit of sending 15 separate one-line emails a day was actually logged. Nobody was hiding it. There was just nowhere to put it.

4. Utilisation targets teach people to lie

If you tell a team they must hit 85% billable utilisation, you will get 85% billable utilisation. You will not get accurate data. You'll get internal meetings quietly logged to whichever client is on retainer and unlikely to query hours.

This is the most damaging lie because it's structural. You've made honesty career-limiting. No tooling fixes that — only changing the target does.

What broken time data actually costs you

Bad time tracking doesn't fail loudly. It fails as a slow drift in the wrong direction:

This is why time data belongs in the same conversation as the rest of your agency KPIs that actually matter. Hours logged is an activity metric. Hours-to-margin per service line is a business metric.

How to fix agency time tracking without becoming a surveillance state

Track in the moment, or don't bother

The single highest-leverage change: timers started when work starts, not reconstructed later. Not because it's more disciplined — because it removes memory from the equation entirely.

This only works if starting a timer takes under five seconds and attributing it to a client and deliverable takes one click. If your tool requires selecting a project, then a phase, then a task, then a billable flag, people will batch it up on Friday and you're back where you started. Friction is the enemy here, which is worth weighing when you compare PM and time tracking tools — the winner is whichever one your team will actually use at 3pm on a busy Wednesday.

Track to deliverables, not tasks

Task-level tracking sounds rigorous and is a trap. Nobody wants 14 timer switches an hour.

Deliverable-level is the right granularity for agencies. For a typical SEO retainer that's maybe six buckets:

  1. Technical audit & fixes
  2. Content production
  3. Link acquisition
  4. Reporting & analysis
  5. Client comms & meetings
  6. Strategy & planning

Six buckets is enough to tell you that content production on Client A takes 3x what it takes on Client B — which is the insight that changes your pricing. Fifty buckets tells you nothing you'll ever read.

Give client comms its own line, always

Make "client communication" a first-class billable category on every project, not admin overhead. This is the change with the fastest payback. Within two months you'll be able to see, in hours, which clients cost 4 hours a month to manage and which cost 14.

That number is the foundation of every difficult pricing conversation you'll have. It's much easier to deliver uncomfortable news in a client meeting when you can say "your account consumes 11 hours a month in ad-hoc requests" rather than "you email us a lot."

Replace utilisation targets with variance targets

Stop measuring "how billable were you." Start measuring "how close was estimated to actual." Variance targets reward accurate estimation and accurate logging simultaneously. Under-logging hurts your variance score just as much as over-logging.

Aim for ±15% on deliverable-level estimates within a quarter. Anyone consistently at ±5% is probably padding estimates; anyone at ±40% needs help scoping, not discipline.

Run a 10-minute Friday reconciliation — for gaps, not entries

You still need a weekly review, but change what it's for. It's not "fill in your timesheet." It's "here are the gaps in your logged week — were those genuinely non-work, or did you forget a timer?"

Showing someone that Tuesday 2-4pm is unaccounted for prompts real recall ("that was the Zoom with the dev team"). Asking them to reconstruct Tuesday from scratch prompts invention.

Reconcile against retainer capacity monthly, not quarterly

A retainer that's 40% over budget in week two is fixable. Discovered in month three, it's a write-off or an awkward conversation. Monthly reconciliation against retainer scope is the mechanism that turns time data into a decision — see our practical guide to agency retainer management for how to structure that review.

Inside PeakKR we tie tracked time directly to retainer allocation per phase, so an overrun surfaces as a visible burn rate rather than a month-end surprise. Whatever tool you use, the principle holds: time data that isn't compared against a budget on a short cycle is just archaeology.

What honest data looks like

Expect your numbers to get worse before they get better. When a team of eight fixes this properly, the typical pattern is:

Featured in this list? Grab your “Featured on PeakKR” badge and add it to your site — free.
Get your badge →

Frequently asked questions

Why is agency time tracking so inaccurate?

Most agencies log time retroactively — at the end of the day or worse, on Friday afternoon. Memory reconstructs a tidy version of the week, rounding to half hours and quietly dropping context switches, Slack threads, and unbilled client calls. Studies of retroactive logging consistently show 15-30% error rates, and the errors are rarely random — they systematically favour whatever the person believes they should have been working on.

Should agencies track time to the task or just to the project?

Track to the deliverable, not the task. Project-level tracking is too coarse to tell you which service lines are unprofitable; task-level tracking creates so much admin friction that people stop logging honestly. Five to eight deliverable-level buckets per client project is usually the sweet spot for agencies.

How much of an agency's time is actually billable?

Healthy agencies land somewhere between 60% and 75% billable utilisation for delivery roles. If your timesheets say 90%, you are almost certainly not logging internal meetings, admin, or scope creep — which means your true hourly cost is much higher than your reported one.

Is automatic time tracking better than manual timesheets?

Automatic tracking captures activity accurately but attributes it badly — it knows you had a Google Doc open for 40 minutes, not which client it belonged to. The best setup for agencies is timers started in the moment with one-click attribution to a client and deliverable, plus a short weekly review to fix gaps rather than invent them.

Nick Quirk

Written by Nick Quirk

Founder of PeakKR

Nick Quirk is the founder of PeakKR, the agency workspace. He has spent decades running SEO and operations for marketing agencies, and writes about what holds up in real client work: technical audits, reporting, local campaigns, retainers and the systems behind them.

Run your agency on PeakKR

Client projects with phases, time tracking, technical SEO audits, client-ready reporting and AI briefs — the workspace this blog is written from.

Start free

Keep reading