How to work out the real profitability of a creative project
Juan Carlos García
Responsable de Desarrollo de Negocio
In short
Real profitability is gross margin: revenue minus the cost of the hours actually logged against the work. That hourly cost is a person's full annual cost, meaning gross salary, employer contributions and overhead, divided by the hours they can genuinely bill in a year, which is always well below their contracted hours.
A project price is set in an afternoon. Its profitability is settled over the following three months.
Between those two things sits a calculation many agencies never finish, and not because it is hard: the arithmetic fits in a spreadsheet. What is missing is almost always the input, which is how many hours the work took and what an hour of each person is worth.
What does project profitability actually mean?
It is gross margin: the revenue a project brought in, minus the direct cost of the hours spent on it.
Gross margin = revenue - (hours logged × hourly cost of the person who logged them)
Three details that move the answer more than they look like they should.
- Revenue means what you invoiced for that project, not what the approved estimate said. A closing discount, a line the client refused to pay or an invoice that never went out all show up here and nowhere else.
- Hours logged means hours somebody recorded against a specific task. Hours nobody wrote down do not reduce the margin in your spreadsheet, but they do reduce the money in your bank account.
- Hourly cost is not one number for the whole agency. An art director and a junior designer do not cost the same, and a project staffed with the wrong mix eats the margin without adding a single hour.
Gross margin is not agency profit. Rent, software licences, management and everything else that is not billed to a client still have to come out of it. It is, however, the only number that tells you whether one particular project added or subtracted.
What does an hour of your team really cost?
Hourly cost = total annual cost of the person ÷ billable hours per year
The numerator is considerably larger than the salary and the denominator considerably smaller than the working year. Getting either wrong gives you a flattering hourly cost, and a flattering hourly cost makes loss-making projects look profitable on paper.
The figures below are made up
Every number in this section is an arithmetic example meant to show the mechanics of the calculation. They are not market data and not a reference for what any role costs. Replace each cell with your own agency's numbers, which is the only version of this that is worth anything.
The numerator: what belongs in someone's annual cost
| Item | Annual amount (made-up example) |
|---|---|
| Gross salary | €30,000 |
| Employer social security contributions (32 % in this example) | €9,600 |
| Allocated overhead | €7,200 |
| Total annual cost | €46,800 |
Gross salary is the easy part. The other two are the ones people forget.
Employer contributions are paid on top of the gross salary and never appear on the contract the employee signed. The rate depends on the contract type and the contribution group, so do not estimate it: take it from your agency's actual social security filings and work out the effective percentage over gross pay.
Allocated overhead is that person's share of running the agency: desk, hardware, software licences, training, and also the cost of the people who never bill a client, such as management and admin. The simple way to spread it is to add up the year's structural costs and divide them across the people who do bill hours.
If you run that split and the result looks high, that is the finding. Every billable hour on your team is holding up a structure that until now appeared in nobody's estimate.
The denominator: why billable hours are not contracted hours
This is where most agencies' maths falls apart. You take the annual cost, divide it by the contracted hours in a year, and get an hourly cost that looks sensible. It is not, because nobody bills their full working year.
| Item | Hours (made-up example) |
|---|---|
| Nominal year (52 weeks × 40 h) | 2,080 |
| Holiday (22 working days) | -176 |
| Public holidays (12 days) | -96 |
| Expected absence and sick leave | -40 |
| Hours actually at work | 1,768 |
| Training and learning | -60 |
| Internal agency work | -200 |
| Pitching and new business | -120 |
| Unassigned slack | -88 |
| Billable hours | 1,300 |
The first three deductions are calendar arithmetic and not up for debate: nobody on holiday or on sick leave bills anything, and everybody gets paid.
The next four are the interesting ones, because they are agency decisions and they can be measured.
- Internal work. Team meetings, process, templates, your own website, interviews, month-end. Real work that nobody pays for.
- Pitching and new business. Hours that go into estimates, pitches and sales meetings. An agency that wins one pitch in three is paying for three proposals per project it lands.
- Training. Time spent learning the new tool, which is not optional in a craft that changes every season.
- Slack. The gap between projects, the day the client goes quiet and the work stops. Setting it to zero assumes the agency runs at full load twelve months a year.
With the example figures, the cost per billable hour is €46,800 ÷ 1,300 h = €36/h. Divided instead by the 1,768 hours actually at work it would come out around €26.50/h, roughly 26 % lower, and every estimate built on that number would start life with the margin already spent.
The error repeats on every hour
An hourly cost that is 25 % too low does not produce a 25 % error in your margin. It produces a 25 % error on cost, which on thin-margin work is the difference between making money and discovering in December that you have spent the year working for your best client for free.
Why does the margin disappear between the proposal and delivery?
Because the proposal is priced with the hours you think it will take, and the margin is calculated with the hours it took. Here is the same project, at the same price, with three different endings.
| Scenario | Hours logged | Direct cost | Revenue | Gross margin | Margin |
|---|---|---|---|---|---|
| As estimated | 180 | €6,480 | €12,000 | €5,520 | 46 % |
| Two extra rounds of revisions | 260 | €9,360 | €12,000 | €2,640 | 22 % |
| Scope never nailed down | 340 | €12,240 | €12,000 | -€240 | -2 % |
Made-up figures again, using the €36 hourly cost calculated above. The price never moved. The only thing that changed was the hours.
Scope that grows without anybody negotiating it
"While you're at it, could you do a stories version too?" is a reasonable, quick and free request. Five reasonable, quick and free requests are a week of work.
The fix is not saying no to everything. It is having it in writing what the project includes and what counts as additional work. A creative brief that lists deliverables and formats turns every addition into a priced decision instead of a favour.
Revision rounds with no ceiling
On a large project, one round of revisions can cost as much as a production phase. If the proposal does not say how many rounds are included or what counts as a round, the client decides the number, and decides it out of your margin.
Capping it takes one sentence in the proposal: how many rounds are in, what happens after that, and who signs off. Especially who signs off, because the expensive round is never the second one. It is the one that arrives when somebody who has seen nothing so far finally looks.
Work that gets done and never logged
This is the hardest one to see, because it leaves no trace anywhere. The half-hour call, the Thursday evening tweak, the favour done without opening the task. If none of it is logged, the project looks more profitable than it was, and the next estimate is built on a comfortable lie that then repeats itself.
Which pricing model puts the risk on whom?
The billing model does not change what the work costs. It changes who pays when it costs more than planned.
| Model | Who carries the risk of overrun | When it fits | What breaks it |
|---|---|---|---|
| Time and materials | The client | Exploratory work, or scope that genuinely cannot be defined up front | With no agreed cap the client loses predictability and starts distrusting every timesheet |
| Fixed fee | The agency | Defined deliverables, known formats, capped sign-off rounds | Scope written in two lines and an unlimited number of revision rounds |
| Retainer | Shared | Ongoing relationships with reasonably steady volume | Months that borrow against the next one until the retainer funds twice the work that was agreed |
Fixed fee is the model clients understand without explanation, which is why they tend to ask for it, and it is also the one that hands the agency all of the risk. That is perfectly workable on one condition: that you know how many hours each type of work really takes, which you only learn by measuring the projects you already delivered.
On a retainer, review consumption month by month rather than at year end. Retainers go out of balance slowly, and by the time the imbalance is visible it has been there for months.
What do you need in place to calculate any of this?
Very little, but none of it is optional.
- Hours logged against the task, not against the project as a lump. "12 hours on the catalogue project" cannot tell you whether they went into design or into fixing copy the client was supposed to supply. At task level, it can.
- Hours logged the same day. Reconstructing the week on Friday afternoon produces round, false numbers, because nobody remembers Tuesday's call.
- An hourly cost attached to each person. Without it you only have hours, and hours from different roles cannot be added together.
- The project price stored where the hours are. If revenue lives in the invoicing system and hours live somewhere else, the calculation happens once a year and by then it decides nothing.
Points 3 and 4 do not live in the time tool: each person's hourly cost and the amount invoiced are your spreadsheet and your invoicing software. What a time tracking tool does solve is points 1 and 2: logging hours against the specific card, rather than against a project dropdown, is what turns this into a report instead of an archaeological dig. In Tasuki hours are recorded on the task somebody is working on, which is the level you can later roll up by project or by team member.
Logging time is not clocking in
Clocking in records the working day and is a legal requirement for employees in Spain. Time logging splits the hours worked across tasks and clients, and no employment regulation asks for it: it exists so you know what a project cost. Two separate records with two separate purposes, one answering to a labour inspection and the other answering to your margin.
The distinction matters when picking tools too, because clocking in and time tracking are separate features even though both of them measure hours. The guide to working time records in Spain covers what the regulation actually requires and what you have to keep.
How often should you look at the numbers?
A profitability report read after delivery helps you price the next project, and that is all. Useful, but too late for the one that was drifting.
Three moments that actually change decisions.
- Mid-project. If you have burned 70 % of the hours with half the work done, scope can still be renegotiated. At the end, it cannot.
- At close. Compare estimated hours against logged hours, phase by phase. That is where you find the phase you always get wrong, and it is nearly always the same one.
- By client, every quarter. The client who bills the most and the client who leaves the most margin are frequently not the same one, and you cannot tell them apart until hours are grouped by client.
Key takeaways
- Project profitability is gross margin: revenue minus the cost of the hours logged, valued at each role's hourly cost.
- Hourly cost is built on a person's total annual cost, employer contributions and overhead included, not on gross salary.
- The denominator is billable hours, not contracted hours. Holiday, public holidays, training, internal work and pitching all come off first.
- Profitable projects turn into losses through three routes: growing scope, uncapped revision rounds and work that never gets logged.
- The pricing model does not change the cost, it changes who absorbs it. On a fixed fee, that is entirely you.
- Without hours logged against tasks on the same day, everything above is a well-presented guess.
Start with one delivered project you trust: work out its real hourly cost, add up the hours logged and compare that with what you invoiced. If the answer surprises you, the calculation was never the problem. Not having it was.
For everything around it, project management for creative agencies covers how to organise the work this guide only measures.
Frequently asked questions
- What is the difference between gross margin and agency profit?
- A project's gross margin is its revenue minus the direct cost of the hours spent on it. Agency profit is what remains once you also subtract the structural costs that are never billed to a client: rent, licences, management and admin. A project can show a positive gross margin and still not be enough to carry the structure.
- How do you calculate a person's hourly cost?
- Divide their total annual cost by their billable hours in a year. Total annual cost includes gross salary, employer social security contributions and their share of overhead. Billable hours are the contracted year minus holiday, public holidays, absence, training, internal work and time spent pitching.
- Why can't I use contracted hours to calculate hourly cost?
- Because nobody bills their whole working year. Between holiday, public holidays, internal meetings, training, pitching and gaps between projects, a substantial part of the year is never charged to a client. Dividing annual cost by contracted hours produces an artificially low hourly cost, and every estimate built on it starts with the margin already spent.
- Is logging hours to a task the same as clocking in?
- No. Clocking in records each employee's working day and is a legal obligation in Spain. Time logging distributes the hours worked across tasks and clients and is required by no employment regulation: it exists so you know what each project cost. They are two separate records and it pays not to conflate them.
- Which billing model works best for a creative agency?
- It depends on who can absorb the risk of the work running long. Time and materials passes that risk to the client, fixed fee keeps it with the agency, and a retainer splits it. Fixed fee works well when the agency knows from measured experience how many hours each type of work takes, and badly when it guesses.
- How often should project profitability be reviewed?
- At minimum mid-project and at close. Mid-project you can still renegotiate scope if hours are drifting; at close you compare estimated against logged hours by phase so the next estimate is better. Reviewing profitability by client each quarter also tends to reveal which accounts bill a lot and leave little behind.
Related guides
View allReady to manage better?
Join hundreds of agencies already working with Tasuki.