AutoScout24 Scraper icon

AutoScout24 Scraper

From $0.8/1K. A lean, production-grade scraper for autoscout24.com. Point it at a search, get back clean JSON with 30+ fields per vehicle. Designed for…

Start using this actor on Apify ↗Need a custom scraper?Contact us ↗

AutoScout24 Scraper at a glance

AutoScout24 Scraper is a ready-to-run Apify actor from abotapi for collecting lead generation data. Its documented output includes id, change type (incremental mode), title, make and model, which you can export as JSON, CSV or Excel or read through the Apify API. It costs $1.50 per 1,000 results on the Apify Free plan and from $0.80 on paid plans, with smaller per-run or optional feature charges listed on Apify.

Runs on
Apify cloud: console, API, schedules and integrations
Data type
Lead Generation, Developer Tools, Automation
Pricing
$1.50 per 1,000 results (Free plan), from $0.80 on paid plans
Output
Documented below · JSON, CSV, Excel
Inputs
35 options

From $0.8/1K. A lean, production-grade scraper for autoscout24.com. Point it at a search, get back clean JSON with 30+ fields per vehicle. Designed for dealers, market analysts, valuation pipelines, lead generation, and anyone who needs autoscout24 data on tap.

What AutoScout24 Scraper can do

  • Two ways to find cars. Filter by make, model, country, price, year, mileage, fuel type, transmission and body type, or paste a search link straight from your browser. Each URL paginates on its own.
  • 30+ core fields per listing. Make, model, year, price, mileage, transmission, fuel, location, seller type and contact, ratings and images, out of the box.
  • Full detail enrichment on demand. Switch on Fetch full details for around 100 extra fields: equipment list, fuel consumption, body color, paint type, electric range, drivetrain, previous owners, service history and the dealer's own description.
  • Dealer contact lookup. Switch on Fetch dealer email, VAT, address to add a dealer's email, VAT ID, registered address, homepage and opening hours, looked up once per dealer and reused across all their listings.
  • Pan-European coverage. Filter by up to 8 countries, Germany, Austria, Belgium, Spain, France, Italy, Luxembourg and the Netherlands, in a single run.
  • Multi-page pagination with dedup. Drop in several search URLs or filter combinations, each walks forward page by page with no duplicate listings.

Choose what to collect

These inputs let you configure AutoScout24 Scraper - Vehicle Listings, Prices & 30+ Fields. Open the actor on Apify to enter your values and review the current options.

Supported input fields
InputWhat it controls
modestring · requiredChoose how to find listings. Only fields belonging to the chosen mode are used.

Choices: search, url

urlsarrayAutoScout24 URLs to scrape. Search-results URLs (/lst...) auto-paginate forward until Maximum Pages or Maximum Listings; a single-listing URL (/offers/ or /angebote/) returns one full detail record. Ignored in Search mode. Dealer pages (/dealerinfo/) and motorcycle listings (/lst-moto) are walked like search results. A pasted ?page=N start page is honoured. If left empty, the default is https://www.autoscout24.com/lst. Example: https://www.autoscout24.com/lst/bmw/x5?fregfrom=2020
makestringManufacturer name or slug, e.g. BMW, Mercedes-Benz, Land Rover, volkswagen. Checked against the site's own make list; an unknown make fails the run with the closest matches. Leave empty for all makes. (Search mode only, ignored in URL mode.)
modelstringModel name or slug, e.g. X5, A4, C-Class, Golf, 911. Checked against the site's model list for the make; an unknown model fails the run with the closest matches. Requires a Make. (Search mode only, ignored in URL mode.)
countriesarrayListing country (multi-select). Default = all 8 supported countries. (Search mode only, ignored in URL mode.)
ustatestringNew / Used / Both. (Search mode only, ignored in URL mode.)

Choices: both, new, used

bodyTypestringBody shape. Codes verified against autoscout24's own taxonomy. (Search mode only, ignored in URL mode.)

Choices: , 1, 2, 3, 4, 5, 6, 7, 12, 13

Show 28 more inputs
More input fields
InputWhat it controls
fuelTypesarrayAutoScout24 fuel codes (multi-select). Verified by single-fuel probe: B = Gasoline, D = Diesel, E = Electric, 2 = Hybrid Electric/Gasoline, 3 = Hybrid Electric/Diesel, L = LPG, C = CNG, M = Ethanol (E85), H = Hydrogen, O = Other. Leave empty for any fuel. (Search mode only, ignored in URL mode.)
transmissionstringGearbox type. (Search mode only, ignored in URL mode.)

Choices: , A, M, S

sellerTypestringDealer or private seller. (Search mode only, ignored in URL mode.)

Choices: , D, P

colorsarrayOnly listings in any of these body colours. Empty = any colour. (Search mode only, ignored in URL mode.)
priceMinintegerLower bound for price. (Search mode only, ignored in URL mode.)
priceMaxintegerUpper bound for price. (Search mode only, ignored in URL mode.)
yearMinintegerOldest first-registration year. (Search mode only, ignored in URL mode.)
yearMaxintegerNewest first-registration year. (Search mode only, ignored in URL mode.)
kmMinintegerLower bound for mileage. (Search mode only, ignored in URL mode.)
kmMaxintegerUpper bound for mileage. (Search mode only, ignored in URL mode.)
powerMinKwintegerLower bound for engine power in kW. (1 hp ≈ 0.735 kW) (Search mode only, ignored in URL mode.)
powerMaxKwintegerUpper bound for engine power in kW. (Search mode only, ignored in URL mode.)
sortBystringSort order. AutoScout24 also offers default 'standard' (relevance). (Search mode only, in URL mode the sort comes from the URL itself.)

Choices: standard, price, price_desc, age, age_desc, mileage, mileage_desc, year, year_desc

fetchDetailsbooleanFetch each listing's detail page for ~100 extra fields (full equipment list, fuel consumption, body color, paint type, electric range, drivetrain, dealer description, coordinates, WhatsApp, listing creation timestamp). Adds ~1 HTTP request per listing. Each delivered listing whose detail page is read is charged as one detail-page event on top of the per-result charge; listings whose detail page is refused, and listings incremental mode suppresses as unchanged, are not charged.
fetchDealerInfobooleanFetch each unique dealer's legal Imprint page to extract email, VAT ID, registered address, homepage URL, and opening hours. The fetch is cached per dealer so a 1000-listing run from 50 dealers only costs ~50 extra requests. Requires Fetch full details to be on (the imprint URL comes from the detail page).
maxListingsintegerStop after scraping this many listings across the whole run. Capped at 1,000,000.
maxPagesintegerSafety bound on how many result pages to walk per search or URL (~20 listings per page). 0 (default) means unlimited: the walk stops naturally once a page comes back empty, once it starts repeating listings already seen this walk (the site's own clamp signature), or sooner once Maximum listings is reached. Set a number only for an explicit page cap below that natural stop.
resumeFromRunIdstringPaste a previous run ID or dataset ID to continue a large crawl of listings without returning or charging for listings already collected there. Use this after an interrupted run, or when continuing a walk-all pull in another run. For recurring monitoring of the same search, use Incremental mode below instead.
incrementalModebooleanTurn this on for daily or recurring monitoring. The first run returns all matching listings as NEW. Each listing is compared field by field with its saved copy (price, mileage, seller, location, specs, detail fields); scrapedAt and the raw listing blocks (which mirror the flat fields, except that with Fetch full details on the detail-only specifications inside vehicle such as weights, dimensions, WLTP, HSN/TSN and service dates are not compared) are excluded because they change without the car changing (use Ignore fields to exclude more). Later runs normally return only NEW, UPDATED, and REAPPEARED listings. Turn on "Emit unchanged" or "Emit expired" only when you also want those listings returned (and billed). State is kept separately for each search/filter/URL and detail-mode setup; use State key when you want to name or deliberately share a monitoring campaign. To continue one specific interrupted run instead, use Resume from a previous run above.
stateKeystringOptional. Name this monitoring campaign to keep its state stable, or to deliberately share state across differently-configured runs. Leave empty to let the actor derive a key automatically from the search/filter/URL and detail settings, different searches then never mix state with each other.
emitUnchangedbooleanOff by default. Turn on to also return listings that have not changed since the last run, marked UNCHANGED. This returns, and bills, extra rows you already have, so leave it off unless you specifically want the full snapshot every run.
emitExpiredbooleanOff by default. Turn on to also return listings that were present in a previous run but are no longer found, marked EXPIRED. Only produced once a run has fully scanned the tracked search, not when Maximum listings/pages capped it or when Resume was used. This returns, and bills, extra synthetic rows, so leave it off unless you need expiry tracking.
ignoreFieldsForChangesarrayOptional. Field names that must NOT count as a change (they stay in the output). Use dotted paths for nested fields, for example "a.b". Already ignored automatically: scrapedAt and the raw listing blocks id, availableNow, coverImageAttractiveness, headerImage, ratings, location, seller, vehicle and vehicleDetails. With Fetch full details on, the detail-only specifications inside vehicle (weights, dimensions, WLTP, HSN/TSN, service dates) are therefore not compared for changes. Add e.g. price, mileageKm, images or phones to also ignore those.
mcpConnectorsarrayOptionally send the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize a connector once under Apify → Settings → Integrations, then select it here. The connector receives a condensed, human-readable summary per item (title + key fields), not the full JSON, the complete record stays in the dataset. Leave empty to skip. Supported: Notion (https://mcp.notion.com/mcp), Linear (https://mcp.linear.app/sse), Airtable (https://mcp.airtable.com/mcp), Apify (https://mcp.apify.com).
notionParentPageUrlstringURL (or id) of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors.
maxNotifyListingsintegerCap on items written to each connector per run. Does not affect the dataset.
searchUrlsarrayAlias of 'URLs' for migration from other AutoScout24 scrapers. Used when 'URLs' is empty or still the default; switches the run to URL mode unless search filters are set.
maxPageintegerAlias of 'Maximum pages per search'. Used only when that field is 0/empty.

Fields in the output

The documented dataset includes the fields below. Availability can depend on the source page and selected mode.

listingIdID (text)
changeTypeChange type (incremental mode) (text)
titleTitle (text)
makeMake (text)
modelModel (text)
yearYear (number)
pricePrice (number)
currencyCur. (text)
mileageKmKm (number)
fuelFuel (text)
transmissionTrans. (text)
countryCountry (text)
Show 34 more fields
cityCity (text)
urlURL (link)
detailFetcheddetailFetched
sellerTypesellerType
companyNamecompanyName
contactNamecontactName
phonesphones
whatsappNumberwhatsappNumber
dealerEmaildealerEmail
dealerVatIddealerVatId
dealerHomepagedealerHomepage
ratingsStarsratingsStars
ratingsCountratingsCount
zipzip
imageCountimageCount
imagesimages
changedFieldschangedFields
firstSeenAtfirstSeenAt
lastSeenAtlastSeenAt
colorcolor
paintTypepaintType
upholsteryupholstery
upholsteryColorupholsteryColor
seatsseats
doorsdoors
drivetraindrivetrain
fuelConsumptionCombinedfuelConsumptionCombined
electricRangeKmelectricRangeKm
previousOwnerspreviousOwners
hadAccidenthadAccident
hasFullServiceHistoryhasFullServiceHistory
newInspectionnewInspection
equipmentequipment
descriptiondescription

Example output

An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.

{
  "listingId": "a1b2c3d4-0000-0000-0000-000000000000",
  "url": "https://www.autoscout24.com/offers/bmw-x5-example",
  "title": "BMW X5",
  "make": "BMW",
  "model": "X5",
  "year": 2020,
  "firstRegistration": "03/2020",
  "bodyType": "SUV/Off-Road/Pick-Up",
  "transmission": "Automatic",
  "fuel": "Diesel",
  "powerKw": 170,
  "powerHp": 231,
  "mileageKm": 120000,
  "price": 35000,
  "priceDisplay": "€ 35,000",
  "currency": "EUR",
  "country": "DE",
  "city": "Munich",
  "zip": "80331",
  "latitude": 48.1351,
  "longitude": 11.582,
  "sellerType": "Dealer",
  "companyName": "Example Motors GmbH",
  "phones": [
    {
      "phoneType": "Office",
      "formattedNumber": "+00 000 0000000"
    }
  ],
  "ratingsStars": 4.5,
  "ratingsCount": 120,
  "dealerEmail": "contact@example-dealer.invalid",
  "dealerVatId": "DE000000000",
  "color": "Grey",
  "seats": 5,
  "doors": 5,
  "drivetrain": "4WD",
  "previousOwners": 1,
  "hasFullServiceHistory": true,
  "images": [
    "https://images.example.com/example.jpg"
  ],
  "imageCount": 15,
  "scrapedAt": "2026-04-25T10:00:00.000Z"
}

Ways to use this data

  • Price intelligence: track asking prices for a specific make, model, year or trim across countries to spot trends.
  • Dealer analysis: pull every listing from one dealer, with contact and VAT details, to monitor inventory and turnover.
  • Lead generation: collect dealer name, phone, WhatsApp number and email from fresh listings.
  • Market research: compare fuel mix, body style share or mileage distribution across the 8 covered countries.
  • Valuation and pricing models: feed a pricing engine with current inventory and dealer metadata.
  • Inventory mirroring: sync a dealer's own stock into a CRM or another marketplace.

Before you run

Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.

Questions about this actor

What data does AutoScout24 Scraper return?

The documented output for AutoScout24 Scraper includes id, change type (incremental mode), title, make, model, year, price and cur.. Availability of each field depends on the source page and the selected mode.

How much does AutoScout24 Scraper cost?

It costs $1.50 per 1,000 results on the Apify Free plan and from $0.80 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.

What is the difference between Resume and Incremental mode?

They solve different problems. Resume (resumeFromRunId) continues one specific run that was interrupted or capped: it skips listings a named previous run or dataset already collected. Incremental mode is for scheduling the same search again and again, for example daily, and getting back only what changed since last time, without you ever pasting a run ID. Turning both on together fails the run with a clear message if that search already has saved incremental state.

Do I need to turn on Fetch full details separately to get dealer email, VAT and address?

No. Turning on Fetch dealer email, VAT, address automatically fetches each listing's detail page too, since that is where the link to the dealer's imprint page comes from. You do not need to also check Fetch full details, though doing so adds the roughly 100 extra vehicle fields on top.

Why did my run return fewer listings, or an empty dataset, instead of failing?

A run stops with an explicit error only when the connection settings cannot be set up, when Resume from a previous run points at a run or dataset this account cannot read, or when Incremental mode is combined with Resume on a search that already has tracked incremental state. In every other case, for example filters that match nothing, or a stretch where AutoScout24 pages could not be read, the run finishes normally and simply returns fewer records, or none. Check the run log for page-level warnings to tell "no matching cars" apart from "some pages could not be read".

Can I use it with AI agents or MCP?

Yes. Call it from any Apify integration or MCP client, and use the connector field to push results into Notion, Linear or Airtable.

Ready to collect with AutoScout24 Scraper?

Run it on Apify with your own input and export the results as JSON, CSV or Excel.