The Agency Profitability Stack: 5 Numbers to Track Weekly
Revenue is the number every agency watches. These are the five numbers that actually tell you whether that revenue is turning into profit — and whether next month's revenue will hold.

01. Why Revenue Is the Wrong Number to Watch Weekly
Revenue is a monthly number. By the time it's visible, the work that generated it was delivered 30-60 days ago, invoiced 30 days ago, and is now sitting in accounts receivable. Watching revenue weekly gives you a lagging view of decisions made weeks ago — too late to act on what you're seeing. The numbers worth watching weekly are the ones that predict revenue rather than report it. Utilization tells you about next month's billing. Project margin tells you whether this month's billing is profitable. Retainer consumption tells you whether you're over-delivering before the invoice. Pipeline coverage tells you whether next quarter's revenue is being built today. These five numbers form a complete operational picture that, reviewed together weekly, give an agency owner more actionable information than any P&L statement.
"Revenue is the number every agency watches. These five numbers are what actually tell you whether that revenue is turning into profit — and whether next month's revenue will hold."
02. Number 1: Utilization Rate
What it is: billable hours logged by the team ÷ total available hours × 100. Target range: 65-75% for most service agencies. Above 80% is a team strain warning. Below 60% is a revenue warning. What it predicts: next month's revenue, with approximately 60 days of lead time. A drop in utilization this week will show up in revenue in about two months — the earliest financial warning signal in the entire stack. When it goes wrong: below 60%, check whether the issue is pipeline (not enough client work), scoping (work is happening but not tracked against billable projects), or tracking (hours aren't being logged). Different causes, different responses. How to get the data: total billable hours from time tracker this week ÷ (team size × scheduled hours). Requires consistent daily time tracking.
03. Number 2: Effective Hourly Rate by Client
What it is: total invoiced value for a client period ÷ total hours tracked against that client in the same period. Target range: within 10-15% of your standard blended rate. Clients where the effective rate is consistently below that range are underpriced or over-serviced. What it tells you: which clients are actually profitable at the rate they pay, and which ones look profitable on paper but are consuming more hours than the invoice reflects. When it goes wrong: effective rate consistently below standard means either the rate needs to go up (price increase conversation) or the scope needs to come down (scope management conversation). The data tells you which client to have the conversation with first. How to get the data: monthly calculation per client — invoice amount ÷ total hours tracked to that client for the invoice period. A table with one row per client, updated monthly, shows the pattern over time.
04. Number 3: Gross Margin by Project
What it is: (project revenue − project labour cost) ÷ project revenue × 100. Labour cost = hours tracked × your blended labour cost per hour (salary + overhead, not the billing rate). Target range: 35-50% gross margin for most agency project work. Below 25% is a concern. Above 55% on a consistent basis usually means you're underinvesting in quality. What it tells you: whether each project is generating enough gross profit to cover overhead and produce net income. Revenue without margin is cashflow, not profit. When it goes wrong: below 25% — check whether the hours were over-estimated at billing, the scope expanded without billing adjustment, or the estimate was wrong. How to get the data: requires knowing your blended labour cost (not billing rate). Formula: total team salary cost ÷ total available hours = labour cost per hour. Apply to tracked hours per project.
05. Number 4: Retainer Hour Consumption Rate
What it is: hours consumed so far this period ÷ total hours in retainer × 100. Tracked mid-month to catch over-delivery before the invoice. Target range: at the midpoint of the month, you should be at approximately 50% of the retainer's hours. If you're at 75% with 15 business days remaining, you're on pace to over-deliver by 50%. What it tells you: whether you're on pace to deliver within scope for each retainer client. The value is in the timing — a mid-month check gives you two weeks to manage remaining scope before the month closes. When it goes wrong: above 60% at mid-month, proactively contact the client. 'We're at [hours] of [total] hours at the midpoint. Here's what's remaining in scope. We can continue as planned if you'd like to add a change order, or adjust the remaining deliverables to fit the original scope.' How to get the data: current month's hours tracked per retainer client ÷ retainer hour allocation. Run this on the 10th-12th of each month.
06. Number 5: Pipeline Coverage Ratio
What it is: total value of active pipeline ÷ monthly revenue target. Active pipeline = proposals sent or in discussion, not signed. Weight by close probability if you track it. Target range: 3× monthly revenue target for a healthy pipeline. If your revenue target is $50,000/month and you have $150,000 in active proposals, you're at 3× coverage. If you have $60,000 in proposals, you're at 1.2× — dangerously thin. What it tells you: whether you're building next quarter's revenue today. Pipeline coverage is the furthest-forward-looking number in the stack — a thin pipeline today is a revenue problem in 60-90 days. When it goes wrong: below 2× coverage, business development urgency increases immediately. The response time between 'pipeline is thin' and 'revenue is thin' is 60-90 days. There's no fast fix — there's only an early warning. How to get the data: a simple CRM or deal list with value and stage for each active prospect. Total the values and divide by your monthly revenue target.
07. The 15-Minute Weekly Review
Reviewing all five numbers takes 15 minutes if the data is accessible. Here's the weekly sequence:
- Pull utilization rate for the week (5 min) — is it above 65%? Which team members are low?
- Check retainer consumption for all active retainers (3 min) — anyone on pace to over-deliver this month?
- Review any projects that closed this week for gross margin (3 min) — any outliers to understand?
- Update pipeline coverage if any deals moved (2 min) — is coverage above 3×?
- Flag any effective rate clients for the monthly review (2 min) — any consistently low clients to address?
08. What Good Numbers Look Like
A healthy agency profitability stack looks like this on a weekly snapshot:
- Utilization: 68-72%
- Effective hourly rate: within 10% of standard for all clients
- Gross margin: 38-45% on projects closed this week
- Retainer consumption: all clients at less than 55% at mid-month
- Pipeline coverage: 3.2× monthly target
09. Building the Dashboard
The dashboard doesn't need to be sophisticated. A spreadsheet with five rows, updated weekly, is sufficient. The columns: metric name, current week value, target range, status (green/yellow/red), action if red. What the dashboard needs to be is consistent. The same metrics, tracked the same way, every week. A metric that's measured inconsistently or defined differently week to week produces noise, not signal. The value comes from the trend over time, not from any single week's reading. If one of the five numbers requires more than ten minutes to pull together each week, that's a data infrastructure problem worth solving — because friction is what turns a weekly habit into a monthly one, and a monthly one into 'when I have time.'
Get all 5 numbers in one place.
Track utilization, project margin, retainer consumption, and pipeline coverage without switching tools.

