What's New: A Complete Timesheet Reporting Suite

If your business runs on labour, every hour your team logs is either revenue, opportunity, or a leak. This release brings nine new reports to Reports → Timesheets that make every one of those hours visible — from monthly billing right through to where time is quietly being lost.

[SCREENSHOT]
The new Timesheets section in the Reports menu, fully expanded showing all four cards — Billing & Revenue, Compliance & Data Quality, Utilisation, Profitability.

The suite is organised around the four questions every services business asks every month:


Billing & Revenue

What did we sell, and what should we still bill?

Timesheet Monthly Billing by Project / Employee

A single view of the month's revenue picture. Projects are listed with total billable and total hours. Expand any project to see each employee's contribution; expand an employee to see the individual timesheets behind their numbers. Use the chevrons either side of the month picker to flick through your month-end review in seconds.

[SCREENSHOT]
The expanded view showing a project row → expanded employees → expanded individual timesheets for one employee.

Unbilled WIP Ageing

Billable work that hasn't been invoiced yet, aged into 0–30 / 31–60 / 61–90 / 91+ day buckets per project. The 91+ column is highlighted in red — that's the money most likely to be left on the table. Click any project to see the individual unbilled entries behind the totals.

[SCREENSHOT]
The aged buckets view, ideally showing a project with values in the 91+ column highlighted red.

Profitability

Which jobs are actually making money on labour?

Project Labour Margin

Labour revenue (invoiced timesheet lines) minus labour cost (timesheets.totalcost) per project, with margin $ and margin %. Negative margins are flagged in red, low margins in amber — at a glance you'll see which projects are quietly bleeding even though hours are being clocked.

[SCREENSHOT]
A row showing a project in red (negative margin) sitting next to a healthy green-margin project.

Effective Bill Rate

Average dollars-per-hour realised on invoiced labour, per project. Surfaces silent discounting: if your standard rate is $150 and a project is clocking $112/hr realised, that gap is a conversation worth having. A blended rate across all selected projects sits in the footer.

[SCREENSHOT]
The table with the blended rate footer visible, ideally showing rate variation across projects.

Project Run-Rate vs Budget

Cumulative labour spend against the project's budgeted revenue and cost (read from jobs.estimated_revenue and jobs.total_cost). Status flags every project as OK, Tight (≥80%), Over budget or No budget set — particularly important for fixed-price work where margin erosion can hide until the job is closed.

[SCREENSHOT]
Mix of statuses, ideally including one "Over budget" red status.

Utilisation

Is the team productive enough to hit margin?

Employee Utilization

Billable hours vs available hours per employee for the month. Available hours default to 38/week (override in the filter row for part-timers or longer working weeks). Utilisation % is colour-graded — green ≥75%, amber 50–75%, red <50% — and there's a blended figure in the footer so you can see how the whole team is tracking.

[SCREENSHOT]
A team view with a mix of green / amber / red utilisation %.

Billable vs Non-Billable Mix

Per-employee breakdown of how time is being spent — billable vs non-billable hours over a date range, with a department drill-down so you can see where non-billable time is going (admin, internal, training, etc.).

[SCREENSHOT]
A staff row expanded to show the per-department breakdown beneath it.

Compliance & Data Quality

Can we trust the numbers above?

The reports above are only useful if the timesheet data underneath them is complete and approved. These two reports keep the input clean.

Outstanding Approvals Ageing

Timesheets pending approval past their work date, grouped by employee + project. Days outstanding turn amber at 7 days and red at 14. Drill into a row to see exactly which entries are stuck.

[SCREENSHOT]
A few rows with red 14+ day ageing, drilled-down to show entries.

Missing Timesheets

Employees who logged less than the threshold hours on workdays (Mon–Fri by default, configurable). Each missing day links straight through to "Add timesheet" so managers can chase entries in two clicks. Department-filtered runs only include staff who actually work in that department.

[SCREENSHOT]
A list of missing days with the "Add timesheet" link visible.

How to use the suite

Every report in the suite shares the same conventions, so once you've learned one you've learned them all:

[SCREENSHOT]
A close-up of the standard filter row showing multi-selects, month picker with chevrons, Run / CSV buttons.

Where to find it

Reports → Inventory/Sales/Timesheets menu → expand the Timesheets accordion. Each report's link now sits under a short description of what it does, so you can find the right report without opening five tabs.

[SCREENSHOT]
The Timesheets accordion expanded showing the four cards (Billing & Revenue, Compliance & Data Quality, Utilisation, Profitability) with the description text under each link.

A note on real data

These reports lean on a few assumptions that are worth knowing about up front:

If anything looks off when these go live, the Missing Timesheets and Outstanding Approvals Ageing reports are the fastest way to confirm whether it's a data-quality issue or a report bug.


Coming up

This release lays the foundation. The next round will look at per-employee bill-rate cards (so Effective Bill Rate can compare against an expected rate, not just an average) and timesheet edit history for audit and dispute resolution. Let us know which would be most useful — your feedback shapes the build order.

Questions or feedback? Reply to this email or drop a note in the support portal.