RVTrader Scraper - RV Listings, Prices, VIN & Dealer Phones avatar

RVTrader Scraper - RV Listings, Prices, VIN & Dealer Phones

Pricing

from $3.60 / 1,000 listings

Go to Apify Store
RVTrader Scraper - RV Listings, Prices, VIN & Dealer Phones

RVTrader Scraper - RV Listings, Prices, VIN & Dealer Phones

Scrape RVTrader listings (also CycleTrader, EquipmentTrader, CommercialTruckTrader, AeroTrader): price, year, make, model, class, VIN, mileage, length, dealer name and phones, location with coordinates, photos. Optional details: sleeps, slide-outs, fuel, specs, dealer address, views. No login.

Pricing

from $3.60 / 1,000 listings

Rating

0.0

(0)

Developer

Scrapers Delight

Scrapers Delight

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

What does RVTrader Scraper do?

RVTrader Scraper extracts RV listings from RVTrader.com and turns a location, a set of filters or any RVTrader search link into structured rows: one listing per row with price, year, make, model, class, VIN, mileage, length, the dealer's name and phone numbers, and the listing's city, state, ZIP and coordinates. Built for RV dealers, buyers, appraisers, lenders and market analysts who need inventory and pricing data without copying listings by hand.

The same engine reads the other Trader Interactive marketplaces too: CycleTrader (motorcycles), EquipmentTrader (heavy equipment), CommercialTruckTrader (trucks and trailers) and AeroTrader (aircraft). Also known as an RV Trader scraper, RVTrader API, camper / travel trailer / motorhome listings scraper.

  • Every listing field the search shows: price, price history, year, make, model, trim, class, condition, VIN, stock number, mileage, length, photos, listing date, premium and price-reduced badges
  • Dealer contact on every dealer listing: dealer name, dealer id, website, the listing's phone, the dealer's office line, fax, and every number the site publishes for the ad
  • Location you can map: city, state, ZIP, latitude and longitude on every search row
  • Optional listing details: full description, spec table, sleeps, slide-outs, fuel type, GVWR, engine, colors, videos, dealer street address, views and saves
  • Past the 400-listing window: a large search is read in price bands automatically, so a whole state can be exported
  • No login, cookies or API key: pick a site and filters, or paste a link from the site
  • Monitor mode: only new listings and price changes since your last run, for a daily schedule
  • Export anywhere: JSON, CSV, Excel, XML; schedules, webhooks, Make, Zapier, n8n, Google Sheets; the Apify API and MCP server

What data can you get from RVTrader?

🔗 Listing URL and ad id (`id`)🚐 Year, make, model, trim🏷️ Class / type (`type`)
💲 Price, previous price, price drop🔢 VIN (`vin`) and stock number🛣️ Mileage, engine hours
📏 Length (ft)🆕 Condition (New / Used)🏪 Dealer or private seller
🏢 Dealer name, id, group, website☎️ Listing phone, office line, fax📍 City, state, ZIP
🌐 Latitude and longitude🖼️ Photos and floor plan image📅 Listed date, days listed
🛏️ Sleeps, slide-outs, bunkhouse (details)⛽ Fuel type, GVWR, engine (details)🏠 Dealer street address (details)
📝 Full description and spec table (details)🎥 Videos and 360° tour👀 Views and saves (details)

On a 100-listing nationwide test run, 98% of rows were dealer listings and 98% carried a dealer name and phone, 87% a price, 81% a VIN, 80% a length and 100% coordinates. Full fill rates are in the Fields table below.

How to scrape RVTrader with RVTrader Scraper

  1. Create a free Apify account — it comes with monthly free credit.
  2. Open RVTrader Scraper and click Try for free.
  3. Pick the Site (RVTrader by default), then a ZIP code and radius or States, and any filters — or paste RVTrader search links into Search, dealer or listing URLs.
  4. Set Max results and switch on Listing details if you need sleeps, slide-outs, fuel and the dealer's address.
  5. Click Start. Rows stream into the dataset as they are read.
  6. Open the Storage tab and Export as JSON, CSV or Excel — or schedule the run.

⬇️ Input

ParameterTypeDescription
🔍 What to scrape
siteSelectrvtrader (default), cycletrader, equipmenttrader, commercialtrucktrader, aerotrader. Pasted URLs pick their own site.
startUrlsListSearch URLs (their filters are kept), dealer inventory URLs (…?dealerid=…) or listing URLs (…/listing/…-5042000749) from any of the five sites.
📍 Location
zip, radiusText, SelectA US ZIP code and 10 to 500 miles or nationwide. Default radius 100.
states, cityList, TextUS states (TX, Florida), each its own search; a city with exactly one state. Empty = the whole US.
🎯 Filters (applied by the site)
makes, models, keywordList, List, TextNames as the site shows them, e.g. Jayco, Eagle, bunkhouse. Several makes = any of them.
types, categoriesListRV class (Travel Trailer, Fifth Wheel, Class A, Class B, Class C, Toy Hauler…) and sub-category (Super C…).
condition, sellerTypeSelectNew / used; dealers / private sellers. Default: both.
listingTypeSelectFor sale (default) or for rent (EquipmentTrader and CommercialTruckTrader).
minPrice…maxPrice, minYear…maxYear, minMileage…maxMileage, minLength…maxLengthIntegerRanges; 0 = no limit.
minSleeps, minSlideouts, fuelTypesInteger, ListRV specs the site filters on.
bunkhouseOnly, floorplanOnly, priceReducedOnly, pricedOnlyBooleanSite filters. Default false.
dealerIdsListA dealer's whole inventory, e.g. 5000011531.
sortSelectNewest listed (default), featured, nearest, price, year or mileage.
✂️ Refine results
dealerNameContainsTextKeep only dealers whose name contains this text.
postedWithinDaysIntegerOnly listings posted in the last N days. Default 0 = any age.
➕ Extra data
includeDetailsBooleanFull listing details — charged as listing-details per row that carries them. Default false.
includeViewsAndSavesBooleanWith details: views and saves per listing (no extra charge; slower).
includePrivateSellerPhonesBooleanA private seller's own number when they published one. Default false.
🔁 Monitoring
monitorMode, monitorStoreName, resetMonitorStateBoolean, Text, BooleanOnly listings not delivered before plus price changes. Pair with a daily schedule.
📦 Output
maxResultsIntegerDefault 100; 0 = no limit.
maxResultsPerSearchIntegerCap per search (URL, state or dealer). Default 0.
splitLargeSearchesBooleanRead past the site's 400-listing window in price bands. Default true.
compactBooleanCore fields only, sized for AI agents and MCP.
⚙️ Advanced
maxConcurrency, proxyConfigurationInteger, ProxyLeave the proxy as is; your own proxy URLs are used first when you add them.

Input JSON

{
"site": "rvtrader",
"states": ["FL"],
"types": ["Class C"],
"condition": "used",
"maxPrice": 150000,
"maxResults": 200,
"includeDetails": true
}

Filters build the same search the site's own filter panel builds. A pasted link keeps everything you chose on the site, including filters this form does not list. Do: paste https://www.rvtrader.com/rvs-for-sale?make=Jayco%7C2272274&state=Texas%7CTX. Don't: paste a page title link such as https://www.rvtrader.com/Jayco/rvs-for-sale with nothing after ? — the /Jayco/ part is only a page name; the run warns and searches everything.

Leave "Newest listed" on for big exports

The site's "Featured" order repeats paid ads on every page (416 rows across 10 pages held only 334 different listings in our test). Newest-first serves 400 different listings per search, and the price-band split relies on it.

⬆️ Output

Every listing becomes one dataset item. A real row from a Florida search with Listing details on (shortened):

{
"site": "RVTrader",
"id": "5042628024",
"url": "https://www.rvtrader.com/listing/2023-Jayco-SENECA+XT+32U-5042628024",
"title": "2023 Jayco SENECA XT 32U",
"type": "Class C",
"condition": "Used",
"price": 149995,
"vin": "1FDFF6LT5NDA25599",
"length": 34,
"sellerType": "Dealer",
"dealerName": "General RV Center - Fort Pierce",
"phone": "7724484582",
"officePhone": "7724484582",
"city": "Fort Pierce",
"state": "FL",
"zip": "34945",
"latitude": 27.43413,
"longitude": -80.5341,
"photoCount": 36,
"listedAt": "2026-10-14T04:41:15.000Z",
"sleepingCapacity": 6,
"slideouts": 2,
"dealerAddress": "2398 Peters Road Fort Pierce FL 34945"
}

Fields and how often they are filled

Search fields: a 100-listing nationwide run (newest first) and a 1,210-listing New Mexico run (every listing in the state). Details fields: a 100-listing Georgia run with details on (newest first; 83 dealer listings) and a 42-listing Orlando run with views and saves.

FieldWhat it isFill (100 / 1,210)
id, url, title, year, make, model, type, conditionThe listing100% / 100%
priceAsking price, USD (null = no price shown)87% / 98%
previousPrice, priceDrop, priceChangedAtThe site's last price change2% / 33%
vinVIN / serial number81% / 86%
stockNumberDealer stock number96% / 91%
trimTrim / floor plan code88% / 90%
mileageOdometer miles (motorized units)34% / 12%
lengthLength, feet80% / 60%
dealerName, dealerId, dealerWebsite, dealerPhonesDealer (dealer listings only)98% / 93%
phoneThe listing's contact number97% / 66%
officePhoneThe dealer's office line65% / 64%
city, state, latitude, longitudeLocation100% / 100%
photosPhoto URLs (brand-new ads can have none yet)70% / 99%
floorplanUrlFloor plan image0% / 39%
listedAt, daysListedListing date100% / 100%
description, specsFull text and spec table (details)100%
sleepingCapacitySleeps (details)80%
slideoutsSlide-outs (details)66%
fuelTypeFuel type (details; motorized units only - towables have none)18%
grossVehicleWeightGVWR, lbs (details)61%
dealerAddressDealer street address (details; every dealer listing, never private ones)83%
views, savesViews and saves (details + views and saves)saves 93%; views null on listings posted the same day (0 of 42), counted on older ones (e.g. 683)

Every field in the dataset schema was seen filled in real answers from the five sites. CycleTrader, EquipmentTrader, CommercialTruckTrader and AeroTrader rows use the same fields; their verticals fill hours, cabType, color, horsePower, transmission, wheelbase, airframeTime, avionics and the rental prices.

How can I use RVTrader data?

  • 🏪 RV dealers: price your units against every comparable listing within 200 miles; watch competitors' inventory by dealer id.
  • 📈 Market analysts: track asking prices, price drops and days on market by class, make and state.
  • 🏦 Lenders and insurers: check a VIN's asking price and mileage against the market.
  • 🔁 Wholesalers and buyers: a daily monitor of new private-seller and price-reduced listings.
  • 📇 Sales teams selling to dealers: a list of RV, powersports, equipment and truck dealers with phones, websites and addresses.
  • 🤖 AI agents: compact rows through the MCP server for "find me a used Class C under $150k near Tampa".

How much does it cost to scrape RVTrader?

RVTrader Scraper is priced per listing: $0.0036 per listing ($3.60 per 1,000) with no start fee. Listing details add $0.0054 per listing that carries them. Views and saves are not charged.

ListingsWithout detailsWith details
30$0.108$0.27
100$0.36$0.90
1,000$3.60$9.00

Apify's free plan includes monthly credit. A search that matches nothing costs nothing; duplicates, unchanged monitor rows and filtered-out rows are not charged.

Integrations, API, scheduling and MCP

Run RVTrader Scraper on a schedule with monitorMode on to get only new listings and price changes each day. Send results to Google Sheets, Slack, Make, Zapier or n8n, or trigger a webhook when a run finishes. Call it from code with the Apify API (Python or JavaScript) or from an AI agent through the MCP server.

More vehicle and equipment scrapers

Limits and empty runs

  • 400 listings per search is the site's own window; splitLargeSearches reads past it in price bands (1,210 of 1,210 New Mexico listings in our test, 39 requests, 31 seconds).
  • Speed: search pages carry 42 listings each, so 1,000 listings take about 30 requests (26 seconds on our test machine). The site limits how fast one visitor may ask, so the actor stays under 60 requests per 2 minutes per site: listing details (one request per listing) ran 100 listings in 2 minutes 19 seconds in our test. Views and saves add two requests per listing.
  • Human verification: if the site still asks for it, the run stops cleanly with what it has (delivered rows are kept and charged; nothing else is).
  • Listing URLs (pasted one by one) come from the listing's own data, which has no coordinates: latitude/longitude are null on those rows.
  • Private sellers: no dealer fields, and the phone only with includePrivateSellerPhones.
  • An empty run means the site has no listing for that search; check the filters on the site with the same values.

❓ FAQ

How much does RVTrader Scraper cost?

$0.0036 per listing, plus $0.0054 per listing when Listing details is on, with no start fee. 1,000 listings cost $3.60 without details.

How many listings can RVTrader Scraper get?

As many as the search holds: the site shows 400 per search, and the actor splits larger searches into price bands. A nationwide RVTrader search holds about 195,000 listings.

Can RVTrader Scraper scrape CycleTrader, EquipmentTrader, CommercialTruckTrader or AeroTrader?

Yes. Pick the site in the form or paste a link from it. All five use the same fields.

Does RVTrader Scraper return the dealer's phone number?

Yes, for dealer listings: the number the listing shows, the dealer's office line and fax when the site has them, and every number the site lists for the ad.

Can I get sleeps, slide-outs and fuel type with RVTrader Scraper?

Yes, switch on Listing details. Those fields come from each listing's own page data.

Can I monitor new RVTrader listings with RVTrader Scraper?

Yes. Turn on monitorMode, give the monitor a store name and schedule the run daily: you get new listings and price changes only.

Can I use RVTrader Scraper with the Apify API or MCP?

Yes. Every run is available through the Apify API (Python, JavaScript, HTTP) and the MCP server for AI agents.

Do I need an RVTrader account, login or API key?

No. RVTrader Scraper reads the same public listings any visitor sees.

Why did RVTrader Scraper return no listings?

The search matched nothing (check the same filters on the site), a pasted link had no filters in its query string, or the site asked for human verification before the first page. The run's summary record (RUN_SUMMARY) says which.

Your feedback

Missing a field or a filter? Open an issue on the Issues tab and tell us what you need.