Field service task records

What this means in HVAC

“HVAC service software” and “field service management software” are the same search from two directions: the office wants the customer list, the calendar and the invoices in one place, and the technician wants the job, the equipment history and a way to add photos, notes and a signature from the driveway, with or without signal. This page follows that path from the first day (T-01: sign up, import 25 customers with their service locations, schedule the first job), through a dispatch change (T-07), to the phone in the field (T-09).

Day one

The recorded run from import to the first scheduled job took 15 minutes in Jobber and 35 in ServiceM8 (sign-up excluded), and the import is where they differ. Jobber’s importer mapped all twelve columns on its own and produced exactly 25 clients and 30 properties from our 31-row file. TestedT-01 ServiceM8 merged rows that shared a customer name into one client without warning and kept only the last address; 31 rows became 25 clients, and the first job’s address had to be typed again because the imported billing address is not offered as the job site. TestedT-01 Inviting the three technicians took about a minute each in ServiceM8; Jobber’s invitations were not timed.

The change of plan

An emergency call moved from one technician to another in a few clicks in both products, and neither notified the bumped customer on its own. Jobber’s reschedule notice is a manual send. TestedT-07 ServiceM8 flags the conflict when you force it; in our run the displaced job then dropped out of the day view. TestedT-07 The scheduling and dispatch page has the full run, including progress billing on a three-visit job.

The phone

T-09 puts a technician on an iPhone with one job: open it, look for the unit’s history, add a note, a photo, a checklist and a signature, then do the same in airplane mode and check that everything reaches the office once the signal is back. Both apps kept working offline and neither lost anything. What separates them is what happens on reconnection. Jobber showed an “Offline, items queued to sync” banner, and the offline note, its photo and the completed visit appeared on the office web within about a minute of the signal returning, with no restart. TestedT-09 ServiceM8 saved the offline note, photo, checklist item and signoff on the phone, but nothing uploaded for about ten minutes after reconnecting, and the offline note did not even appear in the phone’s own job diary until we force-closed and reopened the app; after that, everything synced with no loss or duplicates. TestedT-09 A technician who trusts ServiceM8 to sync on its own may not see offline work until the next app restart.

Two smaller findings. The office sees the upload time, not the capture time, on offline notes in both products, while photos keep their original timestamp. And searching a job number in Jobber’s app did not find the job in our test; the search returned the customer and the address instead.

Equipment history on the phone is covered on the CRM page: Jobber has no equipment record, and ServiceM8’s asset showed its serial and model but an empty history, because per-unit records need a QR label on the unit first.

Both T-09 runs were on an iPhone, so iOS is the only mobile platform with published evidence for now. ServiceM8’s pricing page describes its full app as iOS and points Android users to a separate “ServiceM8 Lite”, which we have not tested. TestedT-16

Signup & importFirst job scheduledDispatch boardPhone in the fieldJob closedT-01 · CSVT-01T-07 · emergencyT-09 · offlineT-09 · signed

What the tasks require

Rubric: Field app · Scheduling & dispatch

Products and task evidence

Housecall Pro advertises a 14-day free trial, but its terms say the service is offered to users who reside in the US or Canada, and when we signed up on September 28, 2026 the onboarding form did not accept our Spanish phone number. Our lab is in Spain, so we have not run our tasks on it. What this page shows comes from public sources and is marked as documented, not tested.

Housecall Pro: insufficient evidence for these tasks.

Kickserv: insufficient evidence for these tasks.

ServiceTitan: insufficient evidence for these tasks.

Workiz: insufficient evidence for these tasks.

Price checked
Not verified
Last tested
Last edited

Pinned: Housecall Pro · Jobber · Kickserv. All tasks are shown on desktop; narrow screens start with differences. These selected results are available without JavaScript.

Task results for the pinned products. Missing results mean insufficient evidence.
TaskHousecall ProJobberKickserv
T-01
Signup and import
Housecall Pro

Not tested

UnverifiedT-01
Jobber

Pass

TestedT-01

Kickserv

Not tested

UnverifiedT-01
T-07
Emergency dispatch
Housecall Pro

Not tested

UnverifiedT-07
Jobber

Partial

TestedT-07

Kickserv

Not tested

UnverifiedT-07
T-09
Field visit, offline
Housecall Pro

Not tested

UnverifiedT-09
Jobber

Pass

TestedT-09

Kickserv

Not tested

UnverifiedT-09

Profile verdicts

Owner-operator

View this operation profile

Small residential shop

View this operation profile

Mixed service + projects

View this operation profile

Commercial-leaning

View this operation profile

Recorded limitations

  • Your payer is often not the owner of the service location: in our trial Jobber billed the client that owns the property, so a property manager's unit needed a workaround that either duplicates the location or demotes the tenant to a contact (T-03).
  • You track individual units by serial number: Jobber had no equipment record in our trial, and history lives on the property, not the unit (T-04).
  • Your customer list already has property managers or landlords: the importer takes one row per property and cannot link the payer, so that structure is rebuilt by hand after import (T-01, T-03).
  • You expect the app's search to find a job by its number: in our test it returned the customer and the address, not the job (T-09).
  • You want the displaced customer told automatically when an emergency bumps their slot: the reschedule notice is a manual send (T-07).
  • You need card payments working on day one: in our trial only cash, check and manual payment records were available, because Jobber Payments was not set up on the account (T-10).
  • You are counting on the lowest plan: the features we tested put a contractor on Grow, $199 a month for one person at the time of our check (T-16).
  • You need per-unit history right away: the register showed our condenser with its serial, but nothing can be recorded against it until a ServiceM8 QR label is scanned on the unit (T-04).
  • You expect the payer and site structure out of the box: as the product comes, billing another address is set per job and every unit address is retyped; the Client Sites add-on support described is untested by us (T-03).
  • You expect offline work to sync on its own: in our test nothing uploaded after reconnecting until the app was closed and reopened, so a technician who waits for the sync may not see offline work (T-09).
  • You bill replacements as percentages: the deposit is a hand-priced line that needs an item code, not a share of the job (T-08).
  • Your customer list has several rows per customer: the importer merged same-name rows without warning and kept only the last address (T-01).
  • You want equipment history without labels: each unit needs a ServiceM8 QR label scanned on site before any service can be recorded against it (T-04).
  • Your office forces emergencies into full slots: in our run the displaced job dropped out of the day view, with no conflict marker on the board (T-07).
  • You want card payments without extra setup: with no gateway active, the phone only recorded a card or cash amount by hand (T-10).
  • You work from an Android phone: the full app is iOS, and the Android app is a separate "Lite" version we have not tested (T-16).

Related tool

Demo scorecard