Datadory notebook
Campground reservation data feed: bookable camping inventory, delivered as typed rows
Datadory delivers leisure facilities data covering the full campground reservation stack: tens of thousands of federal facilities with Reservable flags, fees and stay limits from the Recreation Information Database behind Recreation.gov, site-level capacity from hundreds of National Park Service campgrounds, overnight-stay demand back to 1979, and global coverage where the federal registries stop - delivered as typed rows, daily, weekly, or hourly.
1,744 datasets. Pick your catch.
What is a campground reservation data feed?
A campground reservation data feed is a machine-readable stream of bookable camping inventory - recreation areas, campgrounds, individual campsites, coordinates, stay limits, fees and reservation pointers - arriving as rows a product can query rather than a screen to re-type.
The authoritative US source is the Recreation Information Database (RIDB) / Recreation.gov, the inventory layer of American public-lands recreation assembled under the Recreation One Stop program for the USDA Forest Service. It indexes tens of thousands of facilities across hundreds of recreation areas on Forest Service, National Park Service, Bureau of Land Management, Army Corps of Engineers and Fish & Wildlife Service lands, organised in a RecArea > Facility > Campsite hierarchy that mirrors how booking products already model inventory. Every record carries decimal-degree coordinates plus GeoJSON geometry where mapped, so results render on a map without a geocoding pass.
Datadory delivers it as typed rows with a field dictionary attached, scored 9 out of 10 against the catalog-wide average of 7.81 across 1,744 datasets.
Which fields decide whether a campground belongs in a booking feed?
Twenty-two documented columns ride along on every RIDB facility row, verified against live records during research. Five of them do the commercial work:
- Reservable splits bookable inventory from informational listings - ranger stations and trails ride in the same registry, and without this flag a feed quietly fills with sites nobody can book.
- Enabled separates published records from retired ones, which keeps retired campgrounds out of search results.
- FacilityReservationURL carries the booking pointer itself, so a listing can hand users to the transaction instead of describing it.
- FacilityUseFeeDescription puts price context in as data - enough to segment "free dump station" from "destination resort" without opening a browser.
- StayLimit records how long anyone may hold a site, the constraint every itinerary builder eventually trips over.
The descriptive block fleshes listings out: FacilityName (capped at 256 characters - the sample record is UNION CREEK CAMPGROUND, FacilityID 233115), FacilityTypeDescription distinguishing Campground from Ranger Station and Trail, FacilityDescription up to 4,000 characters, phone, email, directions and map pointers. Accessibility is first-class rather than buried in prose: FacilityAdaAccess carries a filterable Y/N while FacilityAccessibilityText holds the detail such as "Facility contains wheelchair accessable restrooms." Geography arrives twice - flat decimal degrees plus GEOJSON footprints - and LastUpdatedDate stamps every change.
Datadory ships the dictionary with every pull, so the schema in your sample is the schema you ship against.
What does a delivered row look like?
Rows arrive keyed and flattened, one record per place with child inventory addressable beneath. One facility row, read straight through:
# one campground record as delivered
FacilityID : 233115
LegacyFacilityID : 71992
OrgFacilityID : AN371992
FacilityName : UNION CREEK CAMPGROUND
FacilityTypeDescription : Campground
Keywords : NW02,Phillips Reservoir
FacilityLongitude : -118.0186111
FacilityLatitude : 44.6969444
FacilityAdaAccess : N
FacilityPhone : 541-894-2332
Reservable : false
Enabled : trueThree identifiers, not one: FacilityID is the current key, LegacyFacilityID carries the predecessor-system number so old references keep resolving, and OrgFacilityID preserves the contributing agency's own ID - joins survive system migrations in either direction instead of breaking on a rename. Keywords pairs a region code with the landmark people actually search for, here Phillips Reservoir.
The hierarchy is the other structural gift. Recreation Area > Facility > Campsite means rollups use keys instead of fuzzy name matching: aggregate to recreation areas for footprint planning, hold at facility level for site analysis, descend to campsites for unit inventory. Child dictionaries - campsites, tours, permit entrances - travel alongside, and the RecArea-to-Facility tree flattens to keyed rows or stays nested on request.
Which datasets complete the reservation picture?
One registry answers what is bookable; three siblings answer what happens next.
US National Park Service API owns estate detail inside the parks: 474 park units across all 50 states and territories, hundreds of campgrounds broken out to numberOfSitesReservable versus numberOfSitesFirstComeFirstServe with fees and operating hours, roughly 712 visitor centers, 606 parking lots, 287 webcams, 627 live alerts and some 3,000 events. Every family keys to the same four-character park code, so a campground, its closure notice and its parent unit resolve onto one another without fuzzy matching - which is exactly what separates a trip planner from a brochure. It deliberately carries no visitation counts and no booking transactions; it describes supply and condition.
NPS Visitor Use Statistics (IRMA Stats) owns bodies: annual recreation visits back to 1904 across 400-plus reporting units, standardised from 1979, traffic counts from 1985, and an Overnight Stays report splitting stays by lodging, camping and backcountry. That overnight split is the closest official proxy for camping occupancy at park scale, and RecordYearRank turns "record crowds" from a press flourish into a checkable claim.
BEA Outdoor Recreation Satellite Account (ORSA) owns dollars: $696.7 billion of 2024 value added, 2.4 percent of GDP, decomposed by activity - camping included - and supplying industry for the nation and all 50 states plus DC across 2012-2024. Inventory, demand, economy. The joins ship done.
Where does coverage stop, and what fills the gap?
Federal registries stop at the federal estate boundary. Outside it - private KOAs, state-park concessionaires, municipal campgrounds, European campsites - the crowd carries the load.
Two architectural facts survive any rewrite of this page. First, neither reservation-side source streams live per-night availability: the RIDB flags which facilities are reservable and carries the reservation pointer, while NPS reports site counts and reservation text - real-time unit state lives in the transactional booking systems themselves, so plan around inventory-plus-capacity rather than live seat maps. Second, agency-reported gaps exist upstream; contributing agencies answer for their own data quality, which is why Datadory re-verifies samples at preparation time instead of quoting stale inventories.
How does a booking product assemble the stack?
A working campground reservation feed chains four layers:
- Anchor on bookable inventory. Pull the RIDB filtered to FacilityTypeDescription = Campground, split on Reservable so sellable stock stays distinct from ranger stations and trails, and scope by state, radius around gateway towns, or activity roster. Seed the first load wholesale, then move only LastUpdatedDate-changed rows on each cycle.
- Add park-interior depth. Join the NPS layer on its four-character park code: per-campground reservable versus first-come-first-served counts, fees, operating hours, plus the alerts that tell a camper the road is out before the itinerary locks. A campground with capacity but no closure awareness generates support tickets, not bookings.
- Attach demand. Line IRMA's overnight-stay series up against the same park codes to weight which campgrounds merit prominence, and use ORSA's camping activity cuts to size the market a new listing enters.
- Extend past the fence line. Where private and municipal supply matters, layer OSM's leisure vocabulary under the federal registries and accept the completeness gradient rather than pretending it away.
Chained through Datadory, all four arrive keyed to the same geography with field dictionaries attached, so the monthly refresh becomes scheduled delivery - daily, weekly, or hourly, your call - rather than a rebuild.
Who builds on campground reservation data?
Ranked by how directly a feed answers their day job:
- Travel & camping platforms. The Reservable split, fee descriptions, stay-limit rules and reservation pointers turn a federal-estate listing into product inventory: searchable campgrounds with phone, email and directions attached, classified by FacilityTypeDescription instead of guessed from name strings.
- Hospitality investors & site selectors. The federal estate anchors rural tourism demand. Facility coordinates join to trade-area data to quantify which gateway towns sit beside heavy recreation infrastructure - campgrounds, trails, ranger stations - rather than relying on county averages.
- Market researchers & consultants. A complete, agency-attributed census of US public outdoor infrastructure sizes the national recreation offer without a single manual count, and ORSA adds the spending denominator beside it.
- Data scientists. Three stable identifiers, decimal-degree coordinates and a clean hierarchy mean geo joins and rollups run on day one, and Enabled filters phantom rows out of training data before they teach a model nonsense.
Every persona gets the same rows through a different lens; request a sample scoped to your states and columns and judge the grain directly.
Why get a campground reservation feed through Datadory?
Because the hard part was never the first extract - it is the tenth. Upstream, these are parallel publications with mismatched grains: a nested federal hierarchy here, a park-code-keyed operations corpus there, an annual statistical account underneath. Every planning cycle re-pays the reconciliation tax.
Datadory normalizes upstream of you: the RecArea-to-Facility-to-Campsite tree flattened to keyed rows or left nested on request, park-unit codes resolved so families join out of the box, coordinates delivered split as well as combined, and change stamps kept as columns so incremental syncs are arithmetic rather than diffing. Field definitions are verified against live records for the datasets in this stack, and the dictionary travels with every pull.
Where to go next
Start with the anchor: the Recreation Information Database (RIDB) / Recreation.gov dataset page carries the twenty-two-column field dictionary and sample rows, then pair it with the US National Park Service API for park-interior capacity and closure context and NPS Visitor Use Statistics (IRMA Stats) for the demand line.
This page is one thread of a wider map. The leisure facilities data hub keeps all nineteen pooled records browsable, the best leisure facilities datasets ranking puts them in order, and the leisure facilities data guide covers the British provision audits and greenspace layers this booking-focused page leaves aside. Adjacent threads: national park visitation statistics for the long-run demand curve in depth, outdoor recreation economic impact data for the dollars behind it, and sports facility database england for the supply-side British counterpart. When you want real rows instead of descriptions, request a sample scoped to your states and agencies - the field dictionary travels with it.
| Dataset | Layer | Grain | Clock | What it adds |
|---|---|---|---|---|
| Recreation Information Database (RIDB) / Recreation.gov | Bookable inventory | Recreation Area > Facility > Campsite, tens of thousands of facilities | Continuous, stamped LastUpdatedDate | Reservable flag, reservation pointer, fees, StayLimit, ADA fields, coordinates and GeoJSON; quality score 9 |
| NPS Visitor Use Statistics (IRMA Stats) | Physical demand | Park unit x year, 400-plus reporting units | Annual, visits back to 1904 | Overnight Stays split by lodging, camping and backcountry since 1979, traffic counts from 1985, record-year ranks; quality score 9 |
| OpenStreetMap Key:leisure | Coverage beyond the fence line | One row per mapped feature, ~100 documented tag values | Rolling volunteer edits | Private and municipal supply worldwide with name, operator, accessibility and coordinates; quality score 10 |
| Number | What it counts |
|---|---|
| 19 | Leisure Facilities datasets Datadory pools, four of them in this stack |
| Tens of thousands | federal facilities in the RIDB, flagged Reservable or not, each stamped LastUpdatedDate |
| 474 | NPS park units with hundreds of campgrounds split reservable vs first-come-first-served |
| 1904 | first year of the official visitation record; Overnight Stays run from 1979 |
| ~100 | documented OSM leisure tag values covering private and municipal supply worldwide |
Pick up where this leaves off
Every one of these ships with sample rows before you commit to anything.
Recreation Information Database (RIDB) / Recreation.gov
US National Park Service API
NPS Visitor Use Statistics (IRMA Stats)
BEA Outdoor Recreation Satellite Account (ORSA)
OpenStreetMap Key:leisure — Global Leisure Features Wiki
Want rows instead of a pitch? Name the datasets.
API, files, or your warehouse. Daily, weekly, or hourly.
Get a sampleQuestions worth asking
What is a campground reservation data feed?
A machine-readable stream of bookable camping inventory: recreation areas, campgrounds, individual campsites, coordinates, stay limits, fees and reservation pointers, arriving as rows rather than a screen to re-type. In Datadory's catalog that stream anchors on the Recreation Information Database behind Recreation.gov, organised as Recreation Area > Facility > Campsite.
Does a campground reservation data feed include private campgrounds?
Not from the Recreation Information Database alone: its scope is federal lands and waters managed by USFS, NPS, BLM, USACE and FWS. Private and municipal campgrounds need OpenStreetMap's leisure layer beside it - roughly 100 documented tag values across millions of mapped places worldwide - which Datadory delivers in the same schema as the federal registries.
Can I get campsite-level rows rather than whole campgrounds?
Yes. Campsites are first-class records in the RIDB hierarchy beneath each facility, so site-level rows arrive alongside campground attributes rather than being parsed out of descriptions. The National Park Service layer adds per-campground counts split reservable versus first-come-first-served, so both grains reconcile against the same park unit code.
Can I add demand signals to a reservation feed?
Inventory says what can be booked; demand series say how hard booking it will be. NPS Visitor Use Statistics reports annual visits back to 1904 across 400-plus park units with an Overnight Stays report from 1979 splitting lodging, camping and backcountry - the closest official proxy for camping occupancy at park scale. BEA's Outdoor Recreation Satellite Account adds the $696.7 billion economic frame.
Is there a single feed covering live per-night availability?
No, and any vendor claiming otherwise is reselling a repackaged screen view. The registries carry which facilities are reservable, site counts and reservation pointers; real-time unit state lives in the transactional booking systems themselves. Build on inventory-plus-capacity - Reservable flags, site counts, stay limits - and treat availability as a separate integration if a product truly needs it.