Key takeaways
- Build the revenue plan from capacity: technicians, billable hours and revenue per billable hour, month by month.
- Plan labor cost growth explicitly: specialty trade earnings rose 4.7% in the year to September 2026[1], and benefits are 30.0% of private employer compensation[2].
- Tie hiring dates and marketing spend to the months where capacity and demand do not match.
- Review the plan monthly against actuals and change the forecast, not the targets, when the year moves.
Plan from capacity, not from a wish
Many annual plans start with a revenue number: last year plus a round percentage. The trouble is that nobody can run a truck on a percentage. A useful plan starts with what the business can actually deliver, month by month, and then asks what it would take to deliver more: another technician, better scheduling, higher prices or more demand in the slow months. The revenue target falls out of those decisions rather than sitting on top of them.
The process below takes a few working sessions in November and December. Bring last year's numbers, your team leads' views on capacity and your accountant's projection for the year closing.
Step 1: lay out last year by month
Revenue by month and by service line
Split repair, maintenance, installation and any seasonal lines. Seasonal businesses should look at two or three years to see the pattern.
Jobs and average ticket by month
Revenue is jobs times average ticket. Knowing which one moved explains most surprises.
Technician hours by month
Paid hours, billable hours and overtime. The gap between paid and billable is where capacity hides.
Costs by month
Labor, materials, vehicles, marketing and overhead, so you can see which costs follow revenue and which do not.
Calls and bookings by month
Calls received, calls answered and jobs booked show whether demand or capacity was the constraint.
Step 2: calculate capacity
Capacity is the revenue your team can produce if the schedule is full. For each month, multiply the number of technicians by their available hours, by the share of those hours that are billable, by your revenue per billable hour. Use realistic billable shares based on last year, not the best week you ever had.
Example (fictional): an HVAC and plumbing company has eight technicians. In a typical month each has about 170 paid hours, and last year 62% of paid hours were billable. At an average of $210 of revenue per billable hour, monthly capacity is 8 times 170 times 0.62 times $210, about $177,000. In the peak summer months, with overtime and a ninth technician, capacity rises to about $215,000. In the spring shoulder months, demand last year fell well short of capacity, which tells the owner where marketing and maintenance campaigns need to work hardest.
Step 3: set revenue by month
Now set the revenue plan month by month, taking the lower of expected demand and capacity. Where demand exceeds capacity, decide whether to add people, raise prices or accept the limit. Where capacity exceeds demand, plan maintenance campaigns, agreement visits and marketing to fill it.
| Month group | Expected demand | Capacity | Plan |
|---|---|---|---|
| Winter peak | High: no-heat calls | Full with on-call | Protect agreement customers, hold prices, no new campaigns |
| Spring shoulder | Low | Well above demand | Cooling tune-up campaign, installs, training |
| Summer peak | Above capacity | Full with overtime | Add a seasonal hire, review pricing, pause broad ads when booked out |
| Fall shoulder | Medium | Above demand | Heating tune-ups, agreement renewals, replacement campaigns |
Seasonal trades will see sharper swings. Landscaping firms paid only 19.3% of their 2023 annual payroll in the first quarter, against 25.9% across all industries[3]. A plan that spreads revenue evenly across the year will be wrong in every month.
Step 4: plan labor costs
Labor is the largest cost for most service companies, and it keeps rising. Average hourly earnings of production and nonsupervisory employees at specialty trade contractors reached $39.05 in September 2026, up from $37.28 a year earlier[1]. Across private industry, total employer compensation costs averaged $46.89 per hour worked in June 2026[4], and benefits made up 30.0% of that[2].
Source: U.S. Bureau of Labor Statistics, 2026[1]
Show the data
| Item | Value |
|---|---|
| September 2025 | $37.28 |
| September 2026 | $39.05 |
- Budget pay increases by role, with the date each takes effect.
- Include payroll taxes, workers' compensation, health benefits, retirement contributions and paid time off at their full cost.
- Plan overtime for peak months explicitly instead of letting it appear as a surprise.
- Add training and licensing costs for new and existing staff.
- Recalculate your loaded labor cost per billable hour and check it against your pricing.
Step 5: set hiring dates
Every capacity gap in Step 3 needs a decision and a date. If summer demand exceeds capacity, the hire has to be recruited, trained and licensed before summer, which often means a start date in spring. The labor market is tight: US construction job openings were 289,000 in September 2026, up from 194,000 a year earlier[5]. Put recruiting start dates in the plan, not just headcount. See the seasonal hiring plan for timelines by trade.
Step 6: build the marketing budget from booked jobs
- List last year's lead sources and, for each, the spend, leads, booked jobs and revenue.
- Calculate cost per booked job and revenue per dollar for each source.
- Decide how many booked jobs you need from marketing in each month to fill capacity.
- Allocate spend to the sources with the best cost per booked job, with a test budget for new ones.
- Time spend ahead of shoulder months and reduce it in months already at capacity.
Remember that marketing produces calls, not jobs. If calls go unanswered or unbooked, more spend only wastes money. Budget for phone cover and booking alongside ads; see lead source ROI for the calculation.
Step 7: review prices and overhead
With labor costs and capacity known, review prices. Prices in some trades have moved quickly; consumer prices for gardening and lawncare services rose 8.8% in the year to September 2026[6]. Check each service line's margin at next year's costs, not this year's. Then list overhead line by line: rent, insurance, vehicles, software, office staff and professional fees. Ask which ones support the plan and which are habits. A small overhead cut that holds every month is often worth more than a large one-off saving.
Step 8: check cash and set the review rhythm
Turn the monthly plan into a cash view. Purchases for peak season, hiring before revenue arrives and quarterly tax payments can all create cash gaps even in a profitable plan. Set your reserve target and decide when you will build it. Then put a monthly review in the calendar: compare actual revenue, jobs, average ticket, labor cost and marketing cost per booked job with the plan. When the year moves, update the forecast for the remaining months rather than quietly changing the targets.
Plan for the risks, too
A plan that assumes everything goes right will break in the first difficult month. Add a short list of the risks that would hurt most and what you would do about each: a key technician leaving, a mild summer or winter that cuts demand, a large commercial customer paying late, a vehicle off the road for weeks, a storm that closes the office. For each, note the early warning sign and the first response. You do not need a detailed plan for every risk, but you should know which lever you would pull. For outages and disasters, see the business continuity plan guide.
It also helps to build a simple low case alongside the main plan: what happens to cash and staffing if revenue comes in a set share below plan for three months? If the answer is a cash crisis, adjust the reserve target or the timing of hires now, while it is cheap to do so.
Common planning mistakes
- Setting a revenue target with no capacity check behind it.
- Planning even monthly revenue in a seasonal business.
- Forgetting the full cost of new hires, including benefits, training and the months before they are productive.
- Raising marketing spend for months that are already at capacity.
- Treating the plan as finished in January instead of reviewing it monthly.
- Leaving the team out: technicians and office staff often know where capacity is lost.
Share a simple version of the plan with your team leads: the monthly targets, the hiring dates and the two or three changes that matter most next year. A plan people know about is far more likely to happen. For the review that feeds this plan, use the year-end review checklist, and for the measures to track each month, see the KPIs every home service owner should track.
Frequently asked questions
How do I set a revenue goal for my service business?
Start from capacity: technicians, billable hours and revenue per billable hour by month. Compare with expected demand, then decide where to add people, raise prices or fill slow months.
How much should a home service company spend on marketing?
Base it on the booked jobs you need from marketing to fill capacity, and on each source's cost per booked job, rather than a fixed share of revenue.
When should a contractor do annual planning?
In November and December, with a projection of the closing year, and with a monthly review against actuals throughout the year.
How do I budget for labor cost increases?
Plan raises by role and date, include benefits, taxes, insurance and training at full cost, and recalculate your loaded cost per billable hour.
References
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) ↑
U.S. Bureau of Labor Statistics (2026). Employer Costs for Employee Compensation — June 2026 (opens in a new tab) ↑
U.S. Census Bureau (2023). County Business Patterns 2023: U.S. detail file (cbp23us) (opens in a new tab) ↑
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 (2026). Job Openings and Labor Turnover Survey, series JTU230000000000000JOL (Construction, job openings, not seasonally adjusted) (opens in a new tab) ↑
U.S. Bureau of Labor Statistics (2026). Consumer Price Index for All Urban Consumers, series CUUR0000SEHP02 (Gardening and lawncare services, U.S. city average, not seasonally adjusted) (opens in a new tab) ↑