Most lawn care pricing problems start the same way: a contractor quotes a flat monthly number that feels fair in May, then watches it fall apart in July when growth doubles mowing time, or in January when there's nothing to mow at all. The fix isn't a better monthly number. It's building the price correctly at the visit level first, then packaging it.
If you price the month before you price the visit, you're guessing. If you price the visit before you package the month, you're working from real numbers — drive time, square footage, and crew minutes — that hold up no matter how the customer wants to pay.
Start With the Per-Visit Price, Not the Monthly Number
Every recurring lawn account is really a series of individual visits with different costs depending on the season. The per-visit price has three inputs: drive time to the property, property size (which drives mowing and trimming time), and total crew minutes on site including setup and cleanup. Get those three right and the monthly number falls out of the math instead of being a guess you package around.
A simple build looks like this for a single mowing visit:
- Drive time: minutes from the last stop (or shop) to this property, times your loaded crew cost per minute
- Mow + trim + edge + blow time: based on square footage and obstacle density (beds, fences, slopes add minutes)
- Equipment and fuel: a per-visit allowance, not an afterthought
- Minimum visit floor: even a tiny lot has a floor price because drive time and setup don't shrink to zero
Multiply crew minutes by your fully loaded labor rate (wages, payroll tax, insurance, workers' comp — see our breakdown of what to include in overhead if you haven't built that number yet), add drive time and equipment, and you have a real per-visit cost. Markup from there to your target margin.
Route Density Changes Your Real Cost Per Stop
Two identical 6,000-square-foot lawns don't cost the same to service if one is the third stop on a tight route and the other is 25 minutes off your main territory. Drive time is the input most lawn care pricing gets wrong because contractors price the lawn and ignore the map.
Build drive time into the quote using your actual route density, not a flat average:
- Infill properties inside your core service area: lower drive-time allowance, and you can price more competitively
- Properties that break your route pattern: add real drive minutes, even if that means quoting higher than a competitor closer to that address
- New territory requests: either batch them until you have three or four nearby accounts, or price the first one to cover the full solo trip
This is the same math used for any service call — see our guide on estimating travel time and fuel costs — but it matters more in lawn care because you're repeating the trip 20 to 30 times a year per account. A $4 drive-time miss on one estimate is noise. The same miss on a weekly account over a 30-visit season is a real number against your margin.
Package the Annual Total Into 12 Equal Payments
Once you have a real per-visit price for the active season, the packaging question is simple: add up every visit you'll actually run in a calendar year, then divide by 12. That's the flat monthly price you invoice, regardless of whether a given month has four visits or zero.
For example, say a property gets 28 mowing visits at $55 each ($1,540), plus two seasonal cleanups at $150 each ($300), for an annual total of $1,840. Divide by 12 and you bill $153.33 a month, every month, including December and January when the crew isn't showing up at all. The customer gets predictable billing. You get revenue in the slow months that's already covering seasonal labor, insurance, and overhead you're still paying whether or not the mower is running.
Be explicit about this in the proposal. Customers who don't understand why they're paying in February will call to cancel in February. Spell out the visit count, the season length, and the fact that the monthly price is an average, not a fee for that specific month.
Seasonal Scope Changes Belong in the Contract, Not a Surprise Invoice
Scope shifts through the year even on a single property: weekly mowing in peak growth, biweekly in the shoulder seasons, fall cleanups that run two or three times the length of a normal visit, and winter visits that might only be a storm-debris check or nothing at all. If your contract just says "lawn maintenance," you've left yourself open to arguments about what's included every time the calendar changes.
Spell out the visit cadence by month or season, not just a total count:
- Growth season (roughly April through September in most regions): weekly visits, full mow/trim/edge/blow scope
- Shoulder season (March and October): biweekly, scope narrows if growth has slowed
- Cleanup visits (spring and fall): priced and scheduled separately, even if the cost is folded into the monthly average
- Winter (where applicable): no visits, or a reduced check-in visit — state this explicitly so the customer isn't expecting weekly service in January
This also protects you when a customer wants to add mulch, shrub trimming, or irrigation checks mid-season. Treat those as scope changes to the existing agreement rather than quietly absorbing the extra time into a flat visit — the same logic covered in our guide on revising an estimate when scope changes applies just as well to a recurring account as it does to a one-time job.
Build in an Annual Price Increase From Day One
Fuel, labor, and material costs don't hold flat year over year, and a lawn account signed at today's rate without a built-in increase is a account you'll be underpricing within 18 months. Put a specific increase mechanism in the agreement up front — a flat percentage (3 to 6% is typical) applied each renewal, or a stated review date — so raising the price later isn't a renegotiation, it's just the contract doing what it says.
Customers accept a disclosed annual increase far better than an undisclosed one sprung on them at renewal. The conversation is easier when the number was already in writing a year earlier.
Where Trusso Fits
Building a per-visit price from drive time, crew minutes, and your own rates — then packaging it into a recurring monthly invoice — is exactly the workflow Trusso's price book and estimating tools are built for. You price the visit once against your own rates, let the app roll it into a flat monthly schedule, and invoice automatically without rebuilding the math every renewal. If you want a side-by-side look at what else is worth using for lawn care specifically, our roundup of estimating apps for landscapers covers route-aware and recurring-billing tools. And if lawn care is one of several services you run, our landscaping trade page walks through pricing and scheduling across the full scope of yard work.
Recurring lawn pricing only gets messy when contractors skip the per-visit math and go straight to a monthly guess. Do the build in the right order — visit price, then route density, then seasonal packaging, then a built-in increase — and the monthly number takes care of itself, in every season, not just the ones where the grass is actually growing.
Run your business the simple way
Try Trusso free for 14 days and send your first estimate in minutes.
Start 14-Day Free TrialKeep reading
How to Assign the Right Crew to a Contractor Job
Assigning crew isn't just filling a calendar slot. Match skill to scope, pair new hires with veterans, and stop sending your best person to the easiest job.
Read articleSalesHow Do You Tell a Customer Their Final Price May Change?
Say it at the estimate, not at the invoice. Name the exact conditions that could change the price, put them in writing, and agree how you'll notify the customer if they happen.
Read article