Jobber says you made $48k. QuickBooks says $41k. Which one is lying?

Month-end. You open Jobber in one tab and QuickBooks in the other. Jobber says you booked $48,000 in June. QuickBooks says you made $41,000. Same month, same shop, a $7,000 hole between them, and you’re the one who has to decide which number goes on the loan application in the morning. So you do what most owners do. You assume you broke something in the bookkeeping, and you resolve to fix it later, which means never.

Here’s the part nobody sells you: you didn’t break anything. Neither number is lying. They are answering two different questions, and the gap between them is one of the most useful things you can read about your own business, if you know how to take it apart.

Neither tool is wrong. They measure different dollars.

Owners talk about “revenue” as if it’s one number. It’s four, and each one lives in a different place.

Booked is the work you sold. A job scheduled, quoted, or marked done in Jobber counts here the moment it exists. This is the number that tells you whether the phone is ringing and the crews are full.

Invoiced is the work you’ve billed. The moment an invoice goes out, the dollar moves from “sold” to “owed to me.” Jobber tracks this too, but the count only matches “booked” if you invoice every job the day you close it, which no shop does.

Collected is the money in the bank. This is what QuickBooks shows you on a cash basis, and it’s the number that makes payroll. A dollar isn’t collected until the customer actually pays, which can be 45 days after the truck left.

Recognized is the accountant’s number, the revenue your books claim for the period on an accrual basis. It usually tracks invoiced, with adjustments your bookkeeper makes at close.

Jobber is built to report the first two, because Jobber’s job is the work, and it’s clear enough about what its reports can and can’t show you. QuickBooks is built to report the last two, because QuickBooks’ job is the money. Ask a field-service tool for collected revenue and it can only estimate. Ask your books what you booked and they never saw the job. The $7,000 isn’t an error. It’s the distance between “sold” and “paid,” and every growing shop carries some of it.

Northside’s $7,200, taken apart

Let me walk one all the way through. Northside Comfort is our sample shop, a fictional HVAC and plumbing business we use so every number here is one you can check against the sample digest. In June, Northside’s Jobber showed $48,200 booked. QuickBooks showed $41,000 collected. The delta is $7,200. Here is every dollar of it.

  • Invoiced but not yet paid: $5,100. Real jobs, real invoices, sent and sitting. This is money Northside earned and will almost certainly collect, it just hasn’t arrived. It’s the current-month slice of the $11,700 Northside is owed across all of AR. Jobber counts it as booked. QuickBooks, on cash basis, won’t count it until the check clears.
  • Closed in Jobber, never invoiced: $2,900. Two jobs the crew finished and marked done, and nobody in the office ever cut the invoice. This is the dangerous pile. It isn’t late money; it’s invisible money. It will never appear in QuickBooks, and it will never age onto a report that makes anyone chase it, because no invoice exists to age.
  • QuickBooks-only income: minus $800. A supplier rebate deposited straight to the operating account and booked as income. No Jobber job behind it, so it lifts QuickBooks without touching the booked number. It pushes the gap the other way.

$5,100 plus $2,900 minus $800 is $7,200. The whole delta, explained, no rounding and no mystery. Once you can name every line like this, the two tabs stop arguing. Of the three, the $2,900 in uninvoiced work is the one I’d fix before lunch. The rest is timing. That one is lost revenue wearing a disguise.

The 20-minute reconciliation, by hand

You don’t need us to do this. You need one quiet slot and the same steps every month. Here’s the whole routine, and it works with nothing but the two logins you already pay for.

  1. Fix one month and one basis (2 min). Same start and end date in both tools. Set QuickBooks to cash basis for this exercise, because “money in the bank” is the number you can feel.
  2. Pull the booked total from Jobber (3 min). Run the reporting summary for the month. Write the number down. That’s your top line.
  3. Pull income from QuickBooks (3 min). Profit and Loss, same dates, cash basis. Write it down. The difference between this and step 2 is your gap to explain.
  4. Account for invoiced-not-paid (5 min). Open the AR Aging Summary in QuickBooks. The total owed against this month’s invoices is pile one. It should cover the biggest slice of the gap.
  5. Hunt the uninvoiced jobs (5 min). In Jobber, filter for jobs closed in the month with no invoice attached. This is the pile nobody looks at. Add it up. That’s pile two, and it’s the one worth acting on today.
  6. Reconcile the remainder (2 min). Whatever’s left is QuickBooks-only income: rebates, transfers, a deposit with no job. If the three piles add up to your gap, you’re done. If they don’t, you’ve found a real bookkeeping question worth handing your accountant.

Twenty minutes, once a month. If you’d rather spend the twenty minutes on anything else, that’s a fair reason to keep reading. But the routine stands on its own.

A steady gap is fine. A growing one is a symptom.

The size of the gap matters less than its direction. A shop that runs Net 30 will always show a gap roughly the size of a month’s invoices, and that’s healthy. It means you’re billing and collecting on a normal cycle.

Watch the trend instead. If the gap holds steady as a share of revenue, it’s just the timing of getting paid, and you can leave it alone. If it grows three months running, one of two things is slipping. Either your AR is aging, in which case the fix is on the phone and the overdue-invoice routine is where to start. Or your invoicing discipline is breaking, jobs closing faster than the office bills them, in which case pile two from the reconciliation is quietly getting bigger every month. Same growing gap, two very different problems, and the reconciliation is what tells them apart.

Why your software never sent you this post

I’ll be straight about the reason no vendor has written this for you. Every tool in your stack needs you to believe its number is the real one. Jobber wants booked revenue to be the headline, because booked revenue is Jobber doing its job well. QuickBooks wants recognized revenue to be the headline, for the same reason. A post that says “actually, both of your dashboards are showing you a partial truth, and here’s the third view that reconciles them” is a post that only makes sense coming from something that reads both tools at once and is loyal to neither. The gaps between field-service reporting and the books are exactly the seams where the uninvoiced work hides.

That’s the seat we decided to build from. We sit across your connected tools, Jobber and Housecall Pro and QuickBooks together, and our job is the reconciliation, not the defense of any one number. It means we’ll sometimes tell you the flattering number on your Jobber dashboard isn’t the one to take to the bank. A single-platform vendor structurally cannot say that. We think that’s exactly why it’s worth saying. For the same reason, we won’t pretend the direction to move a gap is obvious when it isn’t; a gap that’s grown for one month is a question, not a verdict.

If you’d rather it reconciled itself

You can run the 20 minutes by hand every month, and plenty of good operators will, and they should. But if you’d rather the reconciliation just ran itself and landed in your inbox every Monday, the delta already taken apart into its three piles with each line traced back to the invoice or job it came from, that’s the thing we built. The fastest way to see it is on numbers you recognize.

Book a demo and I’ll run your first reconciliation with you, live, on the sample shop or your own books. I do the walkthroughs myself. If it turns out your two tabs already agree and you don’t need us, I’ll tell you that too.

Not ready for a call? Get early access and I’ll email you when a spot opens.

Questions owners ask

Why do Jobber and QuickBooks show different revenue numbers?

Because they answer different questions. Jobber reports the work you booked and closed: jobs scheduled, completed, and quoted. QuickBooks reports what your books recognize, and on a cash basis that means money actually collected. Between the two sit invoices you sent but haven't been paid for, jobs you finished but never invoiced, and income booked straight in QuickBooks with no matching job. The gap is normal. A gap that grows month over month is not.

How do I reconcile Jobber and QuickBooks revenue?

Pick one month and one basis. Pull total booked revenue from Jobber and total income from QuickBooks for the same dates, then account for the difference in three piles: invoiced-but-unpaid (it's in your AR aging), closed-but-never-invoiced (jobs done in Jobber with no invoice created), and QuickBooks-only income (deposits or rebates with no job behind them). When those three piles explain the whole delta, you're reconciled. Budget about 20 minutes the first time.

Which number should I give my bank or accountant?

For a loan application or a tax return, use the QuickBooks number on the basis your accountant files, usually accrual for the return and whatever your lender asks for. Jobber's booked number is for running the shop, not for reporting to outsiders. The two are not competing versions of the truth; they measure different stages of the same dollar, from booked to collected.

Written by Guidepost

Guidepost reads the numbers a home-service shop already has across its tools, then sends the few that need attention, each traced back to its source. The whole job is telling a real signal from noise: the line between a number worth acting on and one that’s only worth a closer look. More about Guidepost →

See it watch your numbers

Guidepost reads your Jobber, Housecall Pro, and QuickBooks numbers and tells you what needs attention, in plain English. Want to see the output first? Look at a sample digest.