Project Tracker for Agencies
An agency's margin rarely dies in one big loss; it bleeds out one unbilled favor at a time. A designer spends an extra afternoon on 'just one more round,' the account manager says yes to a small extra ask, and by the time anyone opens the project the fixed-fee budget is spent and the work still is not done. Industry data puts scope creep on more than half of all projects, yet most agencies admit they rarely charge for it, so the tracker that actually protects an agency is not another task board. It is one that watches logged hours against the quoted scope of every deliverable and turns extra work into a change order before the margin is gone.
The problem
- Scope creep is invisible until it is too late: a project sits at 60 percent of its total hours while the design phase is already 120 percent over, and nobody sees it because the tracker only shows one project-level number.
- Out-of-scope work never becomes money: an extra revision round, a last-minute deck, a 'quick' logo tweak all get absorbed into a fixed fee because no one wrote a change order while the work was fresh.
- Retainers get over-serviced for free: a client on a 20-hour monthly retainer quietly consumes 30, and because retainer hours are tracked in a spreadsheet nobody notices until the month is already a loss.
- Utilization and margin are a mystery: which projects are profitable, and how much of each person's week is actually billable, are questions answered by gut feel at month-end instead of a live number, so unprofitable work keeps getting sold.
What you’d build
A board of every client engagement with your real stages, New, Active, Client Review, On Hold, Delivered, Closed. Each project carries a quoted budget in hours and fee, split across deliverables, and a burn bar that fills as time is logged and turns red as it approaches the estimate. You see a phase going over before it does, not at month-end reconciliation.
The team logs hours in a few taps against a specific project and deliverable, each entry flagged billable or non-billable and in-scope or out-of-scope. The burn updates immediately, so people see the budget they are spending, and every hour of extra work is captured with the scope flag that decides whether it becomes a change order.
When out-of-scope hours appear, a change order captures the added hours and fee and moves through draft, sent, and client-approved, so extra work is billed instead of absorbed. A dashboard rolls it all up: projects over budget, retainers near their monthly cap, per-person billable utilization, and fee-versus-cost margin per project.
The data model
A day in the system
- 8:45am: the dashboard opens on what is at risk, projects past 80 percent budget burn, retainers with fewer than five hours left this month, and deliverables due this week. You triage from the numbers, not from whoever emails loudest.
- A designer logs three hours to a project against the 'Homepage design' deliverable and marks it billable and in-scope. The project's burn bar ticks up in real time and the deliverable now shows 95 percent of its estimated hours used.
- The client emails asking for 'just one more homepage variation.' The account manager opens the project, sees the design deliverable is already at 95 percent, and instead of quietly absorbing it drafts a change order for the extra hours and fee.
- The change order is sent to the client and sits as pending. The project can no longer silently go over, because the added work is attached to a change order that either gets approved and billed or gets declined and stopped.
- A retainer client check: this month's 20-hour retainer has four hours left. The system flagged it, so you decide per the contract's rollover rule, stop work, roll the overage into next month, or propose an add-on, rather than discovering the overage after the fact.
- Midday: a PM drags the 'Homepage design' deliverable from In Progress to Client Review, and the client approval date is captured so the timeline reflects reality.
- A time entry lands tagged out-of-scope on a fixed-fee project. It surfaces on the 'unbilled out-of-scope' list, prompting a change order so that hour becomes revenue instead of lost margin.
- End of day: the profitability view shows each active project's fee against the cost of the hours burned, plus billable utilization per person, so you leave knowing which projects are bleeding and which people are underused instead of guessing at month-end.
Where AI trips up
- Budget burn must be tracked per deliverable, not just per project: a project can read 60 percent of total hours while its design phase is already 120 percent over. A naive build that shows one project-level number hides the exact phase blowing the budget, which is the whole reason the tracker exists.
- In-scope versus out-of-scope has to be a required flag on every time entry, not an afterthought. If the two cannot be separated at log time, out-of-scope work vanishes into the fixed fee and never becomes a change order, and the agency keeps eating margin it could have billed.
- A retainer is not a fixed-fee project: it is a recurring monthly hour bucket with a contract-specific rule, roll over unused hours, use-it-or-lose-it, or hard cap. Model it as a plain project and the monthly reset and rollover are wrong, so you either over-service the client for free or short-change the hours they paid for.
- Rates change, so freeze the rate on each entry: bill rates and cost rates move with raises and new rate cards. Store bill_rate and cost_rate on the time entry itself, not only on the person. A build that recomputes historical margin with today's rate silently rewrites the profitability of projects you already closed and invoiced.
- Approved time is a financial record, not editable text: once hours are billed, deleting or editing an entry desynchronizes your margin history from what the client was actually charged. Lock approved entries and require an adjustment or credit line instead of an in-place edit, or the numbers stop reconciling with your invoices.
- A project board where each project has a quoted budget in hours and fee, split across deliverables, with a live burn bar per deliverable that turns red as logged hours approach the estimate.
- Fast time logging tagged to a project and deliverable, with required billable and in-scope flags, feeding the burn in real time.
- A change-order flow so out-of-scope hours surface and become a tracked, client-approvable add-on instead of absorbed margin, plus a simple dashboard of projects over budget and retainers near their cap.
- Full invoicing, payments, and accounting sync: hand billable totals and approved change orders to your existing invoicing tool for v1 rather than half-building an accounts-receivable system.
- Payroll, PTO, and HR-grade timesheets: track project time against scope, not attendance, leave balances, and overtime rules.
- Forward capacity planning and resource-forecasting gantts: get burn, scope, and retainer tracking right first, then add who-is-staffed-on-what scheduling once the core is proven.
FAQ
How is this different from a Kanban tool like Trello or Asana?
Those track tasks; this tracks hours against a quoted budget per deliverable. A generic board tells you a card is 'in progress' but not that the design phase has already burned 120 percent of the hours it was sold for. This tracker watches the money side of every deliverable, so you see a project going over margin before it does, not after the invoice.
Can it handle both fixed-fee projects and monthly retainers?
Yes. Each project has a billing type, fixed-fee, time-and-materials, or retainer, and retainers get a monthly hour allotment plus your rollover rule, so the bucket resets and carries over correctly every month. A retainer near its cap gets flagged before you over-service the client for free.
Does it actually stop scope creep?
It cannot say no to a client for you, but it makes out-of-scope work impossible to miss. Every hour is tagged in-scope or out-of-scope, and out-of-scope hours surface on an unbilled list that prompts a change order. That turns the extra afternoon into a decision, bill it or decline it, instead of a silent hit to the fixed fee.
Will the team actually log time in it?
That is the design constraint. Logging is a few taps against a project and deliverable with billable and in-scope tags, and the burn bar updates the moment they save, so people see the budget they are spending. Time tracking that shows the person nothing gets skipped; time tracking that shows a live burn gets used.
Is our client, rate, and margin data kept private?
Your tracker runs hosted on ybuild and served on your own domain, backed by a managed database and gated behind managed auth with per-user access. Rate cards, project margins, and client details stay inside one controlled system instead of a shared spreadsheet everyone can open.
Sources
- PMI Pulse of the Profession 2018: Success in Disruptive Times — The Project Management Institute survey behind the widely cited finding that 52 percent of projects experienced scope creep, up from 43 percent five years earlier, with an average 27 percent cost overrun.
- Ignition: The Agency Owner's Guide to Turning Scope Creep Into Profit — Cites Ignition's 2025 Agency and Cash Flow Report: 78 percent of agencies rarely or only sometimes charge for scope creep, and 57 percent lose one to five thousand dollars a month to out-of-scope work.
- Function Point: Agency Utilization Rate, How to Calculate and Improve It — Defines utilization as billable hours divided by available hours and gives target ranges by role (designers and developers 75 to 85 percent, PMs 60 to 70 percent), the benchmark your dashboard is built to surface.
- Function Point: The Truth About Creative Agency Productivity in 2025 — Reports average agency utilization slipping to 62 percent, scope creep cited by 31 percent as a barrier to on-budget delivery, and only 33 percent of agencies calling their time-tracking data very accurate.
Describe it, go live on your own domain in one pass — hosted, full-stack, no server. Free to start.