Billable Hours Tracking For MSPs And IT Teams: How To Do It

Billable hours tracking for IT work: what counts as billable, how to log time on tickets, rounding policy, utilization, realization, and a cost calculator.

Billable hours tracking in IT means logging the actual minutes of client work on the ticket while you work, then sorting each entry as billable, included, or internal. Billable hours are the part the client pays for separately. At invoice time a written billing policy turns them into invoiced quantities.

We build SherpaDesk, a helpdesk and PSA (professional services automation) a small IT team can run alone. No contract. No implementation project. No dedicated admin. Base Camp is $45 per agent per month ($40 billed annually), and the first agent is free. The method below works in any tool that ties a time entry to a ticket.

What Are Billable Hours In IT Support?

Definition

Billable hours are time spent working that you can charge money for. In IT support, they're the minutes a technician spends on a client's ticket, project, or device that the contract lets you charge for separately. The contract also sets the rate.

The hard part in IT is the word "can." The same 30 minutes on a printer queue is billable for one client, included in the monthly fee for another, and internal overhead when it's your own office printer.

A time sheet records the work time an employee spends in a reporting period, and firms that bill by time use it as their detailed record of billable hours. In an IT shop, the time sheet is the sum of time entries on tickets, each with a date, a technician, a client, a duration, and a note.

Billable hours in IT work come in four shapes:

  • Ticket time: remote support, phone troubleshooting, on-site visits.
  • Project time: a server migration, a firewall replacement, an office move.
  • Scheduled work: onboarding a new hire, offboarding a leaver.
  • After-hours time: emergency calls, often at a higher rate.

Billable vs. Non-Billable Hours In IT Work

Every entry lands in one of three buckets:

BucketWhat goes in it
Billable hoursClient work the contract lets you charge for separately.
Included client workClient work you don't charge for separately. Note the reason on the entry: included in the contract, warranty rework on your own mistake, or free work you agreed to.
Internal workWork for your own business, such as meetings, training, your own systems, and sales calls.

Included and internal work together are your non-billable hours. Keeping them apart matters: included work is client load, internal work isn't.

For an internal IT team, departments, schools, and sites are the clients. Work for a department is client work: billable if you run a chargeback, otherwise included in the IT budget. The IT team's own administration is internal.

Billable, included, or internal? Common IT work by contract type
WorkHourly clientFlat-fee clientInternal IT team
Password reset, user account fixBillableIncludedDepartment work: billable under chargeback, else included
New-hire onboardingBillableIncluded or billable per hire, as the agreement saysDepartment work
After-hours emergencyBillable, often at a higher rateBillable if the agreement names after-hours work as extraDepartment work; may earn comp time
Project (migration, office move)BillableUsually billable separately from the feeDepartment project
Travel to a client siteBillable if the agreement says soBillable if the agreement says soDepartment work, per your chargeback policy
Rework on your own mistakeIncluded (warranty rework)Included (warranty rework)Department work, included
Team meeting, training, internal toolsInternalInternalInternal
Sales call, quote, proposalInternalInternalNot applicable

Your agreement decides which column applies. Log included work on the ticket even though it never becomes an invoice line: it's the only way to see what each flat-fee client costs you.

One r/msp member uses a two-way split: billable time is "time spent delivering services to the client" versus "time spent on internal projects, ops meetings, upskilling, etc." That counts included work as billable; this guide keeps it apart. Track billable hours and non-billable hours alike, each in its own bucket.

Why Tracking Billable Hours Matters

What an unlogged hour costs depends on the contract. On hourly work and on overage above a flat fee, it's a potentially unbilled amount: the minutes times your rate, if the agreement lets you charge them. The technician is paid either way.

On a prepaid block, the client has already paid. An unlogged hour never comes off the block, so the balance looks bigger than it is.

On included work, an unlogged hour hides what that flat-fee client really costs you, the number you need at renewal. Our Managed Services Pricing guide shows how to set rates and fees from it.

Lost billable hours are rarely a skipped project. They're the ten-minute call, the follow-up email, the remote session nobody started a timer for. One r/msp poster noted that a ticket-activity timer misses it when technicians open "a screen connect session for an hour and talk on the phone."

Tracking billable hours also protects the client relationship. A line with a date, a ticket number, and a plain note is easy to approve. "Support, 6 hours" invites a dispute.

What You Need Before You Start

Billable hours tracking fails most often before the first timer starts, because nobody decided what the entries mean. Settle four things first:

  1. A rate card. Your standard hourly rate, your after-hours rate, and any project or on-site rate.
  2. A contract record for every client. Hourly, prepaid block, flat fee with overage, or flat fee only, with included hours and exceptions such as after-hours work or projects.
  3. A short list of services. Remote support, on-site support, project work, after-hours, internal. Each service carries a rate. Five to eight is plenty for a small team.
  4. A written billing policy. The increment, the direction (up, nearest, or down), any minimum, and the unit it applies to: entry, ticket, or visit. More below.

Our Guide To PSA Software explains where that ticket-to-invoice chain lives.

How To Set Up Billable Hours Tracking On Tickets

Six steps run from the first minute to the invoice. One example follows the whole way: ticket 4821, an hourly client, a shared drive that won't map for a new hire. The original actual minutes are kept; status changes and corrections are documented with a note.

  1. Capture actual minutes while you work

    Start timing when work starts. Link the entry to the ticket. When an interruption arrives, stop or switch the timer to the other ticket, then come back. Record the actual minutes and a note the client can read.

    Example: 5 minutes on 4821, a 6-minute call on ticket 4830, 5 more minutes on 4821, then 10 minutes testing access. Ticket 4821 has three entries: 5, 5, and 10 minutes, 20 in total.

    Common mistake: letting a timer run through the interruption, so the same 6 minutes sit on two tickets.

  2. Set a provisional status: billable, included, or internal

    The technician who did the work marks the entry billable, included, or internal; step 5 confirms it against the contract. Log internal time too. As one r/msp member put it, "Techs should be tracking all of their time anyway, client facing or not…"

    Example: all three 4821 entries are marked billable; the 4830 call is marked by its own client's contract.

    Common mistake: logging only billable hours. Billable utilization stays correct, but nobody can say where the rest of the week went.

  3. Check the contract, service, and rate

    Once a week, a lead or the owner reviews the billable hours and other entries: right client, the contract in force that day, the right service and rate. Check exceptions too, such as after-hours work and projects.

    Example: 4821 sits on the client's hourly contract, service Remote Support, $100 an hour.

    Common mistake: using last year's rate because the contract changed and the service didn't.

  4. Check overlaps and true duplicates

    A true duplicate is the same work logged twice by the same technician, or one technician with two entries in the same minutes. Two technicians on the same call are not a duplicate: each did work. Decide from the agreement whether the second technician's time is billable; if you don't charge it, mark it included and note why.

    Example: a second technician joined the 10-minute access test on 4821 to help. The agreement doesn't charge for a second person, so the entry stays, marked included, with the note "second technician, not charged."

    Common mistake: deleting the second technician's entry. Its cost disappears from your records.

  5. Check included hours, overage, and block balances

    Do this after step 4, so a duplicate can't inflate usage. If you fix entries later, recalculate. On a flat fee with overage, the status depends on what the client has used this period, which the technician can't see at entry time. Entries past the included hours become billable overage. On a prepaid block, check the hours left.

    Example: a flat-fee client with overage and 10 included hours has used 11.5 this month. The last 1.5 hours of entries change from included to billable overage.

    Common mistake: marking all flat-fee work included without checking the cap.

  6. Apply the billing policy and create the invoice

    Now the increment, direction, minimum, and unit from your written policy turn the actual minutes into an invoiced quantity. The entries keep their actual minutes. Any write-down goes on the invoice as a discount line with a note, so realization shows it.

    Example: policy "6-minute steps, rounded up, per ticket." Ticket 4821 has 20 actual minutes, so the invoice line is 0.4 hours of Remote Support: $40.00.

    Common mistake: editing the time entries to match the invoice. Your records then show invoiced quantities, not the work.

Rounding And Minimum Increments Are A Policy Choice

Rounding decides how much of a short task reaches the invoice. A billing policy needs four parts: the increment (for example 6 or 15 minutes), the direction (up, nearest, or down), and any minimum. The fourth is the unit it applies to: each entry, each ticket, or each on-site visit.

Example: ticket 4821 from the steps, three entries of 5, 5, and 10 minutes (20 actual minutes) at $100 an hour.

One ticket, 20 actual minutes, six billing policies
PolicyInvoiced timeInvoiced amountvs. actual
Actual minutes20 min$33.330%
6-minute steps, up, per ticket24 min$40.00+20%
15-minute steps, up, per ticket30 min$50.00+50%
15-minute steps, up, per entry45 min$75.00+125%
15-minute steps, nearest, per entry15 min$25.00−25%
One-hour minimum, per on-site visit60 min$100.00+200%

Rounding up per entry punishes split work: the same 20 minutes bill 30 or 45 minutes. Rounding to the nearest step per entry isn't neutral either. Each 5-minute entry rounds to zero every time, so repeated short work drops off the invoice.

Rounding also moves realization. If you value billable hours at actual minutes, 24 invoiced minutes on 20 actual is 120% billing realization for that ticket. That's the policy at work, not better collection, so report it separately.

One r/msp post gave a 20-minute task billed as 30 minutes under 15-minute increments as its example. A reply called rounding "part of the hourly rate," adding that "it add a 5 to 20%." If rounding is part of your price, say so in the agreement.

Recommendation

Choose actual minutes in every time entry, and one stated billing policy at invoice. Name the increment, direction, minimum, and unit, such as "6-minute steps, rounded up, per ticket; one-hour minimum per on-site visit."

Consider another option if your clients already accept 15-minute billing and your rate was set with it in mind. Keep it, and name the unit in the agreement.

The clause belongs in your agreement. Our Managed Services Agreement outline shows where billing terms sit.

Subscribe to the SherpaDesk Blog.
Get Tips for Running IT With a Small Team.

Loading form…

How To Turn Time Into Invoices

Billable hours become money in one of five ways, set by the client's contract. What changes is which entries reach the invoice.

  • Hourly (time and materials). Billable hours become invoice lines after the billing policy. Our Break/Fix vs. Managed Services guide compares this model with a monthly fee.
  • Prepaid block. Billable entries draw the block down. Step 5 checks the balance before each invoice.
  • Flat fee with overage. Included entries stay off the invoice until the included hours run out; billable hours past the cap, or outside scope, are invoiced at the contract rate.
  • Flat fee only. No hourly lines for work without separate charges. The included hours show whether the fee covers your cost.
  • Internal chargeback. Allocate department time and its cost by your internal policy.

Keep billable hours for all five in one system with the tickets. One r/msp member described the alternative bluntly: "Otherwise when you start band-aiding things together you will for sure miss things."

For a flat-fee client, divide the monthly fee by the included hours logged. Example: a $1,500 fee and 25 hours is $60 an hour. That number is a signal to check the contract against your costs, not a diagnosis; the pricing guide shows how.

Run this list before each invoice batch.

ChecklistBefore you send this month's invoices

How To Measure It: Utilization And Realization

Measure billable hours and the other buckets on actual minutes, never on invoiced quantities. Available hours are paid working hours minus holidays and leave; unlogged hours are whatever is left.

Billable utilization in this guide means billable hours, at actual minutes, divided by available hours. It fits hourly, block, and overage work; a mostly flat-fee shop scores low by design.

Client-work load is billable hours plus included client work, divided by available hours. It shows how much of the week goes to clients, whatever the contract.

Log completeness is all logged hours divided by available hours. Missing meeting entries don't change billable utilization: 30 billable hours in a 40-hour week is 75% either way. What you lose is the breakdown of the other 10 hours.

Realization is the share of billable hours, valued at standard rates, that you actually bill. Billing realization is the amount billed divided by the standard billing amount; collection realization is cash collected divided by the amount billed. Example: 120 billable hours at $100 is $12,000. If write-downs leave $10,800 on the invoices, billing realization is 90%. Rounding pushes it up, as shown above.

Example week for one technician with 40 available hours: 12 billable hours, 16 included, 6 internal, 6 unlogged.

Four numbers from one week of time entries
MetricFormulaExample weekA low number means
Billable utilizationBillable hours ÷ available30%Few billable hours, or mostly flat-fee clients
Client-work load(Billable hours + included) ÷ available70%Too much internal work, or time not logged
Log completenessAll logged ÷ available85%Part of the week has no record
Billing realizationBilled amount ÷ (billable hours × standard rate)n/aWrite-downs, discounts, or wrong rates

We found no neutral benchmark for IT utilization, so set targets from your own data. Practitioners measure different things. One r/msp member logs long internal meetings on an admin ticket and expects "at least 32 hours of logged time" a week, and calls that 80%. Another wants "5 to 5.5 hours a day" working on tickets, because more "can lead to burn out." Neither is billable utilization as defined here. Measure per person over a month.

What Unlogged Minutes Cost You

The weekly review turns up billable hours with no entry: a call in the phone log, a remote session, an email reply. Add up those minutes for one month. The calculator gives the value of that time at your rate.

Example: 300 minutes of unlogged billable hours in October at $100 an hour is $500. On hourly or overage work, that's a potentially unbilled amount. On a prepaid block, it's time not yet drawn from the block, so the balance reads high.

Value of one month's unlogged billable time

$500value of the time at your rate

minutes ÷ 60 × rate. Your numbers stay in the browser.

Common Mistakes In Tracking Billable Hours

Most problems with tracking billable hours come from habits, not tools.

Do
  • Switch the timer on interruptions.
  • Log included and internal time like billable hours.
Don't
  • Rebuild the week from calendar invites on Friday.
  • Count tickets closed as a measure of workload.

Ticket counts mislead because tickets differ in size. As one r/msp member put it, "Tickets closed is a lousy metric. % of the day working tickets is better." Keep attendance separate from billing, too. Another member put it plainly: "your psa is a billing tool, not a system of record for hours worked."

How this works in SherpaDesk

Time on the ticket, invoices from the same entries

It's a helpdesk and PSA a small IT team can run alone, and the billing is in the product. You log time against tickets, projects, accounts, and assets. You enter it with Add Time, the calendar Timesheet, or the Start/Stop timer on your technician Home page. Replying from your inbox? Add "cmd time 0.25" and the ticket gets 15 minutes.

Each time log carries billable or non-billable hours. Each service can have its own time increment and minimum loggable time. You can require a note on every time log. Uninvoiced time and expenses collect in "Ready to Invoice", organized by contract.

Ready to Invoice: uninvoiced time from tickets, grouped by account contract. Demo workspace

Base Camp is $45 per agent per month ($40 billed annually), and your first agent is free, forever. A three-technician MSP pays for two agents: $90 a month. No contract, no onboarding fee, 14 days free, no card.

Who this isn't for

If you want monitoring and patching in the same product as your billing, this isn't that product. We don't build RMM. We integrate with yours, and the stack stays yours.

Frequently Asked Questions

What are billable hours?

For an MSP, they're the hours of client work a contract lets you charge for separately, such as hourly tickets, projects, and overage. Work included in a flat fee, warranty rework, and internal meetings aren't billable hours, but they still belong on the record. See the Billable vs. Non-Billable Table.

Is travel time billable for IT work?

Only if your agreement says so. Travel can be billed at the full rate, at a reduced rate, or folded into an on-site minimum. Pick one, write it into the agreement, and set travel up as its own service so it shows separately on the invoice. Log the time either way: you pay the technician for it.

Should IT time be rounded up to 15 minutes?

It's a pricing decision, not a rule. Keep actual minutes in the time entries and apply the increment at invoice. Name the direction, any minimum, and the unit: per entry, per ticket, or per visit. Rounding 20 minutes up per ticket bills 30; per entry, the same work can bill 45. See Rounding.

What is a good utilization rate for IT technicians?

We found no neutral benchmark. Billable utilization in this article is billable hours, at actual minutes, over available hours; set its target from your own data. Practitioner targets count other things. One r/msp member expects 32 logged hours a week, including internal meetings. Another wants 5 to 5.5 hours a day on tickets. See Measure It.

What is the difference between utilization and realization?

Utilization is about time: billable hours, at actual minutes, divided by available hours. Realization is about money: what you billed divided by what those billable hours were worth at your standard rates. Write-downs lower realization; rounding up raises it. Utilization doesn't move either way.

Should internal IT teams track billable hours?

Yes, even with no invoice. Treat departments, schools, or sites as clients. Department work is billable if you run a chargeback, otherwise included in the IT budget; the team's own administration is internal. The split shows who uses technician time and supports a budget request or a hiring case.

About the author
Patrick Clements Co-founder & CEO, SherpaDesk

Patrick co-founded SherpaDesk and has led it as CEO since 2013. He has worked with IT service providers since 1998, first on network projects for schools and government offices, then on the helpdesk software their technicians use every day.

Published Oct 29, 2026 by

Run a help desk your clients can set their watch by

Tickets, SLAs, time tracking and invoicing in one place. Your first agent is free, with no contract.