Getting real KPIs out of PestRoutes (FieldRoutes): the numbers the built-in reports do not hand you

FieldRoutes holds the data. Turning it into per-tech, per-branch performance you can act on is a different job, and there are a couple of traps in the way.

5 min read

What FieldRoutes gives you, and what it does not

FieldRoutes, which used to be PestRoutes, is a strong system of record. Your appointments, tickets, subscriptions, and customers all live there, and that is exactly where they belong.

The built-in reporting is wide, not deep. It runs the business day to day. It does not hand you clean per-tech efficiency or a branch leaderboard you can coach off of. Digging that out yourself is where most operators either give up or build a spreadsheet that slowly starts lying to them without telling them.

The 1,000 record trap

This one gets almost everybody who pulls the data themselves. Ask for records the easy way and the response quietly stops at 1,000 rows. Your totals come back low. No error. No warning. You never find out the rest existed.

The fix is to pull the list of ids first with no cap, then go get the full records in batches. Skip it and your revenue and stop counts are short on any busy day, and now you are running the business on numbers that are just wrong.

Field revenue versus the books

There are two honest revenue numbers and they almost never match. Field revenue is appointment based, what a tech billed on the stops they ran. Book revenue is invoice based, what lands on your profit and loss.

The gap is usually an unassigned bucket of office, manual, and auto-billing invoices that never got tied to a field tech. Neither number is wrong. Knowing which one you are staring at, and why they are different, saves you a lot of pointless arguments about whose report is broken.

The quiet gotchas

A couple of specific traps that make homegrown dashboards report confident, wrong numbers:

  • Customer balance age comes back as zero from the search endpoint. To get real accounts receivable and ARR you have to bulk-fetch the full customer records, or every account looks paid up when it is not.
  • The API has a daily call budget. A naive nightly export can burn straight through it and start failing halfway, silently, so last night's numbers are half there and nothing said so.
PestMetrics handles all of it: dodges the 1,000 record cap, reconciles field revenue to your books to the dollar, pulls the real balance ages, respects the daily API budget, and dates every metric to the day the work actually happened. It sits on top of FieldRoutes. It does not replace it.

Common questions

Does PestMetrics replace FieldRoutes or PestRoutes?

No. FieldRoutes stays your system of record. PestMetrics sits on top of it and turns the data into per-tech and per-branch KPIs, scorecards, and branch analytics you can act on.

Does it work with both PestRoutes and FieldRoutes?

Yes. PestRoutes and FieldRoutes are the same platform under one name change, and the integration works with it either way.

How does it avoid undercounting from the API?

It pulls record ids first with no cap, then fetches the full records in batches, so busy days do not get silently cut off at 1,000 rows.

See these numbers on your own branches

PestMetrics auto-syncs with FieldRoutes and your time tracking and does the math for you, per tech and per branch, reconciled to your books.

Start a free trial

Keep reading