CarMax Scraper — Used Car Inventory, VIN & Prices
Pricing
from $8.00 / 1,000 vehicle extracteds
CarMax Scraper — Used Car Inventory, VIN & Prices
Scrape CarMax used car inventory with VIN, price, mileage, trim, body style and store for pricing and comps. USD 10 per 1,000 vehicles plus a start fee.
Pricing
from $8.00 / 1,000 vehicle extracteds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
0
Monthly active users
6 days ago
Last modified
Categories
Security
Limited permissionsShare
CarMax Scraper extracts public CarMax used-car inventory into a clean dataset with VIN, stock number, year, make, model and trim, price, mileage, body style, store location and key features, for dealers, auto analysts and pricing teams. It costs USD 10.00 per 1,000 vehicles on the FREE tier plus a start fee per run, and you pay only for vehicles saved to your dataset.
Give it any CarMax search URL (all cars, a make, a model, a filtered search) or individual vehicle URLs, and it returns one row per vehicle.
What data does the CarMax scraper return?
| Field | Example | Source |
|---|---|---|
url | https://www.carmax.com/car/70286089 | search results |
stockNumber | 70286089 | search results |
vin | 7SAYGAEE8PF927030 | search results |
year, make, model | 2023, Tesla, Model Y Long Range (model plus trim) | search results |
price | 38998 (US dollars) | search results |
mileage | 43043 | search results |
location | CarMax Roanoke, VA | search results |
bodyType | 4D Sport Utility | search results |
features | ["Automated Cruise Control", "Rear Defroster"] | search results |
imageUrls | hero photo; full photo set with details | search results and detail page |
color, transmission | Gray, Automatic | detail page (Open vehicle details) |
fuelType | usually null | CarMax rarely publishes it in the page data |
description | 2023 Tesla Model Y Long Range | built from year, make and model |
sourceUrl, scrapedAt, warnings | provenance and notes | every row |
Missing values are null, never guessed.
How do I scrape CarMax inventory?
Open carmax.com, filter the inventory the way you want (make, model, price, body type, distance), copy the URL and paste it into CarMax URLs. Then set Maximum vehicles and Maximum search pages.
{"startUrls": [{ "url": "https://www.carmax.com/cars/toyota/camry" }],"maxResults": 100,"maxPages": 3,"includeDetails": false}
Each search page shows up to 48 vehicles. For more, the Actor asks the site's own search data for the next batch, up to Maximum search pages (1 to 10). If a further batch does not load, it keeps the vehicles it has and says so in the status message and OUTPUT.warnings; in the 2026-10-27 tests only the first 48 were confirmed, so split large searches by make or model. Maximum vehicles caps the dataset at 1 to 200 rows.
Should I turn on vehicle details?
Turn on Open vehicle details only if you need exterior color, transmission or the full photo set. Search results already carry VIN, price, mileage, trim, body, store and features. Details open one page per vehicle, which adds about 15 to 30 seconds each, so 100 vehicles with details take far longer than 100 without. If a detail page cannot be read after retries, the vehicle is still saved from the search data with a warning and is not charged.
When should I use this Actor, and when not?
Use it to:
- track CarMax asking prices and mileage for a make or model over time;
- build comparables with VIN, trim and store for appraisal or pricing tools;
- monitor inventory at a set of stores or in a region.
Do not use it for:
- CarMax instant offers, financing or anything behind a login;
- dealership inventory outside CarMax; see Cars for Sale Scraper and Carfax Used Cars Scraper;
- enthusiast auctions, where Cars & Bids Scraper fits better.
How much does the CarMax scraper cost?
You pay one vehicle-result event per vehicle saved, plus Apify's start event once per started GB of allocated memory (the default run uses 1 GB). Vehicles saved without a charge (detail page failed) and blocked or empty runs incur no vehicle events.
| Event | FREE | BRONZE | SILVER | GOLD and above |
|---|---|---|---|---|
Vehicle saved (vehicle-result) | USD 0.010001 | USD 0.00975 | USD 0.0095 | USD 0.008 |
| Actor start (per started GB) | USD 0.175232 | USD 0.170851 | USD 0.16647 | USD 0.140185 |
Worked totals on the FREE tier at 1 GB:
- The Console default run (3 vehicles with details): 3 × USD 0.010001 + USD 0.175232 = about USD 0.21.
- 100 vehicles without details: 100 × USD 0.010001 + USD 0.175232 = about USD 1.18.
The start fee is the larger part of a small run, so collecting more vehicles per run is cheaper per vehicle.
Use it from an AI assistant
CarMax Scraper works from Claude, ChatGPT, Cursor or any MCP client through Apify's MCP server. Add https://mcp.apify.com/?tools=muhammadafzal/carmax-scraper to your client and ask, for example: "Pull 50 used Honda CR-Vs from CarMax with price, mileage, year and VIN, and tell me the average price per 10,000 miles."
API examples
JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('muhammadafzal/carmax-scraper').call({startUrls: [{ url: 'https://www.carmax.com/cars/ford/f150' }],maxResults: 50,maxPages: 2,includeDetails: false,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Python (apify-client 3.x):
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("muhammadafzal/carmax-scraper").call(run_input={"startUrls": [{"url": "https://www.carmax.com/cars/honda"}], "maxResults": 25, "includeDetails": False})for car in client.dataset(run.default_dataset_id).iterate_items():print(car["year"], car["make"], car["model"], car["price"], car["mileage"])
Output example
[{"recordType": "vehicle","url": "https://www.carmax.com/car/70286089","stockNumber": "70286089","vin": "7SAYGAEE8PF927030","year": 2023,"make": "Tesla","model": "Model Y Long Range","price": 38998,"mileage": 43043,"location": "CarMax Roanoke, VA","bodyType": "4D Sport Utility","fuelType": null,"transmission": "Automatic","color": "Gray","imageUrls": ["https://img2.carmax.com/assets/70286089/hero.jpg?width=400"],"features": ["Automated Cruise Control", "Rear Defroster", "Power Windows"],"warnings": []},{"recordType": "vehicle","url": "https://www.carmax.com/car/29138146","stockNumber": "29138146","vin": "3VW517AT6FM808697","year": 2015,"make": "Volkswagen","model": "Beetle Classic","price": 17998,"mileage": 101328,"bodyType": "2D Convertible","warnings": []}]
Reliability and limits
CarMax uses bot protection, so the Actor uses a real Chrome browser, a US access route and fresh exits on each retry. Typical runs: about 30 to 90 seconds for a search page, plus 15 to 30 seconds per vehicle when details are on. CarMax refuses some runs outright: on 2026-10-27, 8 of 15 test runs got through. If CarMax refuses every attempt for about three minutes, the run ends with a failed status that starts with "Blocked", saves nothing and charges no vehicle events, so retry later. A minute before the run timeout it stops and keeps what it saved. Every run writes an OUTPUT record with saved and charged counts, failed pages and warnings.
FAQ
Does CarMax have a public inventory API? No public API is offered for inventory data. This Actor reads the data the CarMax website itself loads for its search pages.
Does it return the VIN for every car? Yes, when CarMax shows it in the search data, which was the case for every vehicle in the 2026-10-27 tests.
Can I scrape one specific car?
Yes. Paste a https://www.carmax.com/car/<stock number> URL; the Actor opens that vehicle page.
Why is fuelType empty?
CarMax does not include fuel type in the data its pages expose for most vehicles, so the Actor leaves it null instead of guessing.
How many cars can one run return? Up to 200 vehicles and 10 search pages per run. Split bigger needs into several searches, for example by make.
Are duplicate vehicles charged twice? No. Each stock number is saved and charged once per run.
Related Actors
- Cars for Sale Scraper
- Carfax Used Cars Scraper
- Cars & Bids Scraper
- OfferUp Scraper for private-party listings
Legal note
The Actor collects only public inventory data shown without a login and no personal data. Use it in line with CarMax's terms and applicable law.
Last verified: 2026-10-27