5 min read

How to track billable vs non-billable hours

Which tasks you can charge for, a short set of reason codes for the rest, and how to read a month's numbers to see where the unpaid hours actually go.

Last updated November 6, 2026

To track billable and non-billable hours, log all your working time rather than the chargeable part alone, flag each entry billable or not, and give non-billable entries a short reason code. At month end you can then see how many hours earned money and where the others went.

What is the difference between billable and non-billable hours?

Billable hours are time you can charge to a client under your agreement with them. Non-billable hours are everything else you work, and that includes some client work as well as internal jobs such as sales and admin.

The agreement sets the line, so the same task can fall on different sides for different clients. A call that's chargeable on an hourly job can be included in the fee on a retainer.

Is this task billable? A decision table

Task Usually What decides it
Doing the agreed work Billable Nothing, this is the job
Calls and emails about the job Billable Some fees include a level of contact
Research for one client's job Billable General reading that helps every client isn't
Changes the client asked for Billable Whether they're outside the scope and agreed in writing
Fixing your own mistake Non-billable Nothing, the client shouldn't pay for this
Travel Depends Your quote. See billing for travel time
Writing a quote or proposal Non-billable A paid scoping stage is the exception
Learning a tool the job needs Usually non-billable Billable only if the client asked for it and agreed
Preparing and chasing invoices Non-billable Nothing
Staff meetings, training, admin Non-billable Nothing

For a task that isn't on the list, ask whether this client's job needed it, whether your agreement lets you charge for it, and whether you'd be comfortable describing it on a line of their invoice. A no to any of those makes it non-billable.

How do you set up the tracking?

Add two columns to your time log: Billable (Yes or No) and Reason. Keep the list of reasons short, because a list of twenty codes ends up with everything under "Other".

Reason Use it for Name the client?
Rework Fixing your own error Yes
Goodwill Extra work you chose not to charge Yes
Sales Quotes, proposals, meeting prospects If there is one
Admin Invoicing, bookkeeping, scheduling No
Training Courses, reading, practice No

Name the client on non-billable client work. Rework on a job is part of what that job really cost, and you'll want it when you price the next one.

Flag each entry when you log it, since the person doing the work knows best whether it was rework. If your columns are named ranges, a month's billable total in a spreadsheet is =SUMIFS(Hours, Month, "2026-03", Billable, "Yes"), and the same formula with Reason gives you each code.

A worked example: reading a month's numbers

Here's an invented example. A consultant who charges €90 an hour logs 160 hours in March.

Category Hours Share Value at €90 What to ask
Billable 104 65.00% €9,360 Did it all get invoiced?
Rework 8 5.00% €720 What went wrong, and on which job?
Goodwill 4 2.50% €360 Was it deliberate?
Sales 18 11.25% Is work coming in as a result?
Admin 16 10.00% What can be cut or handed over?
Training 10 6.25% Was it planned?
Total 160 100.00%

Rework and goodwill are the rows to read first. Together they're 12 hours of client work worth €1,080 at the normal rate, and they earned nothing. If you only log billable time, that figure doesn't exist.

The 65% is a share of hours logged. It feeds straight into a charge-out rate, but it isn't quite the same measure as utilisation, which is usually worked against available hours. The guide to utilisation versus billable hours explains the difference.

When does a billable hour become a write-down?

A billable hour becomes a write-down when you meant to charge for it and then decide to charge less. Non-billable time was never going to be charged, so the two should stay separate in your records.

Keep those hours flagged billable and record the reduction as a write-down at invoicing. If you quietly re-flag them as non-billable, the log can no longer show that the job overran. Write-down vs write-off covers how to record each one.

The mistakes that make the numbers useless

  • Logging only billable time. You get what you need for invoices and learn nothing about the rest of the week.
  • "Other" as a reason. If it's more than a line or two a month, you need a new code.
  • Aiming for zero non-billable time. Sales and training keep the business going. The aim is a sensible share.
  • Punishing people for the figure. Do that and non-billable time gets logged as billable, or stops being logged at all.

Separating billable time in ERPFlow

ERPFlow doesn't have a timer or timesheets today. Time tracking, including converting tracked time into invoices, is coming soon. A card in Projects has a typed Time spent field, and it has no billable flag, reason code or per-person report.

You can still split the time with boards, because totals add up per board. Keep chargeable work on boards linked to a customer, and put sales, admin, training and uncharged client work on an internal board with no customer. The customer's page then shows chargeable time for each linked board, with a total.

It's a convention rather than a report. Time on a card has no date, so a board total can't tell you what happened in March, and the worked example above still belongs in a spreadsheet. Billed hours only exist once somebody types them onto an invoice.

FAQ

Billable and non-billable hours: common questions

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

Contact us
Should I bother tracking non-billable hours?
Yes. Non-billable hours show where the rest of the working week goes. Without them, a business can see what it invoiced but not what rework, sales and admin cost it, and it has no way to set a charge-out rate on realistic billable hours.
Is time spent writing a quote billable?
Usually not. Writing a quote or proposal is normally the cost of winning the work, so it counts as non-billable sales time. The exception is a paid scoping stage that the client agreed to in advance, which is billable like any other work.
Are emails and phone calls with a client billable?
Usually, if they are about the job and the agreement charges by the hour. Some fixed-fee and retainer agreements include a level of contact in the fee, so check what yours says. Log the time either way, because it shows which clients take the most handling.
Can ERPFlow mark time as billable or non-billable?
No. Time spent on an ERPFlow project card is one typed figure with no billable flag or reason code. A workable convention is to keep chargeable work on boards linked to a customer and everything else on a separate internal board, because time totals add up per board.

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