Alternative data · Used car prices
Used car price data from public listings, region by region
Used car price data from public listings gives a daily view of asking prices, stock and time on market by make, model, age, mileage and region, weeks before monthly indices report. Collect each region from an exit inside it and normalise vehicles carefully enough that like is compared with like.
Pay per GB · No subscription · Prices in EUR, excl. VAT
- €2.00
- per GB on ARC Fast, excl. VAT
- −44%
- at 1 TB (€1.12 / GB)
- 185+
- countries, city targeting
- Never
- expires — no subscription
Written for
- Dealer group pricing teams
- Auto lenders and lessors
- Residual value analysts
- Investment funds and data vendors
The short answer
- Listing data measures retail asking prices. Wholesale auction indices and consumer price indices measure different things; label which one you are building.
- Official statisticians use listings too: the UK's ONS has used car listings data in consumer price statistics since March 2024.
- Price depends on age, mileage, trim and powertrain. Without normalising those, a regional price difference is mostly a difference in the stock on offer.
- Marketplaces default to a radius around the visitor. Collect each region from an exit in it and search by postcode where the site allows.
- Days on market is derived from your own first and last sightings, so a missed run corrupts it. Spread the daily sweep across a pool.
The problem
What goes wrong without the right IPs
Stock mix masquerades as price movement
If a region's listings shift towards older, higher-mileage cars, the average price falls even when no car got cheaper. Raw averages track the mix, not the market.
Trim and derivative are free text
The same model is listed as dozens of spellings of trim, engine and equipment. Without mapping them to a reference, a well-equipped car and a base model share one price series.
Radius search depends on where you are
Marketplaces rank and filter by distance from the visitor or a postcode. Reading every region from one location over-samples dealers near that location.
Dealer cross-posting doubles supply
Dealers push the same car to several marketplaces, and relist it after a price change. Counting adverts overstates stock and shortens days on market.
Galleries dominate the page weight
A vehicle page with 20 photos is several megabytes. A daily refresh that downloads them all pays for pictures of a car that has not changed.
What to collect
What you can collect
- Make, model, trim and derivative
- Mapped to a reference vehicle list. The unit every price comparison is made in.
- First registration date or model year
- Age drives depreciation. Store the date as printed and derive age at the observation date.
- Mileage
- The second depreciation driver. Normalise units (kilometres or miles) at collection.
- Powertrain and fuel type
- Petrol, diesel, hybrid and battery electric depreciate differently, and their residuals are where lenders' risk sits.
- Asking price and price changes
- Every change with the date first seen. Price cuts on ageing stock are an early signal of softening demand.
- Seller type and VAT status
- Dealer or private; in some markets whether VAT is reclaimable. Both shift the price for an otherwise identical car.
- Location (postcode area or city)
- The region the car is offered in, for regional series. Store the area, not the seller's address.
- First seen and last seen dates
- Your own observation window, from which days on market is derived.
How it runs
How a collection run works
- 01
Partition searches by region, make and age band
Split each marketplace's search into region × make × registration-year bands small enough that no search hits the result cap. Re-split any partition that does.
- 02
Sweep result pages daily from inside each region
Fetch result pages through a city-targeted exit, sorted newest first, and extract listing ID, price, mileage and year from the summary. That pass alone tells you what is new, repriced or gone.
Region-targeted result sweep17 linesimport httpxGATEWAY, PASSWORD = "proxy.arcproxies.io:8000", "PASSWORD"REGIONS = { # city tokens from the published targeting list "de": ["berlin", "munich", "hamburg", "cologne", "frankfurt"], "gb": ["london", "manchester", "birmingham", "leeds"],}def sweep(search_url: str, country: str, city: str, params: dict, pages: int): user = f"USERNAME_pool-arc_country-{country}_city-{city}" with httpx.Client(proxy=f"http://{user}:{PASSWORD}@{GATEWAY}", timeout=30) as c: for page in range(1, pages + 1): r = c.get(search_url, params={**params, "page": page, "sort": "newest"}) if r.status_code != 200: break # retry this partition later rather than leave a gap yield r.text # extract id, price, mileage, year, trim - 03
Open detail pages only for new or repriced cars
Fetch the detail page when a car first appears or its price changes, with images blocked, to read trim, equipment, powertrain and seller type.
- 04
Normalise and deduplicate
Map trim text to a reference vehicle, then match adverts across marketplaces on make, model, year, mileage within a tolerance and region. Treat a match that reappears within a set window as one spell.
- 05
Build mix-adjusted series
Fit price on age, mileage, trim and powertrain per segment, and publish the adjusted price, stock and median days on market per region and week. Keep the raw medians alongside, labelled as such.
Setup
Recommended setup
Regional series need city targeting, which ARC Basic, Fast and Ultra take. ARC Mobile has none, so it has no role here.
| Plan | Role | Session | Targeting | Price |
|---|---|---|---|---|
ARC Basic Rotating ISP | Default for result sweeps and detail pages Our lowest price per GB, with the city token that places each sweep in its region. Vehicle listings are mostly light HTML once images are blocked. | Rotating | Country + city | €0.75 / GB €0.59 at 1 TB (−21%) |
ARC Fast Rotating residential | For marketplaces that need a consumer IP Residential exits in the region, holding one partition's pagination on one address so the result order stays stable. | Sticky, 10 minutes per partition | Country + city | €2.00 / GB €1.12 at 1 TB (−44%) |
ARC Ultra Premium residential | For the marketplace your series depends on Premium residential for the source where a missed day becomes a gap in a published index. Route only that source. | Sticky per partition | Country + city | €3.50 / GB €2.17 at 1 TB (−38%) |
Prices are list prices in EUR, excl. VAT. Volume discounts apply automatically at checkout — full ladder on the pricing page.
Connect
One connection string per market
The country, city and sticky session are tokens in the username. Change the token, change the market; keep the session handle, keep the IP.
http://USERNAME_pool-arcfast_country-de_session-k3f9a1x2_sesstime-10:PASSWORD@proxy.arcproxies.io:8000Swap _country-de for any market you quote. The full grammar is on the residential proxies page.
Illustration
What a daily used car panel across nine regions costs
An illustration with round numbers — your pages, payloads and retry rate will differ. The arithmetic is the real price ladder.
Assumptions
- Regions
- 9 (five German, four British metros)
- Result pages
- 20,000 a day at 110 KB
- New or repriced detail pages
- 25,000 a day at 160 KB
- Images
- blocked
- Cadence
- daily, 30 days
- Bandwidth per month
- ≈ 186 GB
On ARC Basic
€126.48per month, excl. VAT
186 GB bought in one purchase at €0.68 / GB (−9% volume rung, applied automatically).
The same 186 GB on ARC Fast: €252.96 at €1.36 / GB. Route only the jobs that need it through the pricier pool.
A one-off backfill or a jump to more regions is a bigger purchase, not a plan change; the balance does not expire, so what the backfill leaves over runs the daily panel. Image downloads are what would multiply this.
Bandwidth never expires, so a bigger single purchase is only ever cheaper per GB. See the ladder.
In depth
Used car prices, in depth
Listing prices, wholesale indices and CPI: three different numbers
A used car scraper produces retail asking prices. That is not what the better-known indices measure, and mixing them up is the most common error in this kind of analysis.
| Series | What it measures | How it is built |
|---|---|---|
| Your listing panel | Retail asking prices, stock and time on market | Public adverts, daily, by region and vehicle |
| Manheim Used Vehicle Value Index (US) | Wholesale prices at auction | Manheim's US auction sales, adjusted for mix, mileage and season |
| US CPI, used cars and trucks | Consumer price change | Valuations from J.D. Power for a sample of 480 vehicles two to seven years old |
| UK CPI, second-hand cars | Consumer price change | Car listings data from Auto Trader since March 2024, stratified by age and make |
Listings lead because they move the day a dealer reprices, while monthly indices arrive weeks later. They also include the seller's optimism, so treat the level with care and the direction with more confidence.
Why official statisticians switched to listings data
The UK's Office for National Statistics introduced car listings data into its consumer price statistics with the February 2024 indices, published in March 2024, after postponing the change by a year to improve methods. The new indices are stratified by age (1 to 10 years) and by make.
That choice is a useful methodological template for anyone building a private series: stratify by age and make, weight by what is on offer, and keep the method stable over time. In the US, the Bureau of Labor Statistics takes a different route, pricing a fixed sample of 480 vehicles from J.D. Power valuations and, since January 2024, assigning each an average monthly mileage based on its age.
Normalising vehicles so regions compare
- Age at observation, from the first registration date, not the model year alone. A car registered in December and one registered in January are a year apart on paper and a month apart in reality.
- Mileage bands within each age band, or a fitted mileage adjustment. The Manheim index, for example, adjusts for mileage within each market class.
- Trim and powertrain mapped to a reference list. A battery-electric and a petrol version of the same model are different markets.
- Seller type, because dealer prices include preparation and warranty that private sales do not.
The same discipline applies to deduplication and time on market as in real estate listings, and the guide on deduplicating listings covers the matching rules. For storing the result, see storing price time series.
Collecting vehicle listings responsibly
Keep to public, logged-out search and detail pages, read each marketplace's terms and robots.txt, and pace requests so the sweep does not load the site. Private sellers' names and phone numbers are personal data and are not needed for a price series; leave them out.
Vehicle identification numbers, where shown, can link a car to its owner through other records in some jurisdictions. Store them only if your matching genuinely needs them, and take advice on how. More on the parent page for alternative data, and on price series across markets on online price indices.
Works with anything that takes a proxy URL
- Python requests / httpx
- Scrapy
Crawlee
Playwright
- Docker
FAQ
Questions
Something not covered? Write to contact@arcproxies.io.
Is scraped used car data the same as a used car price index?
No. Listings show retail asking prices. Wholesale indices such as Manheim's measure auction prices, and the US and UK consumer price indices use valuations or listings data with their own sampling and adjustment. A listing panel leads them, but it is a different series and should be labelled as one.
Do official statistics use car listing data?
Yes. The UK's Office for National Statistics has used car listings data from Auto Trader in its consumer price statistics since the February 2024 indices, published in March 2024, stratified by age and make.
How do I compare used car prices between regions fairly?
Adjust for what is on offer. Fit price on age, mileage, trim and powertrain within each segment, or compare within narrow age and mileage bands. Raw regional averages mostly reflect differences in stock mix.
Which regions can I target?
City targeting on ARC Basic, Fast and Ultra covers a published list of metros in twelve countries, including Berlin, Munich, Hamburg, Cologne, Frankfurt, London, Manchester, Birmingham, Leeds, Paris, Lyon, Milan, New York, Los Angeles, Dallas and Toronto. Country targeting covers 185+ countries.
How much bandwidth does a daily used car panel use?
With images blocked, around 186 GB a month for 20,000 result pages and 25,000 new or repriced detail pages a day. Downloading photo galleries on every refresh is what would multiply it.
Sources & review
Last reviewed by the ARC Proxies team. Prices are read from the live catalog at build time.
- [1]Office for National Statistics: Using Auto Trader car listings data to transform consumer price statistics, UK: July 2023
- [2]U.S. Bureau of Labor Statistics: Measuring Price Change in the CPI: Used Cars and Trucks
- [3]Manheim (Cox Automotive): Used Vehicle Summary Methodology
Alternative data
More on alternative data
Get started
Buy a gigabyte and try it on your own targets.
No subscription, no sales call. Code WELCOME15 takes 15% off your first purchase, and whatever you do not use is still there next quarter.