CAMPERTRAILERS.COM

Data · Open Dataset

The whole catalog, as one machine-readable file

2,576 floorplan records across 12 brands — published with their units named and their qualifiers attached, because a specification that loses its qualifier stops being verified.

LAST UPDATED · RECORDS · 2,576 FIELDS · 40 LICENCE · Free with attribution

Every specification published on this site is also published here as one machine-readable file — 2,576 floorplan records across 12 brands and 157 lines, with the units named and the qualifiers attached. It is free to use with attribution. The one condition that matters is at the top of section 03, and it is not a licensing condition: carry the qualifiers with the numbers.

Download

campertrailers-verified-specs.json — 3,134 KB · 2,576 records · 40 fields · generated 2026-10-23 · sha256 50f43cc3ced56366…

01 What is in it

One record per published floorplan page. Each record carries the identity of the unit, its published weights, dimensions, tank capacities and equipment, a link back to the page it was read from, and a link to that page's spec sheet PDF where one exists.

Floorplan records2,576
Travel trailers1,893
Fifth wheels683
Brands12
Lines157
Records linking a spec-sheet PDF2,576
Tracked fields per record40

02 The record schema

The fields block in the file carries this same table, so a consumer never has to read this page to understand the file. Populated is the number of records that publish a value for that field — the gaps are real and are stated rather than filled.

FieldTypePopulatedMeaning
urlstring2,576Canonical URL of the floorplan page this record was read from.
pagestring2,576Flat filename of that page.
spec_sheet_pdfstring2,576Downloadable one-page spec sheet, where one is published.
brandstring2,576Manufacturer as the brand publishes it.
linestring2,576Nameplate / product line.
line_urlstring2,576Canonical URL of the line hub.
modelstring2,576Line plus floorplan code.
model_year_labelstring2,576Model year and make exactly as the page states it.
body_typestring2,576Travel Trailer or Fifth Wheel, taken from the page.
dry_weight_lbinteger · lb2,396Unloaded vehicle weight as published. Not a shipping weight.
dry_weight_basisstring2,396"dry" where the source page labels the figure a dry / unloaded weight; "unit base (with LP and batteries)" where the source labels it a unit base weight with LP and batteries (Airstream), which is not an empty trailer.
gvwr_lbinteger · lb2,081Gross vehicle weight rating -- the loaded ceiling.
gvwr_derivedboolean2,570true when the page derived GVWR as dry + cargo rather than transcribing it.
cargo_capacity_lbinteger · lb2,342Cargo carrying capacity (CCC). Fresh water and propane come out of this.
hitch_weight_lbinteger · lb2,551Tongue or pin weight as published. Read hitch_weight_basis with it.
hitch_weight_basisstring2,551"dry" where the source page labels the figure dry; "as published" where it labels a hitch weight without saying dry. Loaded tongue weight runs higher either way.
hitch_kindstring2,558tongue (bumper pull) or pin (fifth wheel), from the page's own label.
gvwr_flagstring23Set only when the maker printed a GVWR that its own dry weight plus cargo capacity does not reconcile with by more than 100 lb. gvwr_lb is then null although a figure was printed; the page shows every printed figure and says why none is given as a rating.
hitch_weight_flagstring2Set only when the published hitch figure is physically implausible against the published dry weight. The figure is kept as published; the flag says why it should not be relied on.
exterior_height_flagstring6Set only when the published exterior height is at or below the published interior height. The figure is kept as published; the flag says why it should not be relied on.
fresh_water_flagstring1Set only when the published fresh-water capacity is physically implausible against the published length. The figure is kept as published; the flag says why it should not be relied on.
length_ftnumber · ft2,525Exterior length as published.
width_ftnumber · ft2,368Exterior width as published.
exterior_height_ftnumber · ft2,232Exterior height as published. Excludes aftermarket roof equipment.
interior_height_ftnumber · ft1,272Interior standing height as published.
fresh_water_galnumber · US gal2,570Fresh water tank capacity as published (decimals kept: 19.9, 30.5).
grey_water_galnumber · US gal2,556Grey water tank capacity as published (decimals kept).
black_water_galnumber · US gal2,432Black water tank capacity as published (decimals kept).
sleepsinteger1,739Manufacturer sleeping capacity claim. A claim, not a comfort rating.
axlesinteger570Number of axles.
slidesinteger475Number of slide-outs.
tiresstring1,162Tire size and/or load range as published. Often a description, not a size.
air_conditionerstring603Roof air conditioning as published.
refrigeratorstring721Refrigerator capacity and type as published.
awningstring1,115Awning count and length as published.
primary_bedstring449Primary bed configuration.
layoutstring302One-line description of the floorplan.
msrp_usdinteger · USD313Manufacturer suggested retail price where one is published. Not a street price.
asterisked_fieldsarray282Field names whose published value carries an asterisk on the page.
completeness_pctinteger · %2,576Share of tracked fields this page publishes.

03 Conventions you have to carry with the numbers

The one that can hurt someone

Every hitch_weight_lb in this file carries its basis in its own hitch_weight_basis field: dry where the source page labels the figure dry, as published where it labels a hitch weight without saying whether the trailer was empty. Loaded tongue weight runs higher — often a lot higher once the front pass-through is packed. A common rule of thumb puts it at 10–15% of loaded trailer weight; that is not a federal or SAE standard, and NHTSA’s towing guide gives no percentage, saying only that manufacturers specify tongue weight from the trailer’s loaded weight (NHTSA, DOT HS 809 433). Anyone sizing a tow vehicle's payload against the published figure will under-budget. Republish the basis with the number.

null is a statement, not a gap in the export

A null means no source we accept published that figure. Nothing in this file is estimated, interpolated from a sibling floorplan, or zero-filled. Where a field is missing across a whole line it is because the manufacturer does not publish it.

gvwr_derived marks arithmetic, not transcription

0 of 2,576 records carry gvwr_derived: true, meaning the page computed GVWR as dry weight plus cargo capacity because no source published the rating directly. The arithmetic ties out exactly by definition — the flag exists so that the provenance survives the export.

No tow-vehicle ratings, anywhere

This file contains the trailer side of the towing equation only. It asserts nothing about what any vehicle can pull, because a single truck model swings by thousands of pounds on engine, axle ratio, cab, drivetrain and package. The authoritative number for a given vehicle is the payload placard on its own door jamb, and no dataset can substitute for it.

One model year, spanning coverage

model_year_label is the model year the page currently states. Pages cover 2005–present as a span, so the label is not a claim that the specification held unchanged for every year of the run. Manufacturers re-spec mid-generation and sometimes mid-year.

sleeps and msrp_usd are manufacturer claims

sleeps is the manufacturer's own capacity claim reproduced verbatim, not an assessment of comfortable occupancy. msrp_usd (313 of 2,576 records) is a published list price, not a transaction price; street prices routinely land below it and it goes stale faster than any other field here.

04 Where the coverage is thin, stated plainly

Publishing the gaps is the point of publishing the coverage counts. Three worth knowing before you build on this:

Tires. 1,162 of 2,576 records carry a tires value, but many of those are a description rather than a size — a load range and a brand, where the factory never published the section width. Treat the field as free text, not as a parseable size.

Price. 313 of 2,576 records carry an MSRP. The rest have no published list price from any source we accept.

Weights. Dry weight is on all 2,396 records and cargo capacity on 2,342; GVWR reaches 2,081 and hitch weight 2,551. The shortfall is the honest one — those are the units where the published record ran out, and the site excludes rather than guesses.

05 Using and citing it

Free to use, including commercially, with attribution to CamperTrailers.com. If you reproduce a weight, carry its qualifier: a hitch or pin figure carries its hitch_weight_basis (dry, or as published), and a derived GVWR is flagged. Stripping the qualifier is what turns a verified number into a misleading one, and it is the only misuse of this data that could actually cost someone something.

The same catalog is described for machine consumers at /llms.txt, and the verification standard behind every figure is set out on the methodology page.

06 How this file is produced

It is generated, never hand-maintained. A build step parses the 2,576 rendered floorplan pages — the same HTML a visitor sees — and emits the records from what those pages actually publish. That direction matters: the file cannot claim a figure the site does not show, because the site is its source. The derived-GVWR flag is read from each page's own row label and cross-checked against an independently built index before the file is written; a disagreement fails the build rather than shipping.

Regenerating the file from an unchanged tree produces an identical file. If the checksum above has moved, the catalog moved.