How to Price Snow Removal Jobs and Seasonal Contracts

By Jobkore TeamAugust 25, 20268 min read

A seasonal snow contract is not a price. It is a bet, and you are the house. The homeowner pays one number in October and you agree to show up however many times winter decides, which means the only question that matters is not what to charge per driveway. It is how wrong the winter can go before that number stops covering your fuel.

A seasonal contract is an insurance policy you underwrite

Per-push billing and seasonal billing are not two ways to price the same work. They are two different products, and the difference is who carries the weather risk. On per-push, the client carries it: a heavy winter costs them more and costs you more, and the two move together. On a seasonal contract, you carry all of it. You have sold a fixed premium against an unknown number of claims, which is the structure of an insurance policy whether or not anyone calls it that.

That is not an argument against seasonal work. Seasonal contracts are how you get paid in November for work you might do in February, and that cash flow is worth real money to a two-truck operation. But an insurer prices a policy off the distribution of outcomes, not off the average one. Most snow bids are built off the average and then priced as though the average is what shows up.

The average is the number that never happens

Take Sioux Falls, South Dakota, which the National Weather Service has been measuring since 1893. Across that record the snowiest season delivered 94.7 inches and the least snowy delivered 5.4 inches, per the NWS seasonal snowfall records for the station. That is a seventeen-fold spread at one location, in one city, measured the same way for over a century. A contractor who prices a season off "we average about forty inches here" has priced the one outcome that is guaranteed not to occur, because forty inches is a midpoint between winters, not a winter.

The instinct is to fix this with a better forecast. It does not work. NOAA's own climate writers, walking through how La Niña winters actually played out, put the limit plainly: a La Niña signal does not mean there cannot be a big snowstorm in any given winter. Seasonal outlooks tell you which way the deck is stacked. They do not tell you what you were dealt.

So price the spread, not the midpoint. Pull ten seasons for your own station, find the worst one, and ask whether your seasonal number survives it. If it does not, the number is too low or the contract needs a ceiling.

Your trigger depth decides the contract, not your rate

Two contractors in the same town, both charging $450 a season, can be running completely different businesses, and the line that separates them is buried in the scope: the depth at which you are obligated to show up. A two-inch trigger and a three-inch trigger sound like a rounding difference to a homeowner. In event count they are not close. Every winter carries far more small snowfalls than large ones, so dropping the trigger by an inch adds visits from the fattest part of the distribution. The same season that is eleven pushes at three inches can be eighteen or twenty at two.

This is the single most underpriced term in snow work. Contractors negotiate the dollar figure and give the trigger depth away without noticing, because it does not feel like money. It is the entire cost structure of the agreement. Write it on the estimate alongside what a push covers: drive, walk, steps, and the plow bank the city truck puts back after you leave.

Count events, then decide who eats the tail

The convention across the industry is to price a seasonal contract for eight to twelve qualifying events. It is a reasonable starting point and a bad stopping point, because eight to twelve is a national shorthand and you do not work nationally. Build the number from your own trigger depth against your own station's history, then decide explicitly what happens in the winter that blows past it. Here is the sequence worth writing down before you quote anyone:

  1. Pull ten seasons of snowfall for the station nearest your route, not a regional or statewide average.
  2. Count qualifying events at your trigger depth in each of those seasons, not total inches. Inches are how weather is reported. Events are how you get paid.
  3. Take the worst season in that set, not the middle one. That is your exposure.
  4. Price the contract at your realistic event count, then name a cap a few events above it.
  5. Decide now, in writing, what a push past the cap bills at. Not in February at 4 a.m.

Step five is where seasonal contracts are won or lost. A cap with an agreed overage rate turns an unlimited liability into a priced one, and it tells the client exactly what a historic winter costs. In Jobkore that overage is a change order against the project rather than a renegotiation, so the original agreement stays intact and the extra pushes attach to it with their own approval trail.

A plow operator we talked to outside Rochester learned this the expensive way. He sold forty seasonal driveways at $450 into a winter that ran twenty-two qualifying events against the eleven he had priced. "I collected eighteen grand and spent twenty-six on fuel, salt, and my own truck," he told us. "The contracts were fine. There was just no bottom to them."

Salt is its own line and its own risk

Bundling material into a flat seasonal number stacks a second, unrelated bet on top of the first one. Snowfall volume drives how many times you salt, and the price per ton moves independently of that, hardest in exactly the winters when everyone in your region is buying at once. A season with more events and a tight supply market moves both variables against you at the same time, and a bundled contract absorbs both silently.

Break it out. Salt and de-icer as their own line, priced per application or per ton, gives you a number that can move without reopening the whole agreement, and gives the client something they can actually see and compare. The contractors who bundle usually say they do it because breaking it out invites an argument. It does the opposite. The argument comes in March, when the invoice does not match what the client thinks they bought.

What a good seasonal contract says out loud

Heading into the 2026-27 season, the seasonal agreements that hold up are not the ones with the cleverest price. They are the ones where nothing has to be interpreted at 4 a.m. Trigger depth, stated in inches. What one push covers and where the plow bank sits in that. How many events the price includes. What the cap is and what a push past it costs. Whether salt is in or out, and at what rate. Response window, measured from snowfall ending rather than from a clock time, because a storm that quits at noon and a storm that quits at midnight are different jobs.

Every one of those is a sentence, not a paragraph, and a snow removal estimate carrying all six reads as more professional than a number scratched on a business card. Seasonal work also bills across the whole winter rather than in one lump, so the project carries several invoices against one agreement.

Here is the position that gets pushback, and we will take it anyway: under about thirty driveways, you probably should not be selling seasonal contracts at all. Insurance works by pooling risk across enough policies that one bad outcome is absorbed by the others. Under thirty accounts you are not pooling anything. You have written a handful of policies against one weather event that hits every one of them the same morning, and the advice to sell seasonal for the cash flow skips that part. Get the account count up first, or price per push and let the client carry the winter.

If you do one thing before the first flake this year, pull ten seasons of snowfall for your nearest weather station and count how many days cleared your trigger depth in the worst of them. Not the average, the worst. It takes twenty minutes on the NWS site, and it will either confirm the number you have been charging or explain a winter you are still annoyed about. Then write the cap and the overage rate into the estimate template you will send forty times this fall, so the terms land in every bid.

Snow is the one trade where the work you did not do is as expensive as the work you did. A quiet January still costs you the truck payment and the insurance. Price the season so both winters are survivable, and the weather stops deciding whether the year worked.

Frequently Asked Questions

How much should I charge for snow removal per push?

Residential per-push rates commonly land between $75 and $150 a visit, but the rate matters less than the trigger depth attached to it. Build the number from drive time, fuel, equipment wear and the walk, then check it against what a heavy season actually costs you.

Is a seasonal contract better than per-push pricing?

They are different products, not two prices for one job. Per-push leaves the weather risk with the client. A seasonal contract moves all of it to you in exchange for predictable winter cash flow. Neither is better until you know how many accounts you carry.

How many snow events should a seasonal contract cover?

The industry shorthand is eight to twelve qualifying events, which is a starting point rather than an answer. Count events at your own trigger depth against ten seasons from your nearest weather station, then price the realistic count and cap the rest.

Should salt be included in a seasonal snow contract?

Break it out. Bundling stacks a second bet on top of the first, because event count and salt price move independently and both turn against you in a hard winter. A separate line can move without reopening the agreement and gives the client something to compare.

What should a snow removal estimate include?

Trigger depth in inches, what one push covers including the plow bank, how many events the price includes, the cap and the overage rate past it, whether salt is in or out, and a response window measured from snowfall ending rather than a clock time.

Ready to get after it?

Stop fighting your software. Start running your business.

Try for free

14-day free trial. No credit card required.

Jobkore invoices list with status badges and totals

Your next estimate is on us.

Try for free