All posts

Should MSPs Bill in 15-Minute Increments? The Increment Matters Less Than Where You Round

The Vight Team6 min read

A user calls about a printer that won't connect. The tech walks them through it in four minutes. An hour later they call back because it dropped again: four more minutes. Before lunch the tech calls them to confirm it held: four more. Twelve minutes of work on one ticket. Bill it in 15-minute increments per time entry and the invoice says 45 minutes. Bill it in 15-minute increments per ticket per day and it says 15.

Same increment, three times the charge. That is the part most billing increment advice misses.

The short answer

Most MSPs bill hourly work in 15-minute increments, and some use 6-minute (tenth of an hour) increments, the way law firms do. Either is defensible. What actually decides your invoices, and how much your clients trust them, is three rules you set around the increment:

  1. What you round. Each time entry, or each ticket's total for the day.
  2. Where you round. On the technician's timesheet, or only on the billable hours.
  3. What the minimum is. One minimum for everything, or different minimums for remote and onsite work.

Get those right and the increment is a pricing detail. Get them wrong and a 6-minute increment can still produce invoices your client disputes.

Rule 1: round the ticket, not every entry

Per-entry rounding punishes the clients who call you most often about the same thing. Callbacks, voicemail chases and "is it working now?" checks are each a few minutes, and each one rounds up on its own.

Here is the printer example with each approach:

Approach Three 4-minute calls on one ticket Billed
15-minute increment, per entry 15 + 15 + 15 45 min
6-minute increment, per entry 6 + 6 + 6 18 min
15-minute increment, per ticket per day 12 rounded up once 15 min
6-minute increment, per ticket per day 12 rounded up once 12 min

Rounding the day's total on a ticket is the fairest version of a 15-minute increment, and it is the one a client can check against their own memory of the day. MSPs ask their PSA vendors for this kind of rule. One Gorelo feature request asks for billable time to be totaled per ticket, then given the minimum and rounded up once, instead of rounding every entry. Check what your PSA does before you promise it in a contract. If it only rounds per entry, short follow-ups are being billed as separate quarter-hours whether you meant to or not.

Rule 2: keep the timesheet in real minutes

Round billable hours. Do not round hours worked.

If the timesheet itself is rounded, every report built on it is wrong in the same direction. Utilization looks higher than it is. On flat-rate and per-user agreements, where nobody is invoiced from the time entries, a client looks more expensive to support than it really is, and you price the renewal from inflated numbers. (We wrote about using time entries to work out cost to serve in How Much Do Managed Service Providers Charge?.)

The PSAs support this split. Autotask has a system setting that rounds billable hours while leaving timesheet hours unrounded, and it notes that rounding otherwise applies to timesheets as well (Autotask help). Syncro has technicians log actual time and calculates billable time from the minimum and increment rules you set per labor type (Syncro). ConnectWise PSA can also round hours based on its system settings, so check whether it is rounding the entry itself or only what gets billed.

The rule for technicians is simple: log what happened, in real minutes, and let the PSA apply the billing rules. A tech who rounds in their head is setting your billing policy one entry at a time. Some round seven minutes up to fifteen. Others feel awkward billing seven minutes and log nothing.

Rule 3: set minimums by type of work, not one for everything

A one-hour minimum makes sense for an onsite visit, because the drive is real cost. It makes no sense for a two-minute remote password reset. A single minimum forces you to pick which of those to get wrong.

Set the minimum per work type or labor type:

  • Remote support: the increment only, or a small minimum such as 15 minutes.
  • Onsite: a higher minimum that covers travel, or bill travel as its own line.
  • After-hours and emergency: a minimum that reflects pulling someone off their evening, stated in the agreement.

This is a common enough request that PSAs build for it. Gorelo users asked for minimums per work type, with remote calls in 15-minute increments and onsite calls at a one-hour minimum, and the request is marked completed (Gorelo feedback). Syncro sets minimums per labor type for the same reason.

Put the rules in the agreement

Whatever you choose, write all three rules into the MSA or the hourly rate schedule: the increment, whether it applies per entry, per ticket or per visit, and the minimum for each kind of work. A client who reads "billed in 15-minute increments, rounded per ticket per day, one-hour minimum for onsite visits" has nothing to argue about when the invoice arrives. A client who reads "15-minute increments" and then sees three quarter-hours for one printer will call you, and that call is not billable either.

6 minutes or 15 minutes?

If you round per ticket per day, the choice matters much less, because short follow-ups are already folded together. A few practical tests:

  • Choose 15 minutes if most of your hourly work is longer remote sessions and onsite visits, and your clients are used to quarter-hour invoices.
  • Choose 6 minutes if a lot of your billable work is short phone fixes for hourly or block-hour clients, and you want invoices that track the work closely.
  • Either way, keep the increment the same across clients. Different increments for different clients is how billing mistakes start.

The increment only applies to time that gets logged

None of this matters for work that never becomes a time entry. The four-minute call that was fixed before anyone opened a ticket, the callback handled from memory, the voicemail chase: these are exactly the short pieces of work the rounding rules are about, and they are the most likely to go unlogged. We covered where that time goes in MSP Time Tracking: The Leak Is at the Phone, Not the Timer.

Vight closes that gap for calls. It pulls each recorded call from your phone system, matches it to the client and ticket, and posts a note and a time entry to the ticket in ConnectWise, Autotask, HaloPSA or Syncro. The entry uses the call's actual start and end, with optional buffer minutes for wrap-up that you set, so your PSA has real minutes to apply your billing rules to. A team that logs its own time can have Vight post the note only. See how calls reach the ticket on Phone to PSA.

If your short calls are disappearing before the increment ever gets a chance to round them, book a demo and we will show you what a day of calls looks like as time entries in your PSA.