Why it matters
- 9.9%
- Firm profitability (EBITDA) at professional-services firms in 2025, well below the 13.8% five-year average.
- 10%
- Average agency net profit. 15 to 20% has traditionally been considered healthy.
- 66.4%
- Billable utilization at professional-services firms in 2025, the lowest on record, against a 75% target.
Source: SPI Research, 2026 Professional Services Maturity Benchmark
Source: Parakeeto, How to Calculate Profitability for Your Agency Clients and Projects
Source: SPI Research, 2026 Professional Services Maturity Benchmark
The numbers that matter
Delivery margin
(Revenue minus labor cost) divided by revenue.
This is the share of each client dollar left after paying for the time it took.
Labor cost
Hours worked times each person's cost rate (what an hour of their time costs you, including salary and overhead).
Effective hourly rate
Fee divided by hours actually worked.
A $6,000 project that took 85 hours earned about $71 per hour.
Utilization
The share of your team's paid hours spent on client work.
What good looks like: a common rule of thumb is 50%+ delivery margin across the agency and 60 to 70%+ per client. Source: Parakeeto
Set up client profitability in Rize (5 steps)
- Import your clients and projects. Bring them in from your existing tools or a CSV so time maps to the right client.
- Add a contract for each client. Pick the type (Retainer, Hourly, Hybrid or Fixed Fee), the fee, the hours it covers and the period.
- Set cost rates for each team member. This turns hours into labor cost so Rize can calculate margin.
- Let time roll in. Rize tracks time automatically and assigns it to clients and projects, and your team reviews and approves their own entries.
- Review margins and contract history. Open Profitability to see revenue, labor cost, margin and hours used vs covered for every client, and how each contract has trended month over month.
Weekly off-track report
Run this every Monday so you catch problems while there's still time to fix them.
Review all active client contracts for this week. Flag any client where: hours used are running ahead of the hours the fee covers for this point in the period; revision or rework time is piling up; or senior team members are spending a large share of time on a low-margin client. For each flagged client, show hours used vs covered, current delivery margin, the main cause, and one concrete next step for the account lead. List the clients that are on track in one line at the end. Keep it short and plain. No em dashes.
Monthly client profitability review
Run this at the start of each month to decide where to grow, what to fix and what to let go.
Review last month's profitability for every client. For each client show revenue, labor cost, delivery margin, effective hourly rate, hours used vs covered, and the trend vs the previous month. Group clients into three buckets: Grow (healthy margin, room to expand), Fix (margin slipping or below target, fixable with changes), and Let go (consistently unprofitable with no clear fix). End with recommended changes for each Fix client, choosing from: reprice at renewal, rescope the work, cap revision rounds, or move senior time to other work. Use a 60% delivery margin per client as the target. Keep it plain. No em dashes.
Put it on autopilot with Routines
Set up three Routines so the reports come to you:
- Weekly off-track alert to the account lead (every Monday)
- Monthly review to the owner (first business day of the month)
- Renewal prep 30 days before each contract renews, with margin history and a pricing recommendation
Three levers to fix an unprofitable client
- Charge more for the work (increase prices).
- Spend more of your team's time on client work (increase utilization).
- Deliver it with less time or lower cost (tighter scope, fewer revision rounds, the right person on the work).
Pricing conversation script
Use this when the data says a client needs a new price or a new scope. Lead with the work, not the margin.
Thanks for making time. We've loved working on [project], and we want to keep doing great work for you. We track our time closely, and over the last [3] months this work has taken about [X] hours a month against the [Y] hours our current agreement covers. Most of the extra time has gone into [revisions / new requests / reporting]. We don't want to cut corners, so we'd like to suggest two options. Option 1: keep the current scope and move the fee to [$new fee] to reflect the real hours. Option 2: keep the current fee and adjust the scope to [what changes, e.g. two revision rounds per asset]. Happy to walk through the time data together. Which works better for you?
Tips:
- Bring the data. Share a time report so the conversation is about facts, not feelings.
- Raise it at renewal or 30 days before, not mid-crisis.
- Always offer two options so the client chooses, rather than just hearing a price increase.
Free tool
The Rize Profit Calculator: plug in your fee, hours and team cost rates to see a client's margin in seconds.
Frequently asked questions
| Question | Answer |
|---|---|
| How do you calculate client profitability? | Subtract labor cost (hours worked times each person's cost rate) from the client's revenue, then divide by revenue. That's delivery margin, the share of each client dollar left after paying for the time it took. |
| What is a good delivery margin for an agency? | A common rule of thumb is 50%+ delivery margin across the agency and 60 to 70%+ per client. Average agency net profit is about 10%, and 15 to 20% has traditionally been considered healthy. |
| How do I know which clients are unprofitable? | Compare the hours used against the hours each fee covers, and check each client's delivery margin and effective hourly rate. The weekly off-track report flags clients running ahead of their hours while there's still time to fix them, and the monthly review sorts every client into Grow, Fix or Let go. |
| Do I need Rize to use this playbook? | No. The formulas and the pricing script work with any time data, and the Rize Profit Calculator is free. Rize automates the rest: it tracks time by client, calculates margins from your contracts and cost rates, and runs the weekly and monthly prompts for you. |