Cars Com Extractor avatar

Cars Com Extractor

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Cars Com Extractor

Cars Com Extractor

Cars.com Extractor pulls vehicle listings from any Cars.com search, so you get price, MSRP, mileage, VIN, trim, dealer and photos in one clean table for pricing research and lead lists.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Kawsar

Kawsar

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

Share

Cars.com Extractor

Turn any Cars.com search into clean, structured vehicle data. Give the actor a search (by ZIP and make, or a full Cars.com URL) and it returns one row per listing with price, MSRP, mileage, VIN, year, make, model, trim, dealer, and photos. Export to JSON, CSV, or Excel, or pipe it straight into a spreadsheet, a pricing model, or a CRM.

Cars.com lists millions of new and used vehicles across thousands of dealers. Reading that inventory by hand is slow and does not scale. This actor walks the search results for you, reads every listing card, and hands back a flat table you can actually work with.

Why use this actor

  • Full listing detail per row. Price, MSRP, mileage, VIN, trim, drivetrain, fuel type, color, dealer, and photo URLs, all in one record.
  • Two ways to search. Paste exact Cars.com search URLs, or just enter a ZIP and make and let the actor build the search.
  • Filters that match the site. New, used, or certified pre-owned, distance radius, and sort order.
  • Handles pagination for you. The actor pages through results until it hits your item cap, deduplicating by listing ID as it goes.
  • Clean, predictable schema. Every field is typed and documented. Numbers come back as numbers, not strings.
  • Ready for automation. Run on a schedule, connect to Google Sheets or a webhook, or call it through the Apify API.

Use cases

  • Competitor and market pricing. Track how a make or model is priced across a region and how prices shift over time.
  • Inventory monitoring. Watch how long specific trims sit on the lot and when new stock appears.
  • Dealer lead generation. Build a list of dealers carrying the inventory you care about, with names and ZIP codes.
  • Valuation and analytics. Feed real listing data into a pricing model, a dashboard, or a market report.
  • Deal alerts. Schedule a search and get notified when a matching car is listed or a price drops.

Input

Run a search one of two ways. Provide one or more full Cars.com search URLs, or fill in a ZIP code (optionally with makes) and let the actor construct the search. If both are given, the URLs are used.

FieldTypeRequiredDefaultDescription
searchUrlsarrayNo*[]Full Cars.com shopping result URLs. Use when you already have the exact search link.
zipCodestringNo*60606ZIP the search is centered on. Required if no search URLs are given.
makesarrayNo["audi"]Makes to filter by, for example toyota, ford. Leave empty for all makes.
maximumDistanceintegerNo50Search radius in miles from the ZIP (10 to 500).
stockTypeselectNoallCondition filter: all, new, used, or cpo.
sortselectNobest_match_descResult order: best match, price, mileage, year, best deal, or distance.
maxItemsintegerNo20Cap on listings collected per run (1 to 1000).
requestTimeoutSecsintegerNo30Per-request timeout in seconds (5 to 120).

*Provide either searchUrls, or a zipCode. One of the two is required.

Example: search by ZIP and make

{
"zipCode": "60606",
"makes": ["audi"],
"maximumDistance": 50,
"stockType": "all",
"sort": "best_match_desc",
"maxItems": 20
}

Example: search by URL

{
"searchUrls": [
"https://www.cars.com/shopping/results/?makes[]=audi&zip=60606&maximum_distance=50&sort=best_match_desc"
],
"maxItems": 200
}

Output

Each vehicle listing becomes one dataset record. Results are available as JSON, CSV, Excel, or through the Apify API.

FieldTypeDescription
listingIdstringCars.com listing identifier
vinstringVehicle identification number
stockTypestringNew, Used, or certified
yearintegerModel year
makestringManufacturer
modelstringModel name
trimstringTrim level
bodyStylestringBody type, for example SUV or Sedan
drivetrainstringDrivetrain, for example All-wheel Drive
fuelTypestringFuel type
exteriorColorstringExterior color
priceintegerListed price in USD
msrpintegerManufacturer suggested price when shown
mileageintegerOdometer reading
cpobooleanCertified pre-owned flag
dealerNamestringSelling dealer
dealerZipstringDealer ZIP code
primaryImagestringMain listing photo URL
listingImagesarrayAll photo URLs on the card
imageCountintegerNumber of photos captured
detailUrlstringLink to the full listing page
searchUrlstringThe search this listing came from
rankingPositionintegerPosition in the collected results
scrapedAtstringUTC timestamp of the run (ISO 8601)

Example output record

{
"listingId": "107ec708-5b14-41af-a1f7-bcff77627403",
"vin": "WA15AAGU7T2048258",
"stockType": "New",
"year": 2026,
"make": "Audi",
"model": "Q5",
"trim": "Premium Plus",
"bodyStyle": "SUV",
"drivetrain": "All-wheel Drive",
"fuelType": "Gasoline",
"exteriorColor": "green",
"price": 57815,
"msrp": 60425,
"mileage": 10,
"cpo": false,
"dealerName": "The Audi Exchange Highland Park",
"dealerZip": "60035",
"primaryImage": "https://platform.cstatic-images.com/in/v2/.../6Ayd029p3xVD1S5YnPc7Y5HTzWU.jpg",
"listingImages": [
"https://platform.cstatic-images.com/large/in/v2/.../6Ayd029p3xVD1S5YnPc7Y5HTzWU.jpg",
"https://platform.cstatic-images.com/large/in/v2/.../BB1wyloUtnPIeM_H3uYuJZLhRl4.jpg"
],
"imageCount": 6,
"detailUrl": "https://www.cars.com/vehicledetail/107ec708-5b14-41af-a1f7-bcff77627403/",
"searchUrl": "https://www.cars.com/shopping/results/?makes[]=audi&zip=60606&maximum_distance=50&sort=best_match_desc",
"rankingPosition": 1,
"scrapedAt": "2026-08-13T12:00:00+00:00"
}

How to run

From Apify Console

  1. Open the actor in Apify Console.
  2. Enter a ZIP and make, or paste one or more Cars.com search URLs.
  3. Set maxItems to how many listings you want.
  4. Click Start. When the run finishes, open the Dataset tab and export as JSON, CSV, or Excel.

On a schedule

Attach a schedule in Apify to run the search every hour, day, or week. Combine it with a webhook or a Google Sheets integration to keep a live inventory feed without touching the actor again.

How it works

The actor sends each search page through built-in bypass infrastructure, so you do not manage proxies or headers. It reads the structured listing data embedded in each result card, normalizes the fields, and pages through the results until it reaches your maxItems cap. Listings are deduplicated by their Cars.com listing ID, so the same car never lands in your dataset twice.

Tips

  • Start small. Run with maxItems: 20 to check the output shape, then raise the cap for a full pull.
  • To compare several makes or regions in one run, add multiple entries to searchUrls.
  • Sort by list_price_asc to surface the cheapest inventory first, or mileage_asc for the lowest-mileage cars.
  • Some fields depend on what Cars.com shows for a listing. MSRP, for example, is common on new cars and often absent on used ones.

FAQ

Do I need a Cars.com account or login? No. The actor reads only public search-result pages. It does not log in or submit any forms.

Can I scrape used and certified pre-owned cars? Yes. Set stockType to used or cpo, or leave it on all to include everything.

How many listings can I collect per run? Up to 1000, set with maxItems. The default is 20.

What format is the data? JSON, CSV, or Excel from the Dataset tab, or JSON through the API.

Why is a field empty on some records? Cars.com does not show every field on every listing. When a value is not present on the card, that field is left null rather than guessed.

Use this actor for public data collection in line with Cars.com terms and applicable law. You are responsible for how you use the data you collect. This actor reads publicly visible listing pages only.