You open QuickBooks expecting a clean answer to a simple question: Did the agency make money last month? Instead, you see one checking account full of payroll, contractor invoices, client retainers, ad-platform charges, and software subscriptions. The cash balance is real, but it doesn't explain what you've earned, what you still owe, or which clients are paying for your time.
That confusion is normal for a growing agency, but it isn't harmless. Accounting for marketing agencies has to separate the way money moves through the business, then connect those flows to projects, invoices, and month-end reporting. Otherwise, you can win more work while losing margin.
Why Agency Books Break Faster Than Other Small Businesses
A five-person agency can look simple from the outside. There may be one owner, a few employees, several freelancers, and a handful of recurring clients. The books become difficult because those people and clients don't create one type of transaction. They create several money flows with different timing, margins, and accounting treatment.
A typical month may include:
- Retainers, where clients pay for ongoing services.
- Fixed-fee projects, such as a website, campaign, or brand launch.
- Ad media passed through at cost, where the agency pays a platform or publisher on the client's behalf.
- Reimbursable expenses, such as travel, production purchases, or client-approved tools.
- Contractor labor, often tied directly to one engagement.
A generic small-business chart of accounts may put all client receipts into one revenue line and all labor into one expense line. That setup keeps transactions recorded, but it doesn't answer the questions an agency owner needs answered: Which service line is profitable? Which client is consuming too many senior hours? How much of the cash balance belongs to work that hasn't been delivered?
The three problems hidden in one profit and loss statement
First, mixed costs create mispriced project bids. If contractor work, internal labor, and project software sit in broad expense categories, your next proposal is based on memory instead of actual delivery costs.
Second, lumped expenses hide retainer margins. A retainer might look strong because the invoice is recurring, while untracked revisions and leadership time eat away at the contribution from that client.
Third, misclassified media reimbursements can create tax and reporting surprises. Pass-through media isn't economically the same as agency service revenue, even when the client sends the cash to you first. The treatment may also depend on whether the agency acts as principal or agent, a distinction that can change whether media is reported gross or only the agency fee is reported as revenue. NetSuite's agency accounting guidance highlights why this distinction affects margin, working capital, and period-to-period performance.
Practical rule: Your books should show how you sell, deliver, and collect work. If the chart of accounts doesn't reflect those three activities, the reports won't guide decisions.
The fixes are straightforward: build an agency-specific chart of accounts, assign every cost to a client or project, recognize revenue when work is delivered, connect time and expense tracking to the ledger, review three operating KPIs, and close the books on a fixed schedule. Those controls turn a checking-account view into a usable financial system.
Build a Chart of Accounts That Matches How an Agency Actually Works
Start with revenue. Don't create one account called “Client Revenue” and expect it to explain the business. Separate revenue by how the agency earns it, because each stream carries a different cost pattern and may need different invoice and tax treatment.
For a clean starting structure, create these revenue accounts:
- Retainer Revenue, for ongoing service agreements.
- Project Revenue, for fixed-fee or milestone-based engagements.
- Media Pass-Through Revenue, for client media spend reported on a gross basis.
- Reimbursable Expense Income, for approved costs billed back to clients.
A chart of accounts is the list of categories your accounting system uses to organize transactions. This plain-English chart of accounts guide can help an owner map the structure before setting it up in QuickBooks or Xero.
A recreatable agency account list
Use the following as a practical base, then add detail only when it improves a decision:
Revenue
- Retainer Revenue
- Project Revenue
- Media Pass-Through Revenue
- Reimbursable Expense Income
Cost of Services
- Employee Direct Labor
- Subcontractor and Freelancer Fees
- Media Buy Cost
- Production Costs
- Stock Assets and Client Materials
Operating Expenses
- Owner Salary
- Rent and Workspace
- Software Subscriptions
- Insurance
- Professional Fees
- Sales and Marketing
- Office and Administrative Costs
Other Income and Expense
- Interest Income
- Bank Charges
- Interest Expense
- Owner Draws or Distributions, recorded in equity rather than revenue
The names matter. “Software” is less useful than “Software Subscriptions,” and “Labor” is too broad if the business needs to distinguish employee delivery time from freelance production. Use labels that make sense to someone seeing the report for the first time.
Keep media and labor out of hiding
Don't put client media spend under the agency's own marketing expense. That makes the agency look like it spends heavily on self-promotion and makes client margin harder to read. Put the cost in Media Buy Cost, then connect it to the relevant client or engagement.
Likewise, don't combine payroll, freelancers, and owner compensation into one labor line. Employee delivery labor and contractor fees may both support client work, but they create different staffing, compliance, and cash decisions. A separate account for each gives you a clearer cost-of-services report without creating an account for every individual worker.
Job Costing and Project Profitability That Catches Leaks Early
A website launch can look profitable when the invoice goes out and still become a poor engagement later. Consider a $90,000 website launch that appears healthy in its first month. By the third month, the team has absorbed unbilled revisions, extra strategy meetings, scope creep, and senior staff hours that weren't in the original estimate. The cash arrived, but the margin didn't survive delivery.
Job costing exposes that problem while the team can still act. It connects revenue and direct costs to a specific client, project, or engagement. This job costing overview provides the basic framework, but the operating rule is simple: every hour and project expense needs an owner.
What the project report should catch
A useful project report should flag:
- Time logged to the wrong client, which can make one project look expensive and another look artificially profitable.
- Budget overruns before invoicing, especially when the team continues working after the planned hours are gone.
- Unbilled revisions, where the client receives more work but the agency doesn't issue a change order.
- Senior hours replacing junior hours, which raises delivery cost even when total hours seem acceptable.
- Direct expenses left outside the project, including freelancers, production purchases, and client-specific tools.
Direct labor allocation assigns employee or contractor cost to the engagement that received the work. If a designer spends time on Client A, that time belongs in Client A's cost report, not in a general overhead bucket. The same logic applies to a freelancer invoice or a production charge tied to one campaign.
Overhead absorption handles the costs that support every project but can't be traced neatly to one job. Rent, administrative salaries, general software, and owner time still need to be recovered through pricing. Apply a consistent monthly overhead rate to active work so the project report shows more than revenue minus visible production costs. It should show whether the engagement contributes enough to support the whole agency.
Review three operating measures
Pull these measures from the project and time reports:
Billable utilization, calculated as billable hours divided by available hours. A practical example is 30 billable hours out of 40 available hours, which equals 75% utilization. Industry benchmarking cited in 2026 placed professional services utilization at 66.4% for 2025, while high-performing firms reached 75.0%. The agency utilization benchmark explains why the difference matters to revenue, staffing, pricing, and cash planning.
Effective hourly rate, calculated as project revenue divided by the hours used. If the rate falls as revisions accumulate, the agency is giving away work.
Gross margin per project, calculated after direct labor, contractors, media, and production costs. Add allocated overhead for the decision view, even if your formal gross margin report keeps overhead separate.
Set a trigger before a project becomes a crisis. A manager should review any engagement with repeated unbilled work, a falling effective hourly rate, or utilization below the agency's operating target. Independent agency benchmarks describe overall utilization targets in the 60% to 75% range and producer targets in the 75% to 85% range. They also identify utilization below about 55% as a crisis signal and realization below 75% as a warning for scope creep or pricing leakage. Optivation's agency financial benchmarks supports using both measures in the monthly review.
Recognizing Revenue for Retainers, Projects, and Media Spend
Agency revenue doesn't all reach the general ledger in the same way. A retainer represents service delivered over time, a fixed-fee project follows milestones or progress, and media spend may be reported gross or net depending on the agency's role.
Under ASC 606-style treatment, the sequence is to identify the contract, identify distinct performance obligations, determine the transaction price, allocate that price to the obligations, and recognize revenue as each obligation is satisfied. A prepaid retainer isn't automatically earned revenue. This guide to deferred revenue explains why the balance belongs on the balance sheet until the agency performs the work.
A worked retainer example
Assume a $60,000 annual retainer billed monthly. On day one, the agency should not record earned revenue merely because the client paid or the invoice was issued. The cash entry is a debit to cash and a credit to deferred revenue. If you want to show the revenue recognition entry separately, the day-one recognition entry is Debit Deferred Revenue, Credit Retainer Revenue for $0.
Once the service period begins, recognize the earned amount for that month. For an annual retainer spread evenly across the year, the monthly amount is $5,000. The monthly entry is Debit Deferred Revenue $5,000, Credit Retainer Revenue $5,000. The same logic applies to retainers paid upfront, though the deferred balance is larger at the start.
For a fixed-fee project, tie revenue to the agreed milestone or measured progress. If the agency has performed work that it has not yet invoiced, use an unbilled work-in-progress or contract-asset account where appropriate. That keeps the income statement aligned with delivery instead of forcing every accounting period to follow the invoice date.
The three-stream treatment
| Revenue Type | Recognition Method | Day-1 Entry | Monthly Entry | Common Trap |
|---|---|---|---|---|
| Retainer | Over the service period | Cash or receivable to Deferred Revenue | Deferred Revenue to Retainer Revenue as service is delivered | Treating the full prepayment as earned |
| Fixed-fee project | Milestone completion or measured progress | Receivable or contract balance based on billing | Project Revenue recognized as obligations are satisfied | Ignoring unbilled WIP |
| Media pass-through | Gross or net, based on principal-versus-agent analysis | Receivable or cash with the matching liability or revenue treatment | Media cost and related revenue, or commission revenue only | Reporting client spend as agency margin without analysis |
Watch the timing details. A calendar-month retainer can be invoiced before the service month, project scope creep can push completion beyond the original budget, and a mid-period credit note can reduce the amount that should be recognized. The close process must update deferred revenue, WIP, receivables, and credits together. Otherwise, one account may look correct while the overall report is wrong.
Time, Expenses, Payroll, and Contractor Tracking in One Flow
Every minute, receipt, paycheck, and contractor payment should enter the accounting system with enough context to explain it later. The source may be a time tracker, expense app, payroll provider, or bill-pay platform, but the destination should be QuickBooks or Xero with the project, class, and billable flag attached.
A practical weekly rhythm keeps the data moving:
- Monday morning: Staff submit timesheets for the prior week.
- Tuesday: Managers approve time and flag missing project codes.
- Wednesday: Payroll exports for Friday direct deposit.
- Thursday: Contractor invoices arrive and get matched to engagements.
- Friday: Expense reports and bank feeds are reconciled.
The tools can vary. Harvest or Toggl can collect time, Dext or Expensify can capture receipts, Gusto or Justworks can handle payroll, and Wise or Bill.com can support contractor payments. The tool matters less than the handoff. An approved time entry that never reaches the project report is still missing data.

Use the chart of accounts as the glue
Keep the accounting categories distinct:
- Labor, for employee delivery costs.
- Subcontractor Fees, for freelancers and outsourced specialists.
- Reimbursable Expenses, for client costs expected to be billed back.
- Software Subscriptions, for tools used to operate or deliver services.
Attach the client or project at the transaction level wherever the system allows it. A receipt for a client-approved stock asset should not land in the same reporting bucket as the agency's general design software. That separation makes the project margin report auditable and gives the account manager something concrete to discuss with the client.
Contractor classification also needs attention. UK guidance notes that a freelancer who works under employee-like control may create a payroll liability rather than a simple contractor expense. This agency accounting guidance also discusses audit trails, privacy, and automated workflows. Keep contracts, invoices, approvals, and payment records together so the business can show why a worker was treated as a contractor.
Operating rule: Never let unbilled time or reimbursable expenses sit for more than 10 days. The longer they wait, the more likely someone forgets the work, loses the receipt, or decides the client won't approve it.
Monthly KPIs and the Three Numbers Worth Watching
Agency owners often open a dashboard packed with metrics and still can't decide what to do. Start with three numbers: utilization, realization, and labor-cost ratio. Together, they show whether the team had capacity, whether the agency captured the value of that capacity, and whether labor consumed too much of the revenue.
Utilization is billable hours divided by available hours. For most agencies, use a healthy operating target between 70% and 80%. Realization is billable value invoiced divided by billable value recorded. It exposes write-downs, unbilled work, and free scope creep, with a target above 90%. Labor-cost ratio is total labor cost, including contractors, divided by revenue. Use a rule-of-thumb ceiling of 55% on service revenue, then investigate any sustained move above it.
| KPI | Formula | Target | Bad Reading Signals | Lever to Pull |
|---|---|---|---|---|
| Utilization | Billable hours ÷ available hours | 70% to 80% | Too much internal time or weak pipeline | Rebalance staffing and sales activity |
| Realization | Billable value invoiced ÷ billable value recorded | Above 90% | Write-downs or unbilled scope | Enforce approvals and change orders |
| Labor-cost ratio | Total labor cost ÷ revenue | No more than 55% on service revenue | Delivery cost is consuming margin | Reprice, rescope, or adjust staffing |
The relationships matter more than any single reading. Low utilization can push the labor-cost ratio higher even when the team invoices all recorded billable work. High utilization can still produce weak results if realization is poor because the agency gives away revisions or prices work too low.
The five-minute Monday dashboard
Put the three KPIs across the top. Under each, show the current month, a four-month trend line, and a green, yellow, or red status. Add one action beside every yellow or red result. “Realization is red” isn't a decision. “Review the two projects with unbilled revisions before Friday” is.
Marketing firms also need visibility outside the books. If your agency handles accounting or professional-services clients, this resource on how to boost accountant local rankings offers a useful reminder that business development activity should be measured alongside delivery capacity. Keep that activity separate from the three operating KPIs, but review it when low utilization points to a weak pipeline.
Month-End Close and a 13-Week Cash Forecast You Can Trust
A strong close answers two different questions. The financial statements should show what the agency earned and incurred, while the cash forecast should show whether the agency can pay upcoming bills. You need both because payroll can be covered on paper while client invoices remain unpaid.
Close the books by day five
Use this order every month:
- Reconcile bank and credit card feeds.
- Post accrued media payables.
- True up WIP and deferred revenue.
- Allocate payroll to projects and overhead.
- Review the job margin report.
- Lock the period.
- Review the KPI dashboard.
Don't skip the third step. Retainers, project work, and media spend have different timing, so the month-end close must update the accounts that separate earned revenue from cash received and work completed from work billed.
Build the forecast in plain columns
A rolling 13-week cash forecast can live in a spreadsheet or accounting tool. Start week one with the balance sheet and current bank balances. Build weeks two through six from the accounts-receivable aging report, signed contracts, and realistic proposal pipeline. For weeks seven through thirteen, use conservative assumptions rather than treating every opportunity as committed revenue.
| Week | Opening Cash | Retainer Receipts | Project Invoices | Media Pass-Through In | Media Pass-Through Out | Payroll | Fixed Costs | Closing Cash |
|---|---|---|---|---|---|---|---|---|
| Week 1 | Current balance | Confirmed receipts | Confirmed invoices | Expected client funding | Approved media bills | Scheduled payroll | Software, rent, taxes | Opening cash plus inflows minus outflows |
| Week 2 | Prior closing cash | Confirmed receipts | Likely invoices | Expected funding | Planned media bills | Scheduled payroll | Fixed commitments | Opening cash plus inflows minus outflows |
| Week 3 | Prior closing cash | Confirmed receipts | Likely invoices | Expected funding | Planned media bills | Scheduled payroll | Fixed commitments | Opening cash plus inflows minus outflows |
| Week 4 | Prior closing cash | Confirmed receipts | Likely invoices | Expected funding | Planned media bills | Scheduled payroll | Fixed commitments | Opening cash plus inflows minus outflows |
| Week 5 | Prior closing cash | AR-based estimate | Pipeline-supported invoices | Conservative estimate | Conservative estimate | Scheduled payroll | Fixed commitments | Opening cash plus inflows minus outflows |
| Week 6 | Prior closing cash | AR-based estimate | Pipeline-supported invoices | Conservative estimate | Conservative estimate | Scheduled payroll | Fixed commitments | Opening cash plus inflows minus outflows |
| Weeks 7 to 13 | Prior closing cash | Conservative estimate | Conservative estimate | Conservative estimate | Conservative estimate | Planned payroll | Fixed commitments | Opening cash plus inflows minus outflows |
Review the forecast weekly, not just when cash feels tight. If the closing cash line drops, act on the cause: collect overdue invoices, delay discretionary spending, adjust contractor commitments, or stop approving unpriced scope. The forecast is useful only when it changes what you do.
MyOfficeOps provides bookkeeping, payroll integration, financial reporting, forecasting, KPI dashboards, and CFO-level advisory for small and midsize businesses, including agencies. Visit MyOfficeOps to discuss a chart of accounts, close process, and cash forecast built around the way your agency delivers work.



