Recreation.gov Scraper [$5/1K💰] | Campsites | Availability
Pricing
from $4.80 / 1,000 results
Recreation.gov Scraper [$5/1K💰] | Campsites | Availability
Scrape recreation.gov campgrounds and campsites with nightly fees, amenities, occupancy limits and month-by-month availability calendars. Power campsite alerts, trip planners and camping research.
Pricing
from $4.80 / 1,000 results
Rating
0.0
(0)
Developer
Ahmed Jasarevic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Features
Share
Recreation Scraper
Scrape recreation.gov campgrounds and campsites — nightly fees, amenities, occupancy limits and month-by-month availability calendars — for national parks, forests, BLM land and Army Corps facilities across the United States.
Power Campsite Alerts, Trip Planners And Camping Market Research
- Power campsite-alert services with real available / reserved / closed calendars
- Build trip-planning and van-life apps on federal campground inventory
- Compare nightly fees, hookups and rig limits across parks and states
- Monitor cancellations and released sites for high-demand campgrounds
- Build a camping market dataset for travel research or resale
How It Works

The Actor collects publicly available recreation.gov campground, campsite and permit data and normalizes it into one schema. Provide a search term, state or campground ID; it reads the published facility pages and availability calendars, then writes one row per campsite or permit division.
searchQuery,stateorcampgroundIdsstarts the run.includeAvailabilityadds month-by-month available, reserved and closed dates.entityTypeselects campgrounds, permits or both.
Each row is one campsite (or one permit division in permit mode) with park, agency, location, site type, occupancy, rig limits, amenities, fee range, rate seasons, availability dates and booking links. Export as JSON, CSV or Excel, or read it through the Apify API.
Scrape recreation.gov Campsites And Nightly Fees
Discovery accepts three input styles, and at least one is required:
searchQuery— a keyword such asAcadia,Yosemiteorbeach campingstate— a two-letter code (CA) or full name (California)campgroundIds— facility IDs such as232508or full recreation.gov URLs; this skips discovery entirely
entityType selects what to scrape: campground (default), permit for wilderness permits and entry-quota availability, or both. maxCampgrounds defaults to 10 and caps at 500; maxCampsitesPerCampground defaults to 300 and caps at 2,000.
Track Campsite Availability Calendars
includeAvailability is on by default. monthsAhead controls how many calendar months are fetched, from 1 to 12, starting with the current month.
availableDates— days the site can be bookedreservedDates— days already bookedclosedDates— days that are not bookable: seasonal closure, outside the reservation window, or not yet released. recreation.gov does not distinguish these cases in its published calendar.quotaAvailability— permit mode only: per division and quota type, remaining and total quota per day
Availability is fetched once per campground per month and then mapped onto every site, so a 1,000-campsite run stays cheap.
Input
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
campgroundIds | array of strings | No | — | Facility IDs (232508) or recreation.gov URLs. Skips discovery. |
searchQuery | string | No | — | Keyword discovery, e.g. Acadia, Yosemite, beach camping. |
state | string | No | — | Two-letter code (CA) or full name (California). |
entityType | string | No | campground | campground, permit or both. |
includeAvailability | boolean | No | true | Fetch day-by-day calendars for every campsite. |
monthsAhead | integer | No | 1 | Calendar months to fetch, starting with the current month. 1–12. |
maxCampgrounds | integer | No | 10 | Maximum campgrounds (or permits) per run. 1–500. |
maxCampsitesPerCampground | integer | No | 300 | Cap on campsites returned per campground. 1–2,000. |
proxy | object | No | — | Standard Apify proxy configuration. Off by default. |
At least one of campgroundIds, searchQuery or state must be provided.
Output
One row per campsite, or one row per permit division in permit mode.
| Field | Description |
|---|---|
recordType | campsite or permit division record. |
campgroundId, campgroundName | recreation.gov facility ID and name. |
park | Parent recreation area or park, e.g. Acadia National Park. |
agency | Managing agency, e.g. National Park Service or USDA Forest Service. |
state, city, latitude, longitude | Location of the campground or site. |
campsiteId, siteNumber, loop | Site identity and loop. |
siteType, siteTypeCategory | Raw type (TENT ONLY NONELECTRIC) and normalized category (Tent / RV / Cabin / Group / Standard). |
maxOccupancy, minOccupancy, maxVehicles | Occupancy limits. |
maxVehicleLengthFt, permittedEquipment | Rig length per equipment type. |
amenities, attributes | Site amenities and the full attribute map. |
nightlyFee | min, max, currency, perUnit from the published price range. |
rateSeasons | Season types and date ranges attached to the rate table. |
availability | Per month: availableDates, reservedDates, closedDates plus counts. |
quotaAvailability | Permit mode: per-division, per-quota-type remaining and total quota per day. |
bookingUrl, campgroundUrl | Direct recreation.gov links. |
Example Input
{"searchQuery": "Acadia","state": "ME","includeAvailability": true,"monthsAhead": 2,"maxCampgrounds": 3,"maxCampsitesPerCampground": 50}
Example Output
{"recordType": "campsite","campgroundId": "272299","campgroundName": "Cottonwood Campground","park": "Joshua Tree National Park","agency": "National Park Service","state": "CA","city": "Indio","latitude": 33.75,"longitude": -115.825,"campsiteId": "103759","siteNumber": "B27","siteType": "STANDARD NONELECTRIC","siteTypeCategory": "Standard","maxOccupancy": 6,"maxVehicles": 2,"maxVehicleLengthFt": 45,"amenities": ["Picnic Table", "Fire Ring", "BBQ"],"nightlyFee": { "min": 35, "max": 35, "currency": "USD", "perUnit": "night" },"availability": {"2026-11": {"availableCount": 6,"reservedCount": 24,"closedCount": 0}},"bookingUrl": "https://www.recreation.gov/camping/campsites/103759","campgroundUrl": "https://www.recreation.gov/camping/campgrounds/272299"}
Schedule Campsite Monitoring And Integrations
- Cancellation alerts — run hourly or daily for a shortlist of campground IDs and diff
availableDatesbetween runs. - Season opening — run monthly with
monthsAhead: 12to catch newly released inventory. - Webhooks — send new availability to Slack, email, a dashboard or a booking workflow through the Apify API, webhooks, Zapier or Make.
- Scheduling — availability changes constantly in peak season; a scheduled run is more useful than a one-off export.
Related Actors
- Recreation.gov Scraper — campgrounds, permits, timed entry and facilities.
- Recreation.gov Campsite Availability Scraper — availability by location and dates.
- Recreation.gov Campground Scraper (Campsites & Amenities) — campground records and campsite inventory.
- Recreation.gov Permit & Campsite Live Tracker — permit and facility availability checks.
- The Dyrt Scraper - Campground Reviews & Prices — campground reviews and prices beyond federal land.
FAQ
Why use this Actor instead of the official recreation.gov API?
The official RIDB API is keyed, rate-limited and focused on facility reference data; it does not return the live day-by-day campsite calendar shown on recreation.gov. This Actor collects the public campground and availability data that the site shows to any visitor, normalizes the statuses and maps the calendar onto every campsite in one run.
What are the alternatives to this Actor?
lexis-solutions/recreation-gov-scraper covers listings and facilities, lulzasaur/recreation-gov-scraper focuses on availability by date, hikemetrics/recreation-gov-permit-tracker targets permits, and steadfetch/recreation-gov-campground-extractor returns campground records. This Actor combines campsite inventory, fees and multi-month calendars in one dataset.
What does closedDates mean?
A closed day is not bookable. It can be a seasonal closure, a date outside the reservation window, or inventory that has not been released yet. recreation.gov does not distinguish those cases in its published calendar, so the Actor reports them all as closed rather than guessing.
Can I scrape permits and timed entry?
Yes. Set entityType to permit or both. Permit mode returns one record per division with quotaAvailability: remaining and total quota per quota type per day.
Why do some campsites show every day as closed?
Seasonal campgrounds and sites that are not yet released come back with the whole month closed. That is the source's real state, not an error.
Does this need a login or proxy?
No. The public pages used here require no account, cookie or CAPTCHA. A proxy is optional and only useful if you run very high volume from one IP.
For AI Agents & LLM Apps
Returns recreation.gov campsites with fees, amenities and monthly availability calendars as one row per campsite.
Minimal input:
{ "searchQuery": "Acadia", "state": "ME", "maxCampgrounds": 1 }
Direct facility lookup:
{ "campgroundIds": ["232508"], "monthsAhead": 2 }
Permit availability:
{ "searchQuery": "Half Dome", "entityType": "permit", "monthsAhead": 2 }
Output fields: recordType, campgroundId, campgroundName, park, agency, state, city, latitude, longitude, campsiteId, siteNumber, loop, siteType, siteTypeCategory, maxOccupancy, minOccupancy, maxVehicles, maxVehicleLengthFt, permittedEquipment, amenities, attributes, nightlyFee, rateSeasons, availability, quotaAvailability, bookingUrl, campgroundUrl.
Behaviors an agent should know:
- At least one of
campgroundIds,searchQueryorstatemust be set; otherwise the run has nothing to discover. campgroundIdsskips search entirely and is the most predictable mode.includeAvailability: falsereturns inventory and fees without calendars and is much cheaper.closedDatesincludes seasonal closures, dates outside the booking window and unreleased inventory.maxCampsitesPerCampgroundcaps rows per campground, not per run.- Billing: $0.005 per campsite record plus the one-time Actor start event; free users receive the first 10 records.
Legal & Compliance Disclaimer
This Actor is independent and is not affiliated with, endorsed by, or sponsored by recreation.gov, the National Park Service, the USDA Forest Service, the Bureau of Land Management or the US Army Corps of Engineers. It collects only publicly visible recreation.gov pages and availability data and does not log in, hold a reservation, bypass a CAPTCHA or modify any booking. The data describes public federal facilities and does not contain personal information. You are responsible for complying with recreation.gov's Terms of Use and with applicable law when you republish or commercialize the data.
SEO Keywords
recreation.gov scraper, campsite availability api, recreation.gov campsites, campground availability data, campsite alert data, national park campgrounds, recreation.gov api, campsite fees, campground dataset, camping market research, rv campground data, tent campsite data, recreation.gov permits, timed entry availability, campsite booking data, federal campgrounds, campsite monitoring, campground scraper, recreation.gov campground ids