Built for: Owners of creative studios and agencies doing $1M to $20M a year who run their work in Teamwork and their books in QuickBooks.
What it answers: Which clients make you money once the team's hours are counted, whether the team is busy on the right work, where last year's profit went, and when cash gets tight.
See it live: Creative studio client margin demo · a made-up company with invented numbers
"Our biggest client is our best client, right?" Most studio owners I talk to assume so. The biggest retainer pays on time, and in QuickBooks it looks great. Then the year closes, revenue is up, profit is down, and nobody can say why.
The answer is almost always sitting in Teamwork. Here's how I'd walk an owner through it, using a sample dashboard we built for a made-up brand studio called Pelgrave: sixteen people, about $2.8M of fees, eight retainers for about two thirds of it, and a blended $185 an hour when they price work. They run projects in Teamwork Projects, client requests in Teamwork Desk, payroll in Gusto, deals in HubSpot and the books in QuickBooks.
QuickBooks knows what each client paid and which freelancer bills were coded to them. Sort by what's left after that, and Tervale Outdoor, Pelgrave's biggest retainer at $36K a month, comes out on top with about $297K a year.
That view is missing the biggest cost a studio has: its people.
Flip the switch to "QuickBooks + Teamwork". Every timelog in Teamwork Projects gets costed at what that person actually costs, using Gusto payroll (salary, taxes and benefits over the 1,880 hours a year they can work). Each month that labor cost posts to QuickBooks by customer and project through the API, so the client margin comes from the books, not a side spreadsheet. Now Tervale drops from first to last.
The retainer covers 185 hours a month. The team logged about 350. Tervale takes a quarter of the team's billable hours and pays about a sixth of the fees, so each hour earns about $102 against the $185 quote. It leaves about $38K of its $432K. Every other client leaves at least 40%.
Just under that chart, each retainer's margin sits beside its HubSpot deal, so the account manager sees that Tervale's renewal is at proposal while it's earning 9%. Click Comments and you're in the Teamwork thread on Tervale's account-plan task: the founder, the account director and the CFO already planning the renewal. A comment typed there posts to that Teamwork task, and replies come back to the dashboard. (In this sample nothing is sent.)
Pelgrave billed about 72% of its available time in Teamwork, a little under a 75% target. The trouble is where the hours went.
The senior designers, copywriter and producer run near 90%, with about a quarter of their week on Tervale. The two people hired this year bill under half their time. Meanwhile the studio paid freelance retouchers about $48K for work the bench could have done. That's the usual pattern: the busiest people are buried in one client, so you hire, and the overflow still goes to freelancers.
Profit fell from about $380K to $222K, from 14% of fees to 8%. Fees grew about $130K, but the two hires, raises and $96K more in freelancers cost more than that, and most of it traces back to Tervale.
About 2,900 hours of work went unbilled, roughly $540K at the studio's own rate. Teamwork Desk is where it started: 131 of Tervale's 214 Desk tickets this year were tagged out of scope, from twice the social posts in the SOW to a spring catalog and a trade-show booth nobody priced. Mirrowen Cider's packaging went eleven revision rounds against three. And Mavrin Bio's last $28K invoice was written off because phase 3 was agreed on a call and never got a change order.
The same Teamwork project can be shown two ways. The team view has all 150 of Tervale's tasks with SOW hours against logged hours. The client view filters it to the 21 tasks Tervale needs to see, with no hours or internal threads.
Retainers are billed in advance, so studios assume cash is fine. Pelgrave's isn't, every winter. The December bonus and the owner's draw go out, project billing is thin until January, and Maddrey Hotels pays its December invoice in February because it takes about 60 days on net 45 terms. The bank bottoms out around February 1 at about $48K, less than one payroll.
Underneath it, each freelancer bill is matched to the client payment that funds it. Most were covered because the client paid first. Twenty-five went out before the client paid, and $4K of them paid freelancers for Mavrin work that was never paid for. Paying freelancers when the client pays closes that gap.
None of those lands before the January low. For that, get Maddrey onto net 30 and ask for 50% deposits on new projects. Pull those four together on the page and next year's profit goes from about $92K to about $306K, and the bank stays above one payroll all winter.
My advice: have the Tervale conversation before the January invoice goes out, with the Teamwork hour log and the Desk tickets in hand.
SPRCHRGR has run on Teamwork since 2023, and we have a full API connection to Teamwork Projects and Teamwork Desk. We join it to QuickBooks, Gusto and HubSpot, keep the data in a secure warehouse that refreshes itself, post labor cost into QuickBooks by customer and project, and send comments from the dashboard straight onto your own Teamwork tasks. Then a CFO who works with agencies reads it with you every month.
That's CFOptimize for Agencies, and it starts with a free client margin check on your own books and hours. Book your free client margin check.
Mark
Pelgrave Studio is a made-up company, and its clients, people, Teamwork task numbers and every figure in the dashboard and this post are invented. The 75% billable target and $185 blended rate are illustrative. The sample dashboard doesn't connect to Teamwork, QuickBooks, Gusto or HubSpot. Nothing here is investment, legal or tax advice.