AutoScout24 Scraper $0.8๐ฐ Cars + Dealer Data
Pricing
from $0.80 / 1,000 results
AutoScout24 Scraper $0.8๐ฐ Cars + Dealer Data
From ๐ฐ$0.8/1K. Scrape car listings from AutoScout24 across 8 European markets, with full vehicle specs, pricing, price-rating labels and dealer contacts. Get back clean JSON with 80+ fields per vehicle. Useful for car dealers, market analysts, valuation pipelines, lead generation and many more.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
Corvuslab
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
AutoScout24 Scraper
Extract car listings from AutoScout24, Europe's largest vehicle marketplace, across 8 markets โ Germany, Austria, Belgium, France, Italy, Netherlands, Spain and Luxembourg.
Every record comes back as clean, typed JSON: full vehicle specification, price with AutoScout24's own price rating, seller identity and phone number, GPS coordinates, equipment list and the complete seller description.
What you get
-
๐ 8-market coverage โ Germany, Austria, Belgium, France, Italy, Netherlands, Spain and Luxembourg on one codebase. Each country is searched separately and the results are merged and de-duplicated into a single dataset.
-
๐ท๏ธ AutoScout24 price-rating labels โ every listing carries AutoScout24's own price classification (
top-price,good-price,fair-price,somewhat-expensive,increased-price,high-price) alongside the numeric price, so you can spot underpriced stock without building your own valuation model. -
๐ Dealer contacts โ company name, contact person, phone number, dealer profile URL and the dealer's star rating and review count.
-
๐ง 80+ structured fields โ power in kW and HP, drivetrain, gears, cylinders, displacement, body colour, paint type, upholstery, equipment list, emission class, fuel consumption, previous owners, service history and accident status.
-
๐ Geo data โ country, city, ZIP, street and latitude/longitude on every record, ready to plot or to join against your own territory data.
-
โป๏ธ Incremental mode โ scheduled runs emit only listings that are new, changed or gone since the last run. Unchanged cars are skipped before any detail page is fetched, so a quiet run is both fast and cheap.
-
๐ Change classification โ each record carries a
changeTypeofNEW/UPDATED/REAPPEARED/EXPIRED, so a diff dashboard needs no extra bookkeeping on your side. -
๐ Notifications โ Slack, Discord, Telegram and custom webhook alerts when a run finishes. Combine with incremental mode to be pinged only when inventory or pricing actually moves.
-
๐ Detail enrichment โ two-stage scraping: paginate the search first, then pull each listing's full detail payload. One toggle (
includeDetails) controls the depth, so you can trade completeness for speed and cost. -
๐ฆ Compact mode โ core fields only, for AI agents and MCP clients that pay per token. Pair it with
excludeEmptyFieldsto drop nulls and empty arrays entirely. -
โ๏ธ Description control โ pick a single description representation with
descriptionFormat(text/html/markdown) and cap its length withdescriptionMaxLengthto keep prompt cost and dataset size predictable. -
๐ Paste-a-URL โ build the search on autoscout24.com and paste the URL straight in. Any search URL works, and several can run in one go.
-
๐ค Export anywhere โ download as JSON, CSV, Excel or XML from the Apify Console, or stream it live through the Apify API and integrations.
The scraper reads AutoScout24's own structured page data rather than scraping rendered HTML, so fields stay accurate and the output does not break when the site restyles.
Input
Either fill in the filters, or paste search URLs straight from your browser.
{"make": "BMW","model": "3-series","countries": ["DE", "AT"],"condition": "used","priceFrom": 5000,"priceTo": 25000,"yearFrom": 2018,"mileageTo": 150000,"fuelTypes": ["diesel"],"transmission": "automatic","bodyTypes": ["station-wagon"],"sortBy": "newest","maxResults": 100,"includeDetails": true,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Make and model accept the names you already know โ BMW, VW, mercedes-benz โ
and both family and specific names for the model: 3-series and 3 Series both work,
as do c-class, golf and 320. Get it wrong and the run stops immediately with the
list of valid models, instead of quietly returning the wrong cars.
Paste a URL instead if you prefer to build the search on autoscout24.com:
{"searchUrls": ["https://www.autoscout24.com/lst/porsche/911?atype=C&cy=A&sort=price&desc=1"],"maxResults": 50}
Output
One row per listing. Unavailable data points are returned as null, never omitted,
so the shape is stable across every run.
{"listingId": "b22d05a0-a5c4-4f6f-9c5c-d16736186a4a","title": "BMW 330 d Touring Steptronic Sport Line+LED+AHK+PDC","url": "https://www.autoscout24.com/offers/bmw-330-d-touring-โฆ","make": "BMW","model": "330","modelGroup": "3 Series","variant": "Touring","motorType": "330d","bodyType": "Station Wagon","condition": "Used","mileageKm": 130469,"firstRegistration": "2018-10-01","fuelType": "Diesel","transmission": "Automatic","gears": 8,"powerKw": 190,"powerHp": 258,"engineDisplacementCcm": 2993,"cylinders": 6,"driveTrain": "Rear Wheel Drive","bodyColor": "Blue","paintType": "Metallic","upholstery": "Cloth","numberOfSeats": 5,"numberOfDoors": 5,"price": 18990,"priceFormatted": "โฌ 18,990","currency": "EUR","priceEvaluation": "top-price","priceNegotiable": false,"vatDeductible": false,"sellerType": "Dealer","sellerName": "Kamux Auto GmbH","sellerContact": "Ihr Verkaufsteam","sellerPhone": "+492421480508100","dealerUrl": "https://www.autoscout24.com/dealerinfo/kamux-auto-gmbh-dueren?atype=C","sellerRatingStars": 4.0,"sellerRatingCount": 11,"country": "DE","city": "Dรผren","zip": "52351","street": "Rudolf-Diesel-Straรe 5","latitude": 50.78089,"longitude": 6.50913,"imageCount": 46,"images": ["https://prod.pictures.autoscout24.net/listing-images/โฆ/1280x960.webp"],"equipment": ["Panorama roof", "Navigation system", "Trailer hitch", "โฆ"],"emissionClass": "Euro 6","fuelConsumption": "4.1 l/100 km (comb.)","fuelConsumptionL100km": 4.1,"previousOwners": 2,"hasServiceHistory": false,"hadAccident": false,"nextInspection": "11/2027","createdAt": "2026-04-21T14:47:24.521Z","scrapedAt": "2026-07-25T11:57:21.849Z","source": "autoscout24.com"}
Export as JSON, CSV, Excel or XML, stream it from the API, or push it onward with any Apify integration.
Compact mode
Set compact: true to get just the 20 fields that matter for triage โ ideal when an
LLM or agent is reading the output and you are paying per token.
Incremental mode โ turn it into a monitor
Set incrementalMode: true and schedule the run. The scraper remembers every listing
between runs and reports only the deltas:
changeType | Meaning |
|---|---|
NEW | Listing appeared for the first time |
UPDATED | Price, mileage, title, rating or photo count changed |
REAPPEARED | A listing that had disappeared came back |
EXPIRED | A listing that was there last run is gone โ sold or withdrawn |
Unchanged listings are skipped entirely: they cost you nothing and are not even fetched. A real example from a 35-car search โ the second run emitted 2 records instead of 35.
Change detection is decided from the search page, before any detail page is requested,
so a quiet run is fast and cheap. Set skipReposts: true to also suppress vehicles
that a dealer deleted and re-listed under a fresh ID.
EXPIREDneeds a complete pass over the search, so it is reported only on runs that were not cut short bymaxResults. The run log tells you when this happens.
Notifications
Fill in any of slackWebhookUrl, discordWebhookUrl, telegramToken + telegramChatId
or webhookUrl to get a summary when the run finishes. Combine with
notifyOnlyChanges: true and incremental mode to be pinged only when something actually
moved. A failing notification never fails the run.
Use cases
-
Competitive pricing intelligence โ pull every rival listing for the models you stock, join it against your own inventory and see where you are over- or under-priced. The
priceEvaluationlabel gives you AutoScout24's own verdict on each car for free. -
Cross-border arbitrage โ the same model is rarely priced the same in Germany and Italy. All eight markets are quoted in EUR, so a single run gives you a directly comparable price spread without any FX handling.
-
Inventory and stock monitoring โ run it on a schedule with
incrementalModeto watch a competitor's dealer stock and get told the moment a car is added, repriced or sold. TheEXPIREDchange type is a sell-through signal you cannot get from a one-off scrape. -
Residual value and depreciation modelling โ mileage, first registration, power, equipment and price on tens of thousands of comparable cars is the raw material for a valuation curve. Add
previousOwners,hadAccidentandhasServiceHistoryto control for condition. -
Lead generation โ every dealer record carries company name, contact person, phone number, profile URL and star rating, filterable by country, city or brand specialisation.
-
Buyer alerts โ a narrow saved search plus
incrementalModeandnotifyOnlyChangespings your Slack, Discord or Telegram only when a car matching your brief actually appears, instead of re-sending the same results every morning. -
AI agents and LLM pipelines โ
compactmode plusexcludeEmptyFieldsanddescriptionMaxLengthproduce a small, uniform payload that fits in a prompt without burning tokens on nulls and boilerplate.
Good to know
- Use residential proxies. AutoScout24 challenges datacenter IPs, and a challenged detail page comes back with empty fields rather than an error. The default proxy setting already selects residential.
- 4,000 listings per search is AutoScout24's own limit, not this Actor's. To go past it, narrow the filters (by price band, year or body type) or add more countries โ each country is searched separately and gets its own 4,000.
- Set
includeDetails: falsefor a fast, cheap sweep: you still get title, price, price rating, mileage, registration, fuel, gearbox, seller and location, just without the description, equipment and detailed specification. - Prices are in EUR across all eight markets.
FAQ
How many listings can I get in one run?
Set maxResults to whatever you need. The practical ceiling is AutoScout24's own: it stops
paginating a single search after a few thousand results, however you sort it. Each country
you select is a separate search with its own ceiling, so adding markets or narrowing by
price band, year or body type multiplies what you can reach. The run log reports how many
listings are available and how many pages are reachable for every search it starts.
Do I need a proxy? Yes โ use residential. AutoScout24 challenges datacenter IPs, and a challenged detail page comes back with empty fields rather than a visible error, so you would get records that look fine but are missing the description, equipment and GPS. The default input already selects Apify Proxy with the residential group.
Can I run it on a schedule?
That is what it is built for. Add an Apify schedule, set incrementalMode: true, and each
run reports only what changed since the last one. State is kept between runs automatically;
set stateKey if you want several schedules to track separate searches independently.
Does AutoScout24 have an official API? Not a public one for listing search. This Actor reads the structured data the site's own front end uses, which is why the output is typed and stable rather than reverse-engineered from rendered HTML.
Which countries and currencies are covered? Germany, Austria, Belgium, France, Italy, Netherlands, Spain and Luxembourg. Every price is returned in EUR, so cross-market comparisons need no conversion.
Can I use my own AutoScout24 search URL?
Yes. Build the search in your browser, paste the URL into searchUrls, and the Actor takes
it from there. Multiple URLs run in one go, and they override the filter fields.
How do I get the data out?
Download as JSON, CSV, Excel or XML from the Console, pull it from the Apify API, or push it
onward with any Apify integration. For your own systems, set webhookUrl to receive a JSON
POST with the run summary as soon as it finishes.
Why are some fields null?
Because the seller did not fill them in. Every field is always present, with null where
there is no data, so the record shape never changes between runs. Set
excludeEmptyFields: trueincludeDetails: false also leaves
the detail-only fields empty by design.
Is scraping AutoScout24 legal? The Actor only collects data AutoScout24 publishes openly, without logging in. Listings can still contain personal data about private sellers โ see Legal below.
Legal
This Actor collects data that AutoScout24 publishes openly, without logging in. Listings can still contain personal information about private sellers, and you are responsible for handling it lawfully โ under GDPR that means having a legitimate basis for collecting and storing it. Use the data in line with AutoScout24's terms and your local law.