Supahandi
Sign Up
EstimatingEstimatingHow to chargeJob PricingPressure WashingProfit

How to Estimate Job Time and Stop Underbidding: Track Estimate vs. Actual

Why service jobs run long, how to build a time estimate from tasks instead of a gut number, and how tracking estimate vs. actual hours and materials makes every quote tighter, whatever your trade.

SupaHandi Team
10/24/2026
9 min read

You quote a job at a day and a half. It takes three. By the time you add up the materials, the extra store runs, and the fuel, you are not sure you made anything at all. Whether you are fixing bathrooms, washing houses, cleaning homes, or mowing lawns, most home-service pros have had that job, and the usual advice is “you’ll get better with experience.”

Experience helps, but only if it gets written down. If you never compare what you estimated to what actually happened, the same mistake shows up on the next quote. This guide shows you how to build a time estimate from tasks instead of a gut number, where underbids usually come from, and how to track estimate versus actual so your quotes get tighter every month.

Why Service Pros Underbid (Even When They Know the Work)

Underbidding is rarely about not knowing how to do the job. It usually comes from the parts of the job that do not feel like work while you are quoting it:

  • Setup and cleanup: Unloading, laying drop cloths, moving furniture, hooking up hoses, protecting plants, sweeping, and loading the truck again.
  • Material and supply runs: The trip for the part you did not know you needed, or the extra chemicals, paint, or bags you ran out of.
  • Site surprises: Rotted subfloor, heavier buildup than it looked, a yard that has not been touched in a month, a home with twice the clutter you expected.
  • Customer time: Walkthroughs, questions, decisions, and the final look-over.
  • Drive time: Getting there and back every day or every visit, not just once.
  • Optimism: Quoting the time it takes when everything goes right.

None of these are rare. They happen on most jobs. If your estimate leaves them out, the job runs long and the extra hours come out of your pay.

Build the Time Estimate From Tasks, Not One Big Guess

“About a day and a half” or “a couple of hours” is one guess. If it is wrong, the whole quote is wrong. Breaking the job into tasks forces you to think through each step, and it shows you which step was off when you review the job later.

Step 1: List every task, including the boring ones

Write down each step from arrival to driving away. For a repair, that might be setup, demo, install, finish, and cleanup. For a house wash, it is setup, pre-treat, washing each side, rinsing, and packing up. If you need a supply run, that is a task too.

Step 2: Put hours on each task

Estimate each task separately. Small numbers are easier to guess accurately than one large number.

Step 3: Add a contingency for unknowns

If you are opening walls, working on an older home, quoting a first-time clean, or doing work you have not done many times, add a buffer. Many pros use somewhere around 10% to 25% depending on how much is unknown. Pick a number based on your own history once you have it (more on that below).

Step 4: Price the hours, then add materials and markup

Multiply total hours by your hourly rate, add materials and supplies with your markup, and round to a clean number. If you have not worked out your hourly rate from your real costs, start with how much to charge for your services. The same math applies across trades.

Worked Example: The Same Job, Quoted Two Ways

Here is an illustrative example of a small bathroom refresh: replacing a vanity, toilet, and light fixture, and patching and painting the walls. The numbers are made up to show the method.

Gut quote: “About a day and a half.” Materials $650, labor guessed at $750, total $1,400.

Task-based estimate (using a $75/hour rate for this example):

Task Estimated hours
Setup, floor protection, shut-offs 1.0
Remove old vanity, toilet, and fixture 2.0
Install vanity, top, faucet, and drain 3.5
Install toilet 1.5
Install light fixture 1.0
Patch walls (with dry time between coats) 2.5
Paint walls and trim 3.0
Material run 1.0
Cleanup, haul-away, walkthrough 1.5
Subtotal 17.0
Contingency (15%, older home) 2.5
Total 19.5 hours
  • Labor: 19.5 hours × $75 = $1,462.50
  • Materials: $650, marked up 20% = $780
  • Total: $2,242.50, rounded to $2,250

The task list shows that this is not a day-and-a-half job. Patching and painting alone need dry time, which usually means coming back the next day. In this example, the gut quote left about $850 on the table before the job even started.

The customer might still say no to $2,250. That is fine. A clear “no” costs you less than a “yes” that leaves you working three days for a day and a half of pay.

Track Estimate vs. Actual on Every Job

The task list is only half the system. The other half is checking it against what really happened. That is how “experience” turns into numbers you can quote from.

What to record while the job is running

  • Hours by day or visit: Start, stop, and drive time. A note in your phone is enough to start.
  • Hours by task, roughly: You do not need a stopwatch. “Pre-treating took most of the first hour” is useful.
  • Every receipt, tied to the job: Including the second and third supply runs. The routine in how to track receipts and material expenses from the truck keeps this from piling up.
  • What changed: Hidden conditions, customer additions, and anything that would explain an overrun.

What to compare when the job is done

Line up the estimate and the actuals side by side. Here is a second illustrative example from a different trade: a two-story house wash quoted at 3 hours of labor plus $40 in chemicals and fuel, priced at $450. Imagine it came in like this:

Estimated Actual Difference
Labor hours (including setup and pack-up) 3.0 4.5 +1.5
Chemicals and fuel $40 $65 +$25
Effective hourly (price minus supplies, divided by hours) $136.67 $85.56 −$51.11

Then ask one question: where did the extra time go? In this example, maybe the north side had heavy mildew that needed a second treatment, and setup took longer because the spigot was on the far side of the house. Neither is a disaster, but if it happens on every two-story house, your house-wash price is too low.

The same review works for any trade. A cleaner might find that first-time deep cleans run well over a recurring clean of the same home. A lawn crew might find that one neighborhood’s lots take longer than the square footage suggests. If the overrun came from something the customer added, that should have been a change order. How to handle change orders covers how to price and approve extra work before you do it.

Turn Your Actuals Into Better Estimates

After a handful of similar jobs, patterns show up. You might find that vanity installs reliably take you 4 hours, not 3.5, that two-story washes always need an extra hour, or that move-out cleans take longer than standard cleans of the same size. Use that.

  • Keep a simple task-hours list. For your common tasks or job types, write down the hours they actually take you. Update it after each job.
  • Set your contingency from history. If your jobs run about 10% over on average, a 10% buffer is based on data, not a guess.
  • Find the job types that lose money. If one kind of work keeps running over, either raise its price or stop taking it.
  • Check profit per hour, not just per job. A $2,250 job that takes 22 hours earns less per hour than one that takes 19.5. Revenue is not profit explains why this matters more than the invoice total.

Protect the Estimate Before You Start

Even a good estimate can be wrecked by a vague quote. A few habits keep a solid estimate from turning into a loss:

  • Write inclusions and exclusions. “Wash siding and windows from the ground; gutters not included” or “Patch and paint walls; ceiling not included” prevents the “I thought that was part of it” conversation.
  • Name your assumptions. “Assumes subfloor is sound” or “Assumes home is picked up before the clean.”
  • Separate labor and materials in your own records. Even if the customer sees one price, you need to know which side ran over.
  • Do not price on the spot when you are unsure. Measure, take photos, and send the written quote that night. Rushing a number while the customer waits is one of the easiest ways to underbid.

Frequently Asked Questions

How do I know if I undercharged on a job?

Subtract your actual material and supply costs, fuel, and any other job costs from what you charged, then divide by the hours you actually spent, including drive time and supply runs. If that number is below the hourly rate you need to cover your overhead and pay yourself, you undercharged.

How much contingency should I add to an estimate?

It depends on how much is unknown. Work you have done many times on familiar homes needs less buffer than opening walls in an older house or quoting a first-time clean you have only seen in photos. Once you have tracked several jobs, set your contingency from how far over your jobs actually run.

Should I charge more if a job takes longer than I estimated?

Not if the extra time came from your estimating mistake. That is your cost to absorb, and the lesson for the next quote. If it came from a customer request or a hidden condition you documented, price it as a change order and get approval before doing the extra work.

Do I need software to track estimate vs. actual?

No. A notebook or spreadsheet works if you use it on every job. The important part is recording hours and receipts while the job is happening, not trying to remember them a week later.

Make Every Job Teach You Something

Underbidding stops when your estimates come from your own numbers instead of a hopeful guess. Break jobs into tasks, add a contingency, track actual hours and receipts while you work, and compare them when the job is done. After a few months of that, “I think it’s a day and a half” turns into a number you can trust, whatever your trade.

SupaHandi keeps the estimate, receipts, hours, invoice, and job profit on the same job, so you can see estimate versus actual without building a spreadsheet. See the estimate, invoice, expense, and profit features, or start tracking your next job free.

Published on 10/24/2026 by SupaHandi Team

Ready to Streamline Your Business?

Join thousands of service professionals who are already using Supahandi to manage their business more efficiently.

Start Your Free Trial
How to Estimate Job Time and Stop Underbidding: Track Estimate vs. Actual — Complete Business Management for Service Professionals