Cars.com Zipcode Scraper avatar

Cars.com Zipcode Scraper

Pricing

from $0.68 / 1,000 car details

Go to Apify Store
Cars.com Zipcode Scraper

Cars.com Zipcode Scraper

Scrape used-car listings from cars.com by ZIP code, radius, and make - get VIN, price, mileage, specs, dealer details, and photos as structured data

Pricing

from $0.68 / 1,000 car details

Rating

0.0

(0)

Developer

E Commerce

E Commerce

Maintained by Apify

Actor stats

0

Bookmarked

4

Total users

1

Monthly active users

6 days ago

Last modified

Categories

Share

Cars.com Zipcode Search Scraper

Scrape used-car listings from cars.com by US ZIP code, search radius, and optional make. Each listing returns clean, structured data: VIN, make, model, year, trim, price, mileage, exterior and interior color, fuel type, body type, dealer name, rating, and location, plus photos and a link back to the listing. Part of the automotive portfolio alongside the CarGurus, AutoTrader, and CarMax scrapers.

Features

  • Search any US market by ZIP code and radius, optionally filtered by make.
  • Returns the full result set across all pages, not just the first page.
  • Dealer name, rating, and location on every listing.
  • Optional detail mode adds transmission, interior color, engine, stock number, dealer phone, and accident/owner history.
  • Runs standalone - it clears cars.com's bot protection on its own, with no extra setup or external services.

Input

FieldTypeRequiredDefaultNotes
zipsarray of stringsyes["90210", "73099", "77494", "37042"]US ZIP codes to search from.
carBrandsarray of stringsnoall makesRestrict to specific makes (e.g. Toyota, Ford, BMW). Omit to scrape every make.
radiusstringno100 milesOne of 10 miles, 25 miles, 50 miles, 75 miles, 100 miles, 150 miles, 200 miles, 500 miles, or Nationwide.
scrapeVehicleDetailsbooleannofalseWhen on, the Actor opens each vehicle detail page to add transmission, interior color, engine, stock number, dealer phone, and accident and owner history. This is slower and costs more, since it renders one extra page per listing.
maxRequestsPerCrawlintegernounlimitedOptional cap on total pages. Useful for quick test runs.

Example input

{
"zips": ["90210"],
"carBrands": ["Toyota"],
"radius": "50 miles",
"scrapeVehicleDetails": false
}

Output

Each listing is one dataset record. The Overview view shows VIN, make, model, year, price, mileage, and dealer; export the full dataset for every field.

Always populated (from search):

  • Vehicle: vin, makeName, modelName, carYear, trimName, bodyTypeName, localizedFuelType, exteriorColorName
  • Price and mileage: price, priceString, mileage, mileageString
  • Dealer: serviceProviderName (name), sellerRating, sellerCity, sellerRegion, sellerPostalCode
  • Media and links: pictures, mainPictureUrl, pictureCount, detailUrl
  • Provenance: searchZip, dateOfScrape

Added when scrapeVehicleDetails is on:

  • localizedTransmission, localizedInteriorColor, localizedEngineDisplayName, stockNumber
  • accidentCount, ownerCount, carsComIsPersonalUse
  • Dealer phoneNumber and phoneNumberString

See .actor/output_schema.json for the complete field list and types.

How it works

cars.com sits behind Cloudflare, so the Actor runs its own stealth browser (camoufox) over Apify residential proxy to load the search pages, then reads the listing data from the page and enriches the dealer from cars.com's public API. There is nothing to configure - just provide ZIP codes and run it.

Residential proxy is recommended, since cars.com blocks datacenter IPs.

Local development

npm install
npm run build
npm run start:dev