The $4,500 in Revenue That Never Showed Up on the Bonus Report

9

min read

15.8.26

A small window-cleaning company's bonus program was quietly missing about a third of its own revenue: recurring storefront accounts that never showed up on the report technicians were being measured against. Here's how finding that gap turned a $0 team bonus into a $50 one, and fixed a revenue split that wasn't fair to begin with.

The Report Everyone Trusted Was Missing A Third Of The Month

Small service businesses tend to run their incentive programs off whatever report is easiest to pull, and most of the time that's fine. The report becomes the source of truth almost by default, not because anyone chose it carefully, but because it's the one that's already sitting there every week. The risk shows up when that report has a blind spot nobody's checked for, because a blind spot in the easy report becomes a blind spot in every paycheck built on top of it.

That's what was happening at a small window-cleaning company running a lean crew of technicians on Jobber. The company had built a straightforward bonus program: hit a revenue bar for the pay period as a team, and everyone shares in a small bucket bonus on top of their regular pay. Simple to explain, simple to run, and entirely dependent on one number, total revenue for the period, pulled from Jobber's visits report.

Quick facts

  • Small window-cleaning company running a lean technician crew on Jobber
  • Team bonus program pays a bucket bonus once period revenue clears a set bar
  • Jobber's visits report was silently excluding all recurring and storefront contract revenue
  • Two-week period revenue recalculated from about $14,500 to about $19,000 once recurring jobs were included
  • The corrected number moved the team bonus from $0 to a full $50 payout

The problem was that the visits report, the one everyone was using to check whether the bonus bar had been cleared, was quietly excluding an entire category of the company's business: recurring and storefront contracts, the kind of steady monthly accounts that don't generate a fresh visit record the same way a one-time job does. Those accounts were real, billed, collected revenue. They just weren't showing up anywhere the bonus calculation was looking. For a two-week pay period running from the 13th through the 25th, the visits report showed total revenue of roughly $14,500. The real number, once every recurring account was accounted for, was closer to $19,000, a gap of about $4,500 that had nothing to do with the crew's actual performance and everything to do with which report happened to be plugged into the bonus math.

A second problem was sitting underneath the first one. When more than one technician worked the same job, the company's default approach was to split that job's revenue evenly between them, regardless of how many hours each person actually put in. That works fine when two techs split a job close to fifty-fifty. It stops working the moment one tech spends an hour on a job and a teammate spends three, because the even split credits both of them with the same revenue-per-hour number even though only one of them earned it. Before anything got corrected, that combination of problems produced revenue-per-hour figures that looked wildly inconsistent between technicians, close to $96 an hour for one, $56 for another, $58 for a third, numbers that reflected reporting gaps more than actual differences in how hard anyone was working.

Essential KPI Guide [Free Download]: We put together a guide + template of the top 20 essential KPIs used by thousands of successful businesses to boost efficiency and increase profits. Get the guide now →  

Chasing Down Where The Missing $4,500 Actually Went

Finding a gap like this takes patience more than sophistication. There was no single broken formula to fix. There was a report that structurally couldn't see certain revenue, and the only way to close that gap was to go find the missing accounts by hand, one at a time, and cross-check them against a separate report built for a different purpose.

The owner and the ShareWillow team went through the company's recurring-jobs report, the one Jobber generates for fixed-price contracts rather than one-off visits, and started pulling out the accounts the visits report had missed. A larger commercial account worth $1,990 for the period. A handful of smaller storefront clients, each contributing modest but real revenue: a coffee shop, a wealth management office, an auto broker, a market, a supply company, each in the range of $30 to $90 for the period. None of these were large individually. Together, they were the difference between missing the team's bonus bar and clearing it.

Revenue reconciliation showing recurring storefront accounts added back into a two-week revenue total, moving it from roughly 14,500 to roughly 19,000 dollars
Same two weeks, two different totals, once the recurring accounts were added back in.

That process also fixed the revenue-split problem, because the two fixes were related. Once the team rebuilt the underlying logic to pull each technician's actual hours from Jobber's timesheet report, rather than assuming an even split, job revenue could be allocated proportionally: a technician who worked three hours on a job earned three times the credit of a teammate who worked one, instead of both walking away with an identical number that didn't reflect what either of them actually did. That single change made the revenue-per-hour metric mean something again, instead of being an artifact of how many people happened to be assigned to a job that week.

The company also put a process fix in place to keep the gap from reopening every period: any job revenue that wasn't already captured in Jobber had to be submitted by Sunday night, ahead of payroll processing, instead of trickling in after the fact. And rather than keep manually reconciling storefront accounts against a second report every two weeks, the recommendation going forward was to enter those recurring storefront clients directly into Jobber's recurring-jobs system, so the revenue flows through automatically instead of depending on someone remembering to go looking for it. A small operational habit, but the kind that keeps a fixed reporting gap from quietly reappearing the next time nobody double-checks.

It's a useful reminder for any small service business running an incentive program off a single default report: the report doesn't know what it's missing. A visits report built to track one-off jobs has no reason to flag that it's excluding recurring accounts, because from its own logic, there's nothing wrong. It's simply not built to see that category of revenue at all. The only way to catch a gap like that is to occasionally step outside the default report and ask a blunter question: does this number match what we actually billed and collected? For a small shop watching every dollar, that's not a hypothetical exercise. A third of a pay period's revenue sitting outside the number everyone's using to decide whether the team earns a bonus is the kind of gap that's worth checking for at any size of business, not just this one.

Profit sharing

made simple.

Give your team a stake in the company’s success. ShareWillow helps you create and manage profit-sharing programs that motivate employees and drive business results.

Get a demo

What A $50 Bonus Was Actually Worth

It would be easy to read the outcome here and shrug. A $50 team bonus isn't a dramatic number, and it's not meant to be. This is a small company with a lean crew, and the bonus program was built to match that scale from the start. What matters isn't the size of the number. It's whether the number the team is measured against actually reflects the work they did.

Before the fix, that period was on track to pay a $0 bucket bonus, not because the crew had a slow two weeks, but because roughly $4,500 of real revenue was sitting in a report the bonus math never looked at. Once the recurring accounts were added back in and the period total moved from about $14,500 to about $19,000, the period cleared the bar, and the owner approved the full $50 payout. That's the whole story in one line: the team didn't have a bad period. The report had a blind spot, and once it was fixed, the number caught up to reality.

A team bonus bar moving from a missed $0 payout to a cleared $50 payout once revenue reporting was corrected
The bucket bonus, before and after the report was fixed.

There's a version of this story that plays out at nearly every scale of trades and field service business, whether the number at stake is $50 or $50,000. A bonus program is only as trustworthy as the report it's built on, and most reports were never designed with an incentive plan in mind. They were built to track jobs, or visits, or invoices, for their own operational purpose, and an incentive program that borrows one of those reports inherits whatever blind spots came with it. That's true whether you're running a performance pay platform like ShareWillow or tracking bonuses by hand in a spreadsheet. The report doesn't announce what it's leaving out. Someone has to go check.

What To Check Before You Trust Your Own Revenue Report

  • List every type of recurring or contract revenue your business bills, then confirm each one actually shows up in whatever report your bonus or commission plan is built on.
  • If more than one person works the same job, check whether revenue is split evenly or by actual hours worked. An even split only works when the hours are actually even.
  • Pick one past pay period and manually add up revenue from your invoicing or accounting system. Compare it to what your incentive report showed for the same window. If the two don't match, find out why before the next payout, not after.

Small businesses don't have the luxury of a finance team auditing every report line by line, which is exactly why gaps like this one tend to survive so long once they show up. The fix here wasn't complicated once someone looked for it. It just required treating the report we already use as a starting point to double-check, not a fact to take on faith. If your own team's bonus depends on a number pulled from field service software, it's worth spending twenty minutes tracing that number back to what actually got billed. Explore how ShareWillow builds incentive pay directly from real job and revenue data, or read how one multi-trade company moved off a paper calendar entirely to see a different version of the same underlying problem: a bonus plan is only as good as the data feeding it.

Conclusion

A window-cleaning company's bonus report was quietly missing its recurring accounts. Finding the gap turned a $0 team bonus into a real one, and the fix was checking the number, not the crew.

Create incentives
that
drive results

You shouldn't need complex equity plans to align your team. ShareWillow makes it simple to create transparent profit-sharing programs that motivate employees and grow your business.

See the product

Incentive plans to help
small businesses thrive.

"I was able to leverage the knowledge of the ShareWillow team to learn how other companies were designing their bonus plans. The template was extremely helpful."

Brian Tustin
Owner, First Rate Movers

Download for Free

Related Articles

Editorial illustration of a shingled roof with one highlighted tile being inspected by a technician with a magnifying glass before a full crew rollout

Why This Roofing Company Piloted Incentive Pay With Just One Technician

A roofing and siding contractor was ready to roll out technician incentive pay across the whole team, until warranty jobs, gutter estimates with no hours attached, and a mismatch between two different hour-tracking systems made the data too unreliable to trust. Here's why they chose to pilot the plan with one technician instead of launching company-wide on schedule.

Continue reading

August 15, 2026

Motivate employees to act like owners, without complicated equity

Book a performance pay audit today, and let us show you how ShareWillow can help your business increase efficiency, reduce callbacks, and grow profits.