Guides ›
How to set a price range for any service job, starting from your own numbers
Copying a competitor's price tells you what they charge, not whether you make money at it. This guide shows how to build a price range from three things you can measure yourself: what an hour of your time has to earn, how fast you actually work, and what every job costs before you start.
1. Work out what a billable hour must earn
Start with the year, not the job. Add up what the business has to cover:
- Your pay: what you need to take home, before personal tax.
- Overhead: insurance, vehicle, fuel, equipment replacement, phone, software, marketing, accounting.
- Profit: a margin on top, so the business can absorb a slow month or a broken pressure washer without you skipping a paycheck.
Then estimate billable hours: time spent actually doing paid work on site. This is the step most people get wrong. Driving, quoting, buying supplies, invoicing, rain days and the off-season aren't billable. For many owner-operators, half to two-thirds of working time is billable. Track a few real weeks if you can instead of guessing.
Materials that scale with the job (chemicals, mulch, parts, dump fees) should be priced per unit on top of this, not folded into the hourly figure.
2. Time your jobs and get a production rate
Customers don't buy hours. They buy square feet of driveway, linear feet of gutter, rooms, windows. So you need to know how many units you complete per hour. That's your production rate.
For the next 10–20 jobs, write down: the quantity (sq ft, ft, rooms), the conditions (stories, stain level, pets) and the minutes on site from arrival to departure, including setup and cleanup. A note in your phone is enough. You'll get two useful numbers out of it:
- Your fast rate: easy jobs, good access, light soil.
- Your slow rate: typical tough jobs. Ignore one-off disasters; those get quoted in person.
3. Convert to a per-unit low and high
Divide your hourly target by each production rate. The fast rate gives the low end of your per-unit price, and the slow rate gives the high end. Then add per-unit materials to both.
This is why a range is honest rather than evasive. The spread comes from real variation in your work, and the customer can see where they'll probably land. If your spread is very wide (say, the high is more than double the low), split the service into separate lines or add a modifier for the condition that causes it. A range that wide stops being useful to the customer.
4. Set a minimum ticket
Every job costs something before any work happens: loading, setup, teardown and walking the customer through it. On a small job that fixed time can be most of the visit. A minimum ticket makes sure a 200 sq ft patio still pays for the trip.
A simple way to set it: shortest realistic visit (hours) × your hourly target, rounded up.
5. Turn job differences into multipliers and add-ons
Look back at your timed jobs and group them by the condition that changed the time: a second story, heavy staining, pets, a steep roof. Compare average production rates:
- If two-story jobs ran at 70% of your one-story pace, that's a multiplier of 1 ÷ 0.7 ≈ 1.4.
- If something costs a fixed amount regardless of size (a downspout flush, a timer install, a new vent cap), make it an add-on with a flat price.
Keep the list short. Three or four modifiers that really move the price are better than ten that confuse people. Anything rare or hard to judge from a description belongs in "final price confirmed after inspection".
6. Sanity-check before you publish
- Run three real past jobs through the calculator. Would the range have contained what you actually charged, or should have charged?
- Compare with your local market. If you land far below competitors, your billable-hours estimate is probably optimistic, or you're leaving money on the table. Check before you undercut. If you land far above, look at your production rate and overhead before you discount.
- Say what's included. One line under the price ("Includes cleanup. Final price after a quick look on site.") prevents most disputes.
- Revisit every season. Fuel, insurance and your own speed change.
7. Worksheet: try it with your numbers
Runs only in your browser. Nothing is sent anywhere.
See it as a customer would
Here's the pressure-washing template with sample numbers. Swap in your own in the builder.
Trade-specific walkthroughs: how to price gutter cleaning · how to price holiday light installation.