From enquiry to margin review. How to run jobs so you can answer at any moment what state they're in and what will be left on them - and why most companies know their revenue but not their profit.
There's a question most companies can't answer quickly: what did we actually earn on this job? Everyone knows the revenue - it's on the invoice. Margin requires joining two numbers that usually live in different tools.
This guide follows the whole life cycle of a job, from enquiry to review, and shows where in each phase the information gets lost that's missing at the end.
1. A job as a record, not a folder
The fundamental shift in thinking. A job isn't a folder on a drive or a row in a spreadsheet. It's a record that knows about everything belonging to it: the client, the quote, the dates, the hours logged, the documents, the correspondence and the invoice.
When it knows all that, margin is a subtraction of two numbers. When it doesn't, it's half a day in a spreadsheet - every month, from scratch.
This is precisely the difference between a task manager and a system. A task manager knows what has to be done. It doesn't know for whom, for how much, or what comes next.
The same task. Once on its own, once with context.
Nothing is added to the task itself. It simply finally knows which client, job, timesheet and invoice it belongs to.
In detail: A task manager isn't a system.
2. The phases of a job and what each produces
| Phase | What it produces | What most often gets lost |
|---|---|---|
| Enquiry | Contact, requirement, source | Where the enquiry came from |
| Quote | Scope, price, validity | What exactly was promised |
| Delivery | Tasks, hours, materials | Extra work nobody invoiced |
| Handover | Report, signature | Documentation on the job |
| Invoicing | Invoice, due date | Jobs that were never invoiced |
| Review | Margin | Everything above, together |
The last row depends on all the ones before it. Which is why profitability can't be “added afterwards” - either the data is collected as you go, or it doesn't exist.
3. What you actually need to measure
Surprisingly little. Three things, and all three already exist in the business:
What we invoiced (or the agreed price). One field on the job.
How many hours each person logged on this specific job. Not in monthly totals - on the job.
The internal rate for each role. Careful: not what you charge the client, but what that hour costs you. The honest calculation is annual employment cost including contributions divided by hours genuinely worked in a year. The result is noticeably higher than the gross hourly wage - and that is what a job has to cover.
In detail: Logging time on projects without spreadsheets.
4. What the calculation looks like
A model job, agreed price €7,200:
| Role | Hours | Internal rate | Cost |
|---|---|---|---|
| Creative | 62 h | €28 | €1,736 |
| Development | 104 h | €32 | €3,328 |
| Project management | 48 h | €19 | €912 |
| Total | 214 h | €5,976 |
That leaves €1,224, a margin of 17%. Before overhead, sales time, and any hours nobody logged.
Everyone knows revenue. Very few know margin.
€7,200 on the invoice looks fine. After 214 logged hours, 17% of it is left.
In detail: The agency that knows what it actually earned.
5. Three views worth having
Jobs below the line. A filter on running jobs where the margin has dropped under a set percentage. This view should be opened weekly, not quarterly.
Estimate vs. actual. How many hours you planned against how many there are. The gap tells you whether the problem started at quoting or at delivery - two completely different fixes.
Profitability by type of work. Margin summed across all jobs of the same kind. Almost every company discovers from this view that one of its services has been quietly subsidising the others.
In detail: Reporting with view columns and formulas.
6. What to do when the number comes out badly
A thin or negative margin usually has one of four causes, and each calls for a different response:
- Priced wrong. The fix is in the quote, not delivery. Having previous comparable jobs with real hours helps - which is exactly what a system gives you after a year.
- Scope creep. The client kept adding and nobody invoiced it. Fix: record extra work as separate line items at the time, not retrospectively.
- Inefficient delivery. It took longer than it should. That fix is inside the team.
- The wrong kind of job. Some work simply doesn't earn. Stop taking it, or price it differently.
The most common cause of a negative margin, though, is none of those four. It's unlogged hours - work nobody recorded shows up in the margin as profit, until somebody notices the team is at capacity while “everything is making money”.
7. What should happen by itself
Job management is one of the areas where automation pays back fastest:
- A finished job with no invoice → alert after three days.
- A missing timesheet → a Friday afternoon list to everyone who worked on the job.
- Margin below the line → alert the project manager the moment it happens, not at the end.
- Delivery completed → generate the handover report automatically from the job's data.
- An approaching deadline → a reminder several days ahead, not on the day.
In detail: Automating business processes and Generating contracts and quotes from data.
8. How to start if you're on spreadsheets today
An approach that won't disrupt operations:
- Build jobs and clients. Two databases, one relation. Nothing more.
- Add an “agreed price” field. One field, without which margin never exists.
- Turn on time tracking - but only on jobs, not on everything. Resistance from a team is almost always resistance to the tool, not to being measured; when a timesheet entry is one click on the task, it goes away.
- After a month, look at the first numbers. They'll be inaccurate. That's fine - they'll show you what's still missing.
- Only then add automations.
In detail: Migrating from Excel or Notion and A custom business system: a guide.
Common questions about job management and profitability
Do we have to change invoicing or accounting?
No. The accounting package stays where it is. To calculate margin the system only needs to know the agreed or invoiced amount on the job - one field.
How do we persuade the team to log time?
Best of all by making a timesheet entry one click on the task they're already working on, and by using the result for something. Time logging that leads nowhere is something people stop doing - and they're right.
What if we have retainer clients rather than jobs?
The principle is the same, you just evaluate a period instead of a single job. The monthly retainer against hours logged in that month. With retainers the result is often more surprising than with projects.
How accurate will the numbers be?
Inaccurate in month one, usable after three months, reliable after a year. Accuracy grows as the team gets used to logging. But even an inaccurate number beats none, because it shows direction.
Is it worth it for small jobs?
Not individually, but in aggregate yes. Small jobs tend to be the ones where margin disappears fastest, because the overhead per job is the same as on a large one. The only way to find out is to start measuring them.