CarMax posts one price and never moves it. That makes their inventory the cleanest pricing benchmark in the country.
CarMax is the largest used-car retailer in the United States, running a no-haggle model across roughly 250 stores with nationwide inventory transfer. Because the posted price is the actual transaction price, their listings are unusually clean as a benchmark — there is no negotiation gap to guess at, which is not true of almost any other source.
Independent dealers price against CarMax whether they admit it or not, because their customers do. Having the whole national inventory as data means you can see the real retail ceiling for any VIN-adjacent spec, watch how fast CarMax moves a trim, and spot where their price is high enough that you can undercut it and still make money.
CarMax serves inventory through a JavaScript-driven search backed by an internal API with request signing and rate limiting, and it geo-personalises results by store proximity so a naïve scrape returns whatever is near the exit IP rather than the national picture. The build works store by store with matched geography so coverage is genuinely nationwide, and paces requests so the pipeline lasts rather than getting cut off in week two.
Excel, CSV, JSON, a Google Sheet that refreshes on a schedule, a direct write into MySQL or Postgres, or a REST endpoint your own tools can query.
No public API is offered for market research. Their site is powered by an internal API that is not documented or licensed for outside use, so a scraper reading what the site publicly renders is the practical route — and it is what this build does.
Yes, and this is the part most naïve scrapes get wrong. CarMax personalises results by proximity, so a single scraping session only ever sees a slice. The build iterates store by store with matched geography, which is what produces genuine national coverage.
Once it has run for more than a day, yes. Each run is compared against the last, so price movements and days-on-site accumulate automatically — you do not need to do anything to start collecting price history.
That is the highest-value version of it. CarMax retail prices joined against Manheim or ADESA auction prices on the same spec gives you the spread directly, which is the number that decides whether a car is worth bidding on.
A filtered daily feed typically runs $350 to $700. Full nationwide capture with price history and store-level breakdowns is higher. You get a fixed price within 24 hours of describing what you want tracked.