5 min read

Time by task: where each person's hours went, month by month

How to build a time by task report from timesheet lines, what it looks like for a small team, how to read four months of it, and which task codes are worth having.

Last updated November 6, 2026

A time by task report shows how many hours each person spent on each kind of work in a given month, with totals. You build it from timesheet lines carrying a date, a person, a project and a task code, using a pivot table. Compare a few months and you see where the hours are drifting.

What does a time by task report look like?

A time by task report has tasks as rows, people as columns, and a total and percentage on the right. Here's an invented one for March, from a three-person design practice with one part-timer:

Task Anna Ben Carla Total Share
Drawings 62 96 60 218 49.5%
Revisions 24 40 34 98 22.3%
Proposals 30 0 10 40 9.1%
Client meetings 18 6 8 32 7.3%
Admin 14 8 8 30 6.8%
Site visits 12 10 0 22 5.0%
Total 160 160 120 440 100%

Reading across shows you who does what. Anna carries three-quarters of the proposals and more than half of the site visits. Reading down shows you how one person's month was spent. Ben spent a quarter of his on revisions.

Different jobs need different cuts of the same data, so don't confuse this report with budget vs actual hours, which compares hours against a job's plan, or with utilisation, which measures the billable share.

How do you read time by task month by month?

To read time by task month by month, put each task's share in a row and look for a steady trend rather than a single odd month. A share corrects for months with more or fewer hours, which raw hours don't.

Here's the same invented practice, following one task across four months:

Jan Feb Mar Apr
Total hours 430 410 440 420
Revisions, hours 52 61 98 109
Revisions, share 12.1% 14.9% 22.3% 26.0%

Revisions have more than doubled while total hours stayed flat. April's 109 hours is 57 more than January's 52. At an invented internal cost of €60 an hour, that's €3,420 of extra cost in one month, and on fixed-fee work nobody is paying for it. No job report shows this, because each individual job only looks slightly over.

The usual remedy is commercial. Get sign-off at each stage, and charge for changes made after it. The guide to additional services sets out how to agree and invoice them.

What you see What it often means What to try
Revisions rising Sign-offs are weak, or the brief changes after them Stage sign-offs, and charging for later changes
Proposals high, few wins You're quoting for work you won't get Qualify enquiries before writing them up
One person holds most meetings A bottleneck, or a job that depends on one person Bring someone else into client contact
Admin climbing on fee-earners Work that could be done by someone else Move it, or hire for it
A task almost nobody uses The code isn't useful Merge it

These are starting points, not diagnoses. Ask the person before you decide what a number means.

How do you build a time by task report?

You build a time by task report by keeping one row per timesheet line and summarising them, never by typing totals into a monthly table. A flat list can be cut any way later, whereas a summary can't be taken apart again.

Date Month Person Project Task Hours
02/03/2026 2026-03 Anna P-114 Drawings 4.5
02/03/2026 2026-03 Anna P-118 Client meetings 1.5
02/03/2026 2026-03 Ben P-114 Revisions 7.0
03/03/2026 2026-03 Carla Internal Admin 1.0

The Month column is a formula, such as =TEXT(A2,"yyyy-mm"), so nobody types it. Then either insert a pivot table with Task as rows, Person as columns, Hours as values and Month as a filter, or use a formula for each cell:

=SUMIFS(Hours, Person, "Anna", Task, "Drawings", Month, "2026-03")

Use a dropdown for the task column. A pivot table treats "Revisions", "revisions" and "Revision" as different tasks, and that does more damage to these reports than anything else. The team timesheet template has a weekly layout to collect these lines from.

How many task codes should you have?

Between 6 and 12 task codes, shared across all projects, is a sensible range for a small firm. The test for each code is whether you can name a decision it would change. "Revisions" passes, because a high number changes how you sign off stages. "Printing" usually fails, because you won't do anything differently whatever it says.

Use the same codes on every project, and keep the project in its own column. A code like "Riverside drawings" mixes the two up, and you'll never be able to add up drawings across jobs. Include an Admin code, or that time will be hidden inside whichever client job people happened to have open. Then leave the list alone for a few months, since a code you rename halfway through breaks the comparison you're building.

Getting time by task out of ERPFlow

ERPFlow has no time by task report and no per-person time reports. ERPFlow doesn't have a timer or timesheets today. Time tracking, including converting tracked time into invoices, is coming soon, but that doesn't cover a report like this one, so the method above stays in a spreadsheet.

The nearest thing today is the time spent field on a card in Projects, typed as hours and minutes. If each card is one task, you get a total per task. The board list totals time per project, and the customer's page totals it across their boards.

You can also export cards as CSV, with title, description, project, column, deadline and time spent in minutes. The file doesn't include assignees or dates, because a card holds one running total rather than dated entries. So you can see time per card, but not who spent it, and not in which month. To get a rough monthly figure per card, export at each month end and subtract the previous file's minutes from the current one's.

FAQ

Time by task reports: common questions

Didn't find your answer here? We're happy to help.

Contact us
What's the difference between time by task and time by project?
Time by project shows which job the hours went to, and time by task shows what kind of work they were spent on. A firm needs both, because a job can be on budget overall while revisions quietly take a growing share of every project. Both reports come from the same timesheet lines.
Can I build a time by task report in Excel?
Yes. A time by task report is a pivot table over timesheet lines, with tasks as rows, people as columns and month as a filter. It works in Excel or Google Sheets as long as every line has a date, a person, a task code and hours, and task codes are spelled the same way every time.
Should a time by task report show people by name?
Usually to the managers who act on it, and not to the whole team. Named figures help a manager spot a bottleneck, but posted publicly they turn into a league table, and people start logging to look good. Share team totals widely and keep the by-person view with the people responsible.
Should leave appear in a time by task report?
Usually no. Leaving out annual leave and public holidays means each task's share shows how working hours were spent, so a month with lots of holiday doesn't distort the comparison. Keep leave in the time off record, where it counts towards capacity.
Does ERPFlow have a time by task report?
No. ERPFlow has no time by task report and no per-person time report. Project cards in ERPFlow hold a total of time spent, which exports to CSV with the card's title and project but without the person or the date the time was spent.

Get started

Start free. Scale as you grow.

Run your whole business in one place — and pay for it like a founder, not an enterprise.

  • Start free
  • Setup in minutes
  • No trial clock