AutoScout24 Scraper
Pricing
from $1.70 / 1,000 results
AutoScout24 Scraper
Extract used and new vehicle listings from autoscout24.com across Europe with prices, mileage, specs, full descriptions, dealer info, and high-res images. Proxies included.
Pricing
from $1.70 / 1,000 results
Rating
0.0
(0)
Developer
SilentFlow
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Turn AutoScout24 into a structured database covering 8 filterable country markets plus the full European catalogue. Pay $2 per 1,000 vehicles, 50+ fields per car, no login.
How it works

โจ Why use this AutoScout24 scraper
Tired of paying a monthly subscription for a scraper you only run a few times a quarter? Frustrated when one scraper only handles one country, so a pan-European catalogue means stitching together five different runs? Disappointed when the output stops at the grid fields and skips the full description, equipment list, dealer phones, and GPS coordinates you actually need?
- ๐ฐ Pay $2 per 1,000 listings, never per month. Pricing is pay-per-event. You are charged only for vehicles returned to your dataset. Residential proxies are included in the per-result price. No start fee. No compute fee. No subscription.
- ๐ 8 filterable country markets, 17 TLDs accepted in URL mode. 7 markets join into a single .com query (Germany, France, Italy, Spain, Belgium, Netherlands, Austria), Luxembourg has its own 8,000-listing local catalogue on .lu. URL mode also accepts the localised UIs on .de, .fr, .it, .es, .be, .nl, .at, .pl, .lu, .cz, .hu, .se, .ro, .bg, .hr, and .ru.
- ๐ One input field accepts everything. Search URLs and individual listing URLs are auto-classified. Mix them freely in the same run. Filters from the URL (sort, make, model, year range, mileage range, fuel, transmission, body type, equipment, radius, postal code) are preserved.
- ๐ฆ 50+ structured fields per vehicle. Price, mileage, year, fuel type, transmission, body color, paint type, seats, doors, HSN/TSN code, license plate (where exposed), production date, usage state, full seller description, all photos, dealer phones, dealer company name, latitude, longitude, and the AutoScout24 listing ID for cross-reference.
- ๐ฆ Auto-pagination, exact maxItems delivery. Set
maxItemsto 500 and the scraper returns 500 unique listings, automatically paginating through as many search pages as needed. Listings duplicated by the site's boost-ranking are deduplicated across pages by listing ID. - โก Direct connection by default for fast runs. The actor connects directly without proxy by default, which keeps run time short and cost low. Toggle
useResidentialProxyto true if you ever need extra resilience on very large volumes.
๐ฏ Use cases for AutoScout24 vehicle data
AI engineers, dealers, pricing analysts, and lead-gen teams use AutoScout24 data for these specific scenarios.
| Team | What they build with AutoScout24 data |
|---|---|
| Used-car dealers | Benchmark inventory pricing against the live German, French, and Italian markets, refreshed daily. Detect under-priced opportunities to acquire stock. |
| Pricing intelligence | Track price drops, depreciation curves, and stock turnover by make, model, fuel type, and country. Quantify "fair market" prices using thousands of comparable listings. |
| Auto comparators | Aggregate the AutoScout24 catalogue into a single search experience for end users without scraping the site themselves. |
| Insurance and finance | Feed real listings into vehicle valuation models, loan-to-value calculations, and total-loss settlement estimates. |
| Lead generation | Build dealer outreach lists across the EU with verified phone numbers, company names, and GPS coordinates. Map dealer activity by region. |
| Market researchers | Study EV adoption rates by country, mileage distributions, pricing power per segment, and how the used-car market evolves quarter over quarter. |
| Automotive content sites | Generate fresh data for car review articles, "best deals" roundups, and market reports without manual data entry. |
๐ฅ Input parameters
Search URLs
| Parameter | Type | Description |
|---|---|---|
searchUrls | array of objects | AutoScout24 URLs to scrape. Supports search pages (e.g. https://www.autoscout24.com/lst/porsche/911?cy=D) and direct listing pages (e.g. https://www.autoscout24.de/angebote/bmw-m5-...uuid). Auto-classified, mix both freely. Accepts any of the 10 country TLDs. |
Search filters (used only when searchUrls is empty)
| Parameter | Type | Description |
|---|---|---|
make | string | Vehicle make. Example: Porsche, BMW, Tesla. |
model | string | Vehicle model. Example: 911, M5, Model 3. |
priceMax | integer | Upper price bound in EUR. |
countries | array | AutoScout24 country codes (D Germany, F France, I Italy, E Spain, B Belgium, NL Netherlands, A Austria, PL Poland). Multi-select. |
Limits
| Parameter | Type | Default | Description |
|---|---|---|---|
maxItems | integer | 1000 | Maximum unique listings to save. Auto-pagination stops at this number. Set to a low value (e.g. 50) for fast test runs. |
Options
| Parameter | Type | Default | Description |
|---|---|---|---|
useResidentialProxy | boolean | false | Route requests through a residential proxy. Disabled by default for cost and speed. Enable only if you observe blocks on very large volumes. |
debugMode | boolean | false | Verbose logging. |
๐ Output data
Each scraped listing produces one flat JSON object with 50+ fields. Example for a Porsche 911 Carrera 4 listing on the German site:
{"listingId": "0fa8fd23-1303-421f-828a-e0c786b7b778","url": "https://www.autoscout24.de/angebote/porsche-911-carrera-4-coupe-gasoline-black-0fa8fd23-1303-421f-828a-e0c786b7b778","scrapedAt": "2026-05-15T12:00:00Z","title": "Porsche 911 Carrera 4","subtitle": "Carrera 4 Coupe","make": "Porsche","model": "911","modelGroup": "911","variant": "Carrera 4","price": 29900,"priceCurrency": "EUR","priceFormatted": "โฌ 29,900","isConditionalPrice": false,"vatDeductible": false,"category": "used","bodyType": "Coupe","firstRegistration": "03/2001","year": 2001,"mileage": 131222,"transmission": "Automatic","fuel": "Gasoline","engineSize": 3596,"color": "Black","paintType": "Metallic","seats": 4,"doors": "2","hsnTsn": "0583 ABC","usageState": "Used","productionDate": "2001-01-01","description": "Beautiful 911 Carrera 4 in excellent condition. Full service history, two owners. Recently serviced.","images": ["https://prod.pictures.autoscout24.net/listing-images/0fa8fd23-...-1.jpg","https://prod.pictures.autoscout24.net/listing-images/0fa8fd23-...-2.jpg"],"hasThreeSixty": false,"location": {"countryCode": "DE","zip": "25421","city": "Pinneberg","street": "Elmshorner Str. 146","latitude": 53.6755,"longitude": 9.79401},"seller": {"type": "Dealer","id": "46992491","companyName": "H&S Automobile Hamburg GmbH","contactName": "Sohrab Safi","logo": "https://prod.pictures.autoscout24.net/sellers/46992491-big.jpg","phones": ["+49 (0)176 - 22578171"]},"firstSeenAt": "2026-04-18T09:14:00+02:00"}
๐๏ธ Data fields
Identity and pricing
| Field | Type | Description |
|---|---|---|
listingId | string | AutoScout24 internal UUID (stable across crawls) |
url | string | Canonical URL of the listing on the source country site |
title | string | Make, model, and variant joined |
subtitle | string | Extended variant description |
price | number | Numeric price as integer |
priceCurrency | string | ISO currency code (EUR, GBP, USD) |
priceFormatted | string | Original price string as shown on AutoScout24 |
isConditionalPrice | bool | Price depends on export, leasing, financing |
vatDeductible | bool | VAT can be reclaimed by businesses |
category | string | used, new, demo, oldtimer, employees-car |
Vehicle specifications
| Field | Type | Description |
|---|---|---|
make, model, modelGroup, variant | string | Make and model hierarchy |
bodyType | string | Sedan, Coupe, SUV, Wagon, Van, Convertible, etc. |
firstRegistration | string | Original registration date in MM/YYYY format |
year | number | 4-digit year extracted from firstRegistration |
mileage | number | Kilometres on the odometer |
transmission | string | Manual, Automatic, Semi-automatic |
fuel | string | Gasoline, Diesel, Electric, Hybrid, LPG, CNG |
engineSize | number | Engine displacement in cc |
color, paintType | string | Body color and paint finish |
seats, doors | number, string | Cabin layout |
hsnTsn | string | German vehicle type code (HSN-TSN), useful for VIN and tax queries |
productionDate | string | Manufacturing date when exposed by the seller |
weight | number | Empty weight in kg when exposed |
Media and description
| Field | Type | Description |
|---|---|---|
description | string | Free-text description written by the seller |
images | array | High-resolution image URLs in display order |
hasThreeSixty | bool | 360ยฐ tour available |
youTubeLink | string | Linked video walk-around if seller provided one |
Location
| Field | Type | Description |
|---|---|---|
location.countryCode | string | ISO 3166-1 alpha-2 country code (DE, FR, IT, ES, BE, NL, AT, PL, LU) |
location.zip, location.city, location.street | string | Full postal address of the dealer |
location.latitude, location.longitude | number | GPS coordinates (WGS-84) when exposed |
Seller
| Field | Type | Description |
|---|---|---|
seller.type | string | Dealer or Private |
seller.id | string | AutoScout24 seller identifier (stable across listings) |
seller.companyName, seller.contactName | string | Dealer company and contact person |
seller.logo | string | Dealer logo URL |
seller.phones | array | Phone numbers in international format with country code |
๐ Examples
Working input examples copied directly from real production runs.
Get the latest Porsche 911 listings in Germany
{"searchUrls": [{ "url": "https://www.autoscout24.com/lst/porsche/911?atype=C&cy=D&sort=age&desc=1" }],"maxItems": 100}
Build a pan-European Tesla Model 3 catalogue
{"make": "Tesla","model": "Model 3","countries": ["D", "F", "I", "E", "B", "NL"],"maxItems": 500}
Track used BMW prices under EUR 20,000 in France
{"make": "BMW","priceMax": 20000,"countries": ["F"],"maxItems": 1000}
Enrich specific listings you already have
{"searchUrls": [{ "url": "https://www.autoscout24.com/offers/porsche-911-carrera-4-coupe-gasoline-black-0fa8fd23-1303-421f-828a-e0c786b7b778" },{ "url": "https://www.autoscout24.de/angebote/audi-rs6-avant-2024-gray-abc12345-6789-..." }],"maxItems": 100}
Multiple searches deduplicated in one run
{"searchUrls": [{ "url": "https://www.autoscout24.com/lst/audi/rs6?cy=D" },{ "url": "https://www.autoscout24.com/lst/bmw/m5?cy=D" }],"maxItems": 200}
๐ป Integrations
Python (Apify client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("autoscout24-scraper").call(run_input={"searchUrls": [{"url": "https://www.autoscout24.com/lst/porsche/911?cy=D"}],"maxItems": 200,})for vehicle in client.dataset(run["defaultDatasetId"]).iterate_items():print(vehicle["make"], vehicle["model"], vehicle["price"], vehicle["location"]["city"])
JavaScript (Apify client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('autoscout24-scraper').call({searchUrls: [{ url: 'https://www.autoscout24.com/lst/porsche/911?cy=D' }],maxItems: 200,});const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const v of items) {console.log(v.make, v.model, v.price, v.location.city);}
Feed AutoScout24 listings into a pricing model
import pandas as pdfrom apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("autoscout24-scraper").call(run_input={"make": "Tesla","model": "Model 3","countries": ["D", "F", "I", "E"],"maxItems": 1000,})df = pd.DataFrame(list(client.dataset(run["defaultDatasetId"]).iterate_items()))print(df.groupby("location.countryCode")["price"].agg(["mean", "median", "count"]))
๐ Performance benchmarks
Measured on 2026-05-15 against autoscout24.com with the default direct-connection mode (no proxy).
| Run size | Wall-clock duration | Run cost on your Apify account |
|---|---|---|
| 50 listings | 6 seconds | $0.0005 |
| 200 listings | 12 seconds | $0.0018 |
| 500 listings | 89 seconds | $0.0072 |
| 1,000 listings | 135 seconds (capped at 605 unique items) | $0.0096 |
The 1,000-item run capped at 605 because the chosen Porsche 911 search only has that many unique listings in Germany at the moment. AutoScout24 boosts certain ads across multiple pages; the scraper deduplicates by listing ID so you get unique vehicles, not duplicates.
Speed factors: AutoScout24 responds in under 1 second per request from European Apify regions. The scraper runs 10 parallel workers by default. A 200-listing run reads about 34 MB of HTML across pages, which is why duration scales sub-linearly with maxItems.
๐ก Tips for best results
- Paste the URL straight from your browser. Build the exact filter set on autoscout24.com (or .de, .fr, .it, etc.), copy the URL, paste it into
searchUrls. Every URL filter the site supports is preserved (sort, year range, mileage range, fuel type, transmission, body type, equipment, radius from postal code, dealer-only or private-only, and more). - Combine multiple search URLs in one run. Run several queries together to get a single deduplicated dataset. The scraper drops duplicate listings by ID across all search URLs.
- For large markets, segment by year or price. Germany alone has more than 800,000 listings on a given day. To go deeper than a single search returns, split into several searches by year range or price band, then run them together.
- Set
maxItemsto your real cap. Pagination stops automatically when the cap is reached, so a low cap means fast runs and predictable cost. Need 50 listings? SetmaxItems: 50. - GPS coordinates are not always present. AutoScout24 exposes latitude and longitude for most dealers but some private sellers and a few dealers omit them. The fields are optional in the output.
- Use the
.de,.fr,.itcountry sites directly. If you mostly care about one country, paste that country's site URL. The listing URLs in the output preserve the original country TLD.
โ Frequently asked questions
Do I need a login or an AutoScout24 account?
No. The AutoScout24 Scraper reads public listing pages only. There is no login, no API key, and nothing to set up. Paste a URL or set filters, click Start, and the data flows to your dataset.
Which AutoScout24 country sites does the scraper support?
URL mode accepts all 17 sites in AutoScout24's country selector: .com, .de, .fr, .it, .es, .be, .nl, .at, .pl, .lu, .cz, .hu, .se, .ro, .bg, .hr, .ru. The scraper auto-detects the TLD and preserves it in the output URL.
The Countries dropdown exposes 8 real country filters (Germany, France, Italy, Spain, Belgium, Netherlands, Austria, Luxembourg). The other 9 country sites (.pl, .cz, .hu, .se, .ro, .bg, .hr, .ru) are localised interfaces that serve the same European catalogue rather than country-specific listings, so they are not shown as filters; paste their URL directly via Search URLs if you want to scrape them in their original language interface.
Can I scrape multiple countries in one run?
Yes, two ways. Either paste an autoscout24.com search URL with multiple countries in the cy= parameter, for example cy=D,F,I,E. Or use filter mode with the countries array set to ["D", "F", "I", "E"]. Both produce a single deduplicated dataset combining all markets.
How much does each run cost?
Pricing is $0.002 per result, equal to $2 per 1,000 vehicles returned. There is no monthly subscription, no actor-start fee, and no separate proxy charge. A 200-listing test run costs $0.40; a 1,000-listing run costs $2.
What if the scraper hits a snag on a very large run?
The actor connects directly without proxy by default for the fastest and cheapest runs. If you observe any reliability issue on very large volumes, set useResidentialProxy: true and residential proxies will rotate automatically. Residential proxies are included in the per-result price, no separate proxy fee.
What is the difference between a search URL and a listing URL?
A search URL starts with /lst/... (on all country sites) and returns a paginated grid of vehicles matching filters. A listing URL is a single vehicle ad: /offers/... on .com, /angebote/... on .de, /annonces/... on .fr, with equivalent localised paths on other country sites. You can paste either, or both, in searchUrls. The scraper auto-detects the type and routes each URL to the correct pipeline.
How many fields per vehicle does the scraper return?
The output contains 50+ structured fields per vehicle, including identity (listingId, url), pricing (price, priceCurrency, priceFormatted, isConditionalPrice, vatDeductible, category), specifications (make, model, modelGroup, variant, bodyType, firstRegistration, year, mileage, transmission, fuel, engineSize, color, paintType, seats, doors, hsnTsn, productionDate, weight, usageState), media (description, images, hasThreeSixty, youTubeLink), location (countryCode, zip, city, street, latitude, longitude), and seller (type, id, companyName, contactName, logo, phones).
Are dealer phone numbers included?
Yes. Each listing's seller.phones array contains every phone number the dealer published, formatted with country code (for example +49 (0)176 - 22578171). Private sellers rarely expose phone numbers; for them the array is typically empty.
Are GPS coordinates included?
Yes for most dealer listings. The location.latitude and location.longitude fields contain WGS-84 GPS coordinates when AutoScout24 exposes them. Coverage is roughly 90% for professional dealers, lower for private sellers.
Can I scrape only new cars, or only used cars?
Yes. Use the category filter via the URL (ustate=N for new, ustate=U for used) or filter the output dataset on the category field after scraping. The field values are used, new, demo, oldtimer, and employees-car.
Can I limit the output size?
Yes, set maxItems. The default is 1000. Pagination stops automatically when the cap is reached, even if more listings exist for your search.
Can I run this on a schedule?
Yes. Schedule the actor in the Apify Console to run daily, weekly, or any cron expression. Combine with Apify webhooks or the Apify API to push fresh AutoScout24 data into your data warehouse, CRM, or pricing model.
What format does the scraper output?
JSON by default. Apify also exports the dataset to CSV, Excel, XML, RSS, and HTML formats from the Run page or via the dataset API, no additional configuration needed.
How fresh is the data?
The data is real-time. Every run fetches the current state of AutoScout24 listings at request time. The scrapedAt field on each row is an RFC3339 timestamp of when that specific listing was captured. Run on a schedule for time-series tracking.
๐ฌ Support
Click "Try for free" on the Apify Store page to launch a free run with the prefilled Porsche 911 search input. Every Apify account gets free credits to test the scraper end-to-end before paying for anything.