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
15 days ago
Last modified
Categories
Share
What does AutoScout24 Scraper do?
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 data can you extract from AutoScout24?
-
🌍 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.
✨ Key features
- 🔎 Search or URL scraping — build a search from make, model and country, or paste an AutoScout24 search URL you already ran in your browser and every filter in it is replayed.
- 🎚️ The filters buyers actually use — price range, registration year, mileage, fuel type, transmission, body type, condition and private-vs-dealer, applied on the site so you never pay for listings you filtered out.
- 🌍 Multi-country — search across the AutoScout24 markets in one run.
- 🧾 Typed listing records — price, mileage, power, first registration, equipment and seller details as structured fields, not scraped text you have to clean up.
- 🧠 Full detail enrichment — turn on details to add the complete description as text, HTML or Markdown, plus the extended spec fields.
- ♻️ Incremental monitoring — schedule it and get only what changed (NEW / UPDATED / EXPIRED), with repost detection; unchanged listings are skipped before their page is fetched.
- 🔔 Notifications — push matching listings to Slack, Discord or any webhook (n8n / Make / Zapier).
- 🤖 AI-ready — compact mode and
excludeEmptyFieldskeep payloads small for LLM and MCP pipelines.
🚀 How to scrape AutoScout24
- Open the Actor and pick a make and model (or paste an AutoScout24 search URL into
searchUrls), then choose the countries you want to cover. - Narrow it down with the filters that matter — price, year, mileage, fuel, transmission, body type, condition and seller type.
- Set Max results and decide whether to fetch full details for each listing.
- (Optional) Turn on incremental mode and a notification channel, then open the Schedules tab to run it on a recurring basis.
- Click Start, then download the data as JSON, CSV or Excel — or pull it from the API.
No login and no setup: it runs out of the box.
Good to know
- Leave the proxy setting on its default. The input ships with the configuration this Actor needs; changing it can make detail pages come back with empty fields rather than a visible error.
- 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.
⚙️ 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.
♻️ How to monitor AutoScout24 with incremental mode
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.
🔔 How to set up AutoScout24 alerts
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.
💡 What can you do with AutoScout24 data?
-
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.
💰 How much does it cost to scrape AutoScout24?
This Actor uses Apify's pay-per-event model: a small fee when a run starts, plus a per-record fee. See the Actor's Pricing tab for the current numbers — they're rendered live, so this page never goes stale.
Two things cut your bill further:
- Site-side filters — records you filtered out are never fetched and never billed.
- Incremental mode — after the baseline run you pay only for what actually changed.
| Daily churn | of 1,000 tracked | billable records | you save |
|---|---|---|---|
| 5 % | 1,000 | 50 | 95 % |
| 15 % | 1,000 | 150 | 85 % |
| 30 % | 1,000 | 300 | 70 % |
🔌 Integrations & export
Export to JSON, CSV, Excel or an HTML table, or pull from the REST API and the JavaScript / Python clients. Runs on a schedule, connects to Google Sheets, Slack, Make, Zapier and n8n, and works as an MCP tool for AI agents — compact mode keeps token usage small.
🔗 Using the API
Run this Actor from your own code. Example with the Apify Python client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("corvuslab/autoscout24-scraper").call(run_input={})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
It also works with the JavaScript/TypeScript client, the Apify CLI and the REST API.
❓ 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? No setup needed — the default input already carries the proxy configuration this Actor requires. Leave it as it is: on a different setting, detail pages can come back looking fine but missing the description, equipment and GPS rather than raising a visible error.
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.
⚖️ Is it legal to scrape AutoScout24?
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.
Keywords: autoscout24 scraper · autoscout24 api · autoscout24.com scraper · car listings scraper · used car data · vehicle marketplace scraper · germany car listings · europe car prices · auto marktplatz scraper · car price monitoring · dealer inventory data · market research · export to CSV/Excel/JSON · no-code car scraper · MCP tool for AI agents