Agency projects run over budget so often that most agencies keep a ready explanation: the estimate was wrong. So the next quote gets a buffer, and the next project runs over anyway. On a fixed-fee job, the hours that sink the margin usually come from three places no estimate covers: small requests nobody logs, rework after late feedback, and hand-offs between people. All three show up while the project is still running if every request is a row instead of a message, such as a row on the project's sheet in Atwork.
How often do agency projects run over budget?
Close to half of all projects do. In PMI's 2018 Pulse of the Profession, a survey of 4,455 project practitioners, only 57% of projects finished within their initial budgets, and 52% experienced scope creep, up from 43% five years earlier.
PMI's figures span many industries. Agency-only data is thinner, and most of it comes from vendors who sell time tracking. The most useful is a 2018 survey by Function Point and the Agency Management Institute, based on more than 400 responses from North American creative agencies and in-house marketing teams. In it, 49% said their agency has no repercussions for over-servicing.
On a fixed fee, the overrun is yours. The client's price does not move, so every extra hour comes straight off the margin. Choosing between project and retainer pricing is choosing who carries that risk. This post is about what happens once you carry it.
Is the estimate really the problem?
The estimate is a smaller cause than agencies think. When PMI asked practitioners why their projects failed, inaccurate cost estimates (28%) and inaccurate task time estimates (25%) ranked below changes in project objectives (37%) and inaccurate requirements gathering (35%). In our experience, estimates are usually close for the work they describe. The overrun lives in the work they never described.
| Primary cause of failed projects | Respondents naming it |
|---|---|
| Change in organization's priorities | 39% |
| Change in project objectives | 37% |
| Inaccurate requirements gathering | 35% |
| Inaccurate cost estimates | 28% |
| Poor change management | 28% |
| Inaccurate task time estimate | 25% |
Source: PMI Pulse of the Profession 2018, six of the 16 causes it named. Respondents could pick up to three, so the column does not add up to 100%.
The estimate is not innocent, and agencies say so themselves. In the Function Point survey, 49% named projects not being scoped or budgeted properly as the main barrier to effective project management, and 44% were not confident in the accuracy of their time tracking. If you can't trust the actual hours, you can't tell an estimate that was wrong from work that grew.
Padding the next estimate pays for this project's leaks in advance. It doesn't find them.
Where do the extra hours go?
The extra hours go into three kinds of work that sit outside every estimate: small requests that get done but never logged, rework after feedback that arrives late, and hand-offs where one person briefs another. Each one is too small to raise on the day it happens. Together they are where a fixed-fee project's margin goes.

Take phase one of a site rebuild, sold at 120 hours. The planned work came in at 118. The estimate was two hours out. The project was thirty-four: small requests added 16 hours, rework 12 and hand-offs 8.
Small requests nobody logs
"Can you just add a careers page to the sitemap?" arrives in a chat, takes forty minutes, and is done before anyone thinks to write it down. PMI's report describes exactly this when it defines scope creep: "Essentially, more work is added than originally planned. This work cannot be absorbed without the project missing one or more objectives—or passing up opportunities." The fix is a rule to log, not a rule to refuse, which the change request nobody sends covers in detail.
Rework after late feedback
Feedback that lands after the next stage has started costs twice: once for the change, and again for undoing the work built on top of it. A third round on the homepage wireframe is rework, but on most boards it looks like progress. A round count on each deliverable shows it, and why revision rounds multiply covers the approval habits behind it.
Hand-offs between people
Every time work moves from strategist to designer, or from designer to a freelance developer, someone spends an hour explaining what the brief left out. Nobody estimates that hour, because nobody thinks of it as work. It shrinks when decisions are written on the work as they are made, so the brief does most of the explaining.
How do you see an overrun while the project is still running?
Make every request a row with two fields: what kind of work it is, and how many hours it took. When small requests, rework and hand-offs sit as rows next to the planned work, the overrun shows up as a running total in week three, not as a surprise in the wrap-up meeting.
In Atwork, that is a sheet. The Agency Client Delivery template gives every deliverable a Round number and an Estimate (hours), and every brief its Budget hours. Add two fields to the Deliverables sheet: Type, with the options Planned, Small request, Rework and Hand-off, and Hours. A Chart over the sheet then sums Hours by Type. Requests that arrive by email don't need retyping: give the client's sheet its own email address, put the client's domain on its allow list, and each email arrives as a new row.

| Dimension | Requests in email and chat | Atwork |
|---|---|---|
| Where a small request lives | A thread, a DM or a call note | A row on the project's sheet |
| Counted against the budget | Only if someone remembers | Yes, Hours summed by Type |
| Rework visible as rework | No, it looks like progress | Yes, a Type and a Round number |
| When you see the total | At the wrap-up, if ever | Any day, on the Chart |
| Effort for the client | None: they already write email | A little: they write to the sheet's address |
| Records the hours for you | No | No, someone still enters them |
What do you tell the client at 80% of the budget?
Tell them what the rows show: how much of the budget is used, how much of the planned work is done, and what the other hours went on. At 81% of the hours with 58% of the planned work done, the conversation is about choices, not apologies, because the list of requests is already in front of you both.
Drew McLellan, CEO of the Agency Management Institute, made the same point when the 2018 survey came out. In his words, "clearly documenting the scope of work, timelines, and potential costs of delays or changes, will help ensure agencies and clients are on the same page." At 80%, you have four honest options.
| Option | What the client hears | What it costs you |
|---|---|---|
| Absorb it | Nothing, until the next quote rises | The margin, and the same leak next time |
| Bill the small requests | A dated list of what they asked for | One short conversation |
| Swap scope | Which planned item to drop | Nothing, if they choose |
| Re-baseline | A new number for the rest of the project | One meeting, held early |
Thirteen hours of small requests, each with a date and a name, is a fact. "We've been busy" is an argument. If the same client sends small requests project after project, the work may belong on a retainer, and how to stop over-servicing retainer clients covers what happens there.
Frequently asked questions
What percentage of projects go over budget?
In PMI's 2018 Pulse of the Profession, 57% of projects finished within their initial budgets, so 43% did not. The survey covers many industries. Agency-only figures are scarcer, and most come from software vendors' own surveys.
Should you add a contingency buffer to fixed-fee quotes?
Yes, but size it from your own records: the small-request, rework and hand-off hours logged on past projects. A buffer picked from a rule of thumb gets spent on the first project and never explained.
Is scope creep the same as over-servicing?
No. Scope creep is the scope growing during a project. Over-servicing is delivering more than the client pays for, usually on a retainer. Unlogged small requests cause both.
How do you track rework without blaming people?
Log it as a type of work, not as a mistake. Rework after late client feedback is usually a timing problem in approvals, not one person's error. A round number on each deliverable gives you the count without naming anyone.
Where should you start this week?
Pick one live fixed-fee project. Add Type and Hours to its deliverables, and log every request from today, including the forty-minute ones. In two weeks you will know which of the three leaks is yours, and how many hours it costs.
Then put the hours next to the invoice. How to tell if a retainer is actually profitable turns logged hours into money, and utilisation as a diagnostic explains why logged hours and invoiced hours drift apart.
Install the Agency Client Delivery template and log every request on one live project as a row. In two weeks, the overrun has a name. Start free
