{
  "slug": "campground-site-revenue-calculator",
  "title": "Campground Site Revenue Calculator",
  "heading": "Campground Site Revenue Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/campground-site-revenue-calculator",
  "summary": "Model revenue across RV, tent, and cabin sites at different occupancy and rate mixes.",
  "description": "Campgrounds run a mixed inventory — RV sites with hookups, primitive tent sites, and sometimes cabins or glamping units — each with its own rate and seasonal occupancy pattern, so a single blended ADR figure hides more than it reveals. This calculator lets you model up to three site categories separately, each with its own site count, nightly rate, and occupancy rate, then rolls them into total revenue for the period plus a blended RevPAR-style metric (revenue per available site) so you can compare performance to prior seasons or other properties on an apples-to-apples basis.",
  "formula": "Revenue per site type = Sites × Occupancy % × Nights × Rate. Total = sum across types. Blended RevPAS = Total Revenue ÷ Total Available Site-Nights.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=campground-site-revenue-calculator",
  "inputs": [
    {
      "id": "rvSites",
      "label": "RV sites",
      "kind": "number",
      "hint": null,
      "default": 40,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "rvOcc",
      "label": "RV site occupancy",
      "kind": "number",
      "hint": null,
      "default": 62,
      "unit": "%",
      "min": 0,
      "max": 100
    },
    {
      "id": "rvRate",
      "label": "RV site nightly rate",
      "kind": "number",
      "hint": null,
      "default": 55,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "tentSites",
      "label": "Tent sites",
      "kind": "number",
      "hint": null,
      "default": 20,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "tentOcc",
      "label": "Tent site occupancy",
      "kind": "number",
      "hint": null,
      "default": 40,
      "unit": "%",
      "min": 0,
      "max": 100
    },
    {
      "id": "tentRate",
      "label": "Tent site nightly rate",
      "kind": "number",
      "hint": null,
      "default": 32,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "days",
      "label": "Days in period",
      "kind": "number",
      "hint": null,
      "default": 30,
      "unit": null,
      "min": 1,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "totalRevenue",
      "label": "Total site revenue",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "rvRevenue",
      "label": "RV site revenue",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "tentRevenue",
      "label": "Tent site revenue",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "revpas",
      "label": "Blended revenue per available site",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "RV sites: 40",
      "RV site occupancy: 62 %",
      "RV site nightly rate: 55 $",
      "Tent sites: 20",
      "Tent site occupancy: 40 %",
      "Tent site nightly rate: 32 $",
      "Days in period: 30"
    ],
    "outputs": [
      "Total site revenue: $48,600",
      "RV site revenue: $40,920",
      "Tent site revenue: $7,680",
      "Blended revenue per available site: $27.00"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter rv sites.",
      "Enter rv site occupancy (%).",
      "Enter rv site nightly rate ($).",
      "Enter tent sites.",
      "Enter tent site occupancy (%).",
      "Enter tent site nightly rate ($).",
      "Enter days in period.",
      "Read your total site revenue 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": {
        "rvSites": 24,
        "rvOcc": 37,
        "rvRate": 33,
        "tentSites": 12,
        "tentOcc": 24,
        "tentRate": 19,
        "days": 18
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "rvSites": 40,
        "rvOcc": 62,
        "rvRate": 55,
        "tentSites": 20,
        "tentOcc": 40,
        "tentRate": 32,
        "days": 30
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "rvSites": 64,
        "rvOcc": 99,
        "rvRate": 88,
        "tentSites": 32,
        "tentOcc": 64,
        "tentRate": 51,
        "days": 48
      }
    }
  ],
  "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": "Why track RevPAS instead of just total revenue?",
      "a": "Total revenue grows if you simply add sites, which masks whether existing inventory is performing better or worse. Revenue per available site (RevPAS) normalizes for site count the same way RevPAR does for hotel rooms, letting you compare this July to last July even after adding 10 new RV pads."
    },
    {
      "q": "Should I weight RV sites and tent sites the same in occupancy math?",
      "a": "No — model them separately as this calculator does, because they serve different demand pools with different seasonality. RV sites often book further out and hold occupancy better in shoulder seasons; tent sites are more weather-sensitive and skew toward summer weekends."
    },
    {
      "q": "How much does adding electric/water hookups change achievable rate?",
      "a": "Full hookup (water, electric, sewer) sites typically command a 30-50% premium over electric-only, and 60-100% over primitive/tent sites in the same campground, reflecting both convenience and the RV traveler's higher spending capacity."
    },
    {
      "q": "What occupancy should a seasonal campground target for the season?",
      "a": "Well-run seasonal campgrounds in peak months (June-August) often hit 70-85% weekend occupancy but only 35-50% midweek, averaging 55-65% for the month. Extending season length via shoulder-season marketing and winter storage/dry camping is usually more impactful than squeezing more weekend rate."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/seasonal-pricing-uplift-calculator",
    "https://www.revenuelab.fyi/toolbox/venue-rental-profit-per-event",
    "https://www.revenuelab.fyi/toolbox/hotel-revpar-calculator"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Campground Site Revenue Calculator (https://www.revenuelab.fyi/toolbox/campground-site-revenue-calculator)"
}