Key takeaways
- Start with the tasks that make up most of your invoices, not with a full catalog of everything you could do.
- Every price is the same formula: standard task hours times billable rate, plus parts at your markup, plus any fixed add-ons.
- Build the billable rate from fully loaded labor cost; benefits alone were 30% of US private employer compensation costs in June 2026[1].
- Test the new prices against last year's jobs before publishing, and review them at least once a year as wages rise.
What a price book is (and is not)
A flat-rate price book is a list of defined tasks, each with a fixed price the technician shows the customer before starting work. It is not a menu of guesses. Each price comes from three inputs you can explain: how long the task normally takes, what an hour of technician time costs your company to sell, and what the parts cost with your markup.
Built well, a price book speeds up the sales conversation, makes pricing consistent across techs and protects margin. Built badly, with borrowed times or a rate that ignores overhead, it locks in losses on every ticket. The steps below take you from a blank spreadsheet to a tested first edition.
The build, step by step
Pull last year's invoices
Export every residential service invoice for the past 12 months. Group them by what was actually done: a capacitor swap, a breaker replacement, a faucet cartridge. Ignore one-off jobs for now.
Pick the first tasks
Sort by how often each task appears. In many shops a few dozen tasks cover most tickets; check your own counts. These go in the first edition.
Write a clear task definition
One line for what is included and what is not. "Replace single-pole 15-20A breaker, like-for-like, includes testing and labeling" is a task. "Electrical repair" is not.
Set a standard time
Use your own job data where you have it: median time on site for that task, plus setup, cleanup and paperwork. Where you lack data, time a few jobs with your best and average techs and use a figure between them.
Apply your billable hourly rate
Multiply standard time by your billable rate, the rate that covers fully loaded labor, overhead and profit. Do not use the tech's wage.
Add parts at your markup
Price each task's standard parts using your markup matrix, so cheap parts carry a higher markup percentage than expensive ones.
Add fixed items
Include anything that applies every time, such as a disposal fee or a permit allowance, as a separate line so you can update it on its own.
Round and tier
Round prices to clean numbers and, where it fits, build good-better-best options and member prices.
Test against history
Reprice last year's tickets with the new book and compare revenue and margin with what you actually charged.
Train, publish and review
Train techs on presenting prices, publish the book in your field software or a printed binder, and set a review date.
Getting the billable rate right
The billable rate is where most homemade price books fail. A tech's hourly wage is only part of what an hour costs. The median hourly pay was $29.33 for HVAC mechanics and installers[2] and $30.38 for electricians[3] in May 2025. On top of wages come payroll taxes, insurance, paid leave, retirement and other benefits. Across US private industry, employer compensation costs averaged $46.89 per hour worked in June 2026, of which $14.07, or 30.0%, was benefits[1].
- Wages and salaries $32.82 70%
- Benefits $14.07 30%
Source: U.S. Bureau of Labor Statistics, 2026[1]
Show the data
| Item | Value |
|---|---|
| Wages and salaries | $32.82 |
| Benefits | $14.07 |
Then add overhead: trucks, fuel, tools, office staff, rent, software, marketing and insurance. Divide all of it by the hours your techs actually bill, not the hours they are paid, because drive time, training and callbacks are not billable. Add your profit target last. Our billable rate guide walks through the full calculation.
Worked price book lines
The table shows how three task prices come together for a fictional electrical contractor. The billable rate and markups are examples, not recommendations.
| Task | Standard hours | Labor | Parts at cost | Parts sell price | Fixed items | Book price |
|---|---|---|---|---|---|---|
| Replace single-pole breaker, like-for-like | 0.75 | $135 | $14 | $42 | None | $179 |
| Install GFCI receptacle in existing box | 0.6 | $108 | $22 | $55 | None | $169 |
| Replace bathroom exhaust fan, same opening | 1.75 | $315 | $85 | $170 | $15 disposal | $500 |
Example notes on the table: the breaker's $14 cost carries a higher markup percentage than the fan's $85 cost, because a tiered markup matrix applies higher multipliers to cheaper parts. Rounding is applied at the end: the fan total already lands on $500, and the smaller tasks are rounded up to the next price ending in 9. If you are unsure whether a price gives you the margin you want, check it with the markup vs. margin conversion rather than eyeballing it.
Standard times: the part that needs honesty
Standard times decide whether the book makes money. Three rules keep them honest:
- Include the whole task: getting tools from the truck, protecting the floor, testing, cleanup and writing up the job. Techs rarely forget the repair itself; they forget everything around it.
- Use the median, not the best day. Your fastest tech's time will turn every average tech's ticket into a loss.
- Add access adders instead of padding every task. Attic, crawlspace, second-story or hard-access work can carry a separate adder so the base task stays fair.
After the first edition goes live, record actual time on site against the standard for each task. Where the actual time is consistently above standard, either the standard is wrong or techs need training; find out which before changing the price.
Tiers and member pricing
Once single tasks are priced, consider:
- Good-better-best options for common repairs, such as a basic repair, a repair with related wear parts replaced, and a repair plus a longer warranty.
- Member prices for maintenance agreement customers, shown next to standard prices so non-members can see the saving.
- Bundles for tasks often sold together, priced slightly below the sum of their parts to reward the larger ticket.
Keep the tier logic consistent across the book. If the middle option always includes the related wear parts and a longer warranty, techs learn to present it quickly.
Test against last year before publishing
Reprice every ticket from the past 12 months using the new book, then compare. Look for:
- Total revenue under the new book versus what you actually invoiced.
- Tasks where the new price is far above what you charged before; they may need a second look or customer communication.
- Tasks where the new price is lower; you may have been overcharging some customers or undercharging others.
- Gross margin by task, after real parts cost and real labor time.
Example: a fictional company finds its new book raises average ticket by a modest amount overall but lowers the price of its most common drain-cleaning task, because the old price had been set by guesswork. It keeps the lower price and promotes it.
Review cycle and price changes
Labor costs keep climbing. Average hourly earnings of production and nonsupervisory employees at specialty trade contractors reached $39.05 in September 2026, up 4.7% on a year earlier[4]. Rebuild the billable rate at least once a year, update parts costs whenever suppliers raise prices, and recheck standard times quarterly during the first year. Announce changes internally with the date they take effect, and update the field software and printed books on the same day so customers never see two prices for the same task.
Keep a short guarantee policy alongside the price book, since flat rate works best when customers know what happens if a repair fails; see refunds and guarantees.
Who owns the price book
Give one person ownership of the price book, usually the owner, the service manager or a controller, and make every change go through them. Techs should be able to suggest new tasks or flag prices that keep causing pushback, but they should not edit prices in the field. Keep a simple change log: the date, the task, the old and new price, and the reason. When a customer questions a price months later, the log shows what was in effect on the day of the visit, and when you rebuild the billable rate it shows which tasks were last reviewed and which were never touched.
Common mistakes
- Copying a competitor's prices, which copies their costs and mistakes too.
- Building prices on the tech's wage instead of a fully loaded billable rate.
- Using one markup percentage for all parts, which overprices expensive parts and underprices cheap ones.
- Too many near-duplicate tasks, which leads techs to pick whichever is cheapest.
- No review date, so the book slowly drifts out of date.
Frequently asked questions
How many tasks should a first flat-rate price book include?
Start with the tasks that appear most often on your invoices, typically a few dozen, and add others as you collect time data. A small accurate book is better than a large book full of guesses.
What is the formula for a flat-rate price?
Standard task hours multiplied by your billable hourly rate, plus parts priced with your markup, plus any fixed items such as disposal fees. Round the result and check the margin before publishing.
How often should I update my flat-rate prices?
Rebuild your billable rate at least once a year, update parts costs when suppliers change prices and review standard task times quarterly in the first year after launch.
References
U.S. Bureau of Labor Statistics (2026). Employer Costs for Employee Compensation — June 2026 (opens in a new tab) ↑
U.S. Bureau of Labor Statistics (2025). Heating, Air Conditioning, and Refrigeration Mechanics and Installers: Occupational Outlook Handbook (opens in a new tab) ↑
U.S. Bureau of Labor Statistics (2025). Electricians: Occupational Outlook Handbook (opens in a new tab) ↑
U.S. Bureau of Labor Statistics (2026). Current Employment Statistics (not seasonally adjusted), series CEU2023800008 (Specialty trade contractors, average hourly earnings of production and nonsupervisory employees) (opens in a new tab) ↑