{
  "slug": "lawn-route-stops-per-day",
  "title": "Lawn Route Stops Per Day Calculator",
  "heading": "Lawn Care Route Stops Per Day Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/lawn-route-stops-per-day",
  "summary": "Find how many yards a crew can realistically mow and still turn a profit.",
  "description": "Lawn care schedulers routinely overbook routes by assuming every yard takes the same 20 minutes, then wonder why the crew finishes at 7pm angry. This calculator accounts for mow time by lot size, drive time between stops, and a load/unload buffer, then tells you the max stops per day and the revenue that generates so you can build routes that finish on schedule.",
  "formula": "Time per stop = (lot size ÷ mowing rate) + trim/blow time + drive time + load buffer. Stops per day = shift hours ÷ time per stop. Revenue = stops × price per stop.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=lawn-route-stops-per-day",
  "inputs": [
    {
      "id": "shiftHours",
      "label": "Shift length",
      "kind": "number",
      "hint": null,
      "default": 9,
      "unit": "hrs",
      "min": 4,
      "max": 14
    },
    {
      "id": "avgLotSize",
      "label": "Average lot size",
      "kind": "number",
      "hint": null,
      "default": 8000,
      "unit": "sq ft",
      "min": 500,
      "max": null
    },
    {
      "id": "mowRate",
      "label": "Mowing rate (zero-turn)",
      "kind": "number",
      "hint": null,
      "default": 350,
      "unit": "sq ft/min",
      "min": 50,
      "max": null
    },
    {
      "id": "trimBlow",
      "label": "Trim + edge + blow time",
      "kind": "number",
      "hint": null,
      "default": 8,
      "unit": "min",
      "min": 0,
      "max": null
    },
    {
      "id": "driveMin",
      "label": "Average drive time between stops",
      "kind": "number",
      "hint": null,
      "default": 7,
      "unit": "min",
      "min": 0,
      "max": null
    },
    {
      "id": "pricePerStop",
      "label": "Price per stop",
      "kind": "number",
      "hint": null,
      "default": 50,
      "unit": "$",
      "min": 10,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "stops",
      "label": "Stops per crew per day",
      "format": "number",
      "hint": null,
      "primary": true
    },
    {
      "id": "revenue",
      "label": "Daily route revenue",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "perStopMin",
      "label": "Minutes per stop",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "revenuePerHour",
      "label": "Revenue per crew-hour",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Shift length: 9 hrs",
      "Average lot size: 8000 sq ft",
      "Mowing rate (zero-turn): 350 sq ft/min",
      "Trim + edge + blow time: 8 min",
      "Average drive time between stops: 7 min",
      "Price per stop: 50 $"
    ],
    "outputs": [
      "Stops per crew per day: 14",
      "Daily route revenue: $700",
      "Minutes per stop: 37.9",
      "Revenue per crew-hour: $78"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter shift length (hrs).",
      "Enter average lot size (sq ft).",
      "Enter mowing rate (zero-turn) (sq ft/min).",
      "Enter trim + edge + blow time (min).",
      "Enter average drive time between stops (min).",
      "Enter price per stop ($).",
      "Read your stops per crew per day on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "shiftHours": 5.3999999999999995,
        "avgLotSize": 5000,
        "mowRate": 210,
        "trimBlow": 5,
        "driveMin": 4,
        "pricePerStop": 30
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "shiftHours": 9,
        "avgLotSize": 8000,
        "mowRate": 350,
        "trimBlow": 8,
        "driveMin": 7,
        "pricePerStop": 50
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "shiftHours": 14,
        "avgLotSize": 13000,
        "mowRate": 560,
        "trimBlow": 13,
        "driveMin": 11,
        "pricePerStop": 80
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "How many lawns should a two-man crew mow per day?",
      "a": "For typical suburban lots (6,000-10,000 sq ft) with a zero-turn mower, most efficient crews land between 14 and 22 stops in a 9-hour day once drive time is tight. Rural routes with larger lots and more spread-out customers often run 8-12. If your actual count is well below this, the bottleneck is usually routing order, not mowing speed."
    },
    {
      "q": "Does lot size or drive time matter more for daily stop count?",
      "a": "For dense suburban routes, drive time usually dominates because mow time on a standard lot is only 8-15 minutes with a good mower. Adding just 5 extra minutes of drive time per stop across a 16-stop day removes an hour and a half of capacity, roughly 4-5 fewer stops. Tighten the route before buying a faster mower."
    },
    {
      "q": "Should crews take on outlier large properties on a route day?",
      "a": "Only if priced separately. A half-acre property mixed into a route of quarter-acre suburban lots can eat 40+ minutes and blow up the day's schedule. Route large properties on dedicated days or price them at a premium that reflects the actual time, not the standard per-stop rate."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/route-density-profit",
    "https://www.revenuelab.fyi/toolbox/fuel-surcharge-local-route"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Lawn Route Stops Per Day Calculator (https://www.revenuelab.fyi/toolbox/lawn-route-stops-per-day)"
}