# AutoScout24 scraper for car listings and prices

> AutoScout24 scraper for car listings in 8 EU countries. Filter by make, model, year, price and mileage. Get price, photos and dealer. No login.

URL: https://cliqtomedia.com/actors/car-listings-scraper/

Category: Classifieds & second-hand · Status: live on Apify Store · Apify page: https://apify.com/cliqtomedia/car-listings-scraper?fpr=cliqto

Pick a car make and model, and add filters. You get one row per listing with price, mileage, year, fuel and photos. On a schedule, get only new listings.

## How to use it: 3 steps

1. **Make a free Apify account.** Apify is the cloud platform where our tools run. The free plan gives you $5 of usage every month, no credit card needed. You pay Apify, not us.
2. **Paste your input and press Start.** No code needed: you fill in a form (the input). It already has a working example. For example: `BMW` in Make. Each start is one run.
3. **Download the results.** When the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.

## What it does

AutoScout24 Car Listings Scraper finds used and new car listings on AutoScout24 in 8 EU countries by make, model, year, price and mileage, and returns one clean row per car with price, mileage, first registration, fuel, gearbox, power, location, dealer and photos. No login, cookies or API key are needed: type a make and a model, start, and 20 listings arrive in about 10 seconds for $0.0073.



### Good for

- Track asking prices and mileage for one model in one or more countries.
- Watch for new listings of a car you want to buy (schedule + Only new listings).
- Build a list of dealers that sell a model, with their rating and location.
- Collect a price sample for valuation or market research.

### Not a good fit

- No full listing page: no description text, equipment list, colour, CO2 or seller phone numbers.
- No private seller contacts. For private sellers you get only city, zip and country.
- At most 2,000 listings per run. AutoScout24 shows up to 4,000 results per search; split big searches by country, year or price.
- Other AutoScout24 markets (for example Switzerland) and other car sites are not covered.

## Price

Pay per event. Apify bills you, not us.

| What you pay for | Price | When |
|---|---|---|
| Start fee | $0.0025 | Charged once per run. This tool uses 1 GB of memory or less by default; more memory costs more. |
| Saved listing | $0.00024 (from $0.0002 on paid Apify plans) | One car listing saved in the Dataset. Already-seen listings in onlyNew mode are not charged. |

- One result: about $0.0027.
- 1,000 results: about $0.24.
- Every day 100 results, for 30 days: about $0.79 a month.

Free to try: the Apify free plan gives you $5 of usage every month, no credit card needed.

Prices checked on 24 October 2026. Current price: https://apify.com/cliqtomedia/car-listings-scraper?fpr=cliqto

## Questions

### Which countries are covered?

Germany, Austria, Belgium, Spain, France, Italy, Luxembourg and the Netherlands.

### Do I get seller phone numbers?

No. For private sellers you get only city, zip and country.

### Do I get the full car description?

No. The tool reads search results, not the full listing page.

### Do I need an AutoScout24 account?

No. The tool reads public search results only.

### Do I need an AutoScout24 account, cookies or an API key?

No. The Actor reads public search results only.

### Why is `firstRegistration` null for some cars?

New cars often have no registration date yet. `null` means AutoScout24 shows no value.

### How fresh is the data?

Every run reads AutoScout24 live. `fetchedAt` shows when each row was read. Prices and listings can change after that.

### Can I get more than 4,000 listings for one search?

AutoScout24 shows at most 4,000 results per search, and the Actor saves at most 2,000 per run. Split a big search by country, year or price range.

## Data fields

- `id` (string): AutoScout24 listing id (UUID in the listing URL).
- `url` (string): Public listing page on www.autoscout24.com.
- `title` (string): Make, model and version joined, e.g. "BMW 320 d Touring M Sport".
- `make` (string): Make, e.g. "BMW".
- `model` (string): Model, e.g. "320"; null when AutoScout24 lists the car under the make only (some vans and "Others").
- `modelGroup` (string): Model family when AutoScout24 provides it, e.g. "3 Series".
- `version` (string): Version text written by the seller, e.g. "d xDrive Touring M Sport".
- `price` (integer): Asking price; null when the listing shows no price (never 0 for a missing price).
- `currency` (string): Price currency (EUR in all 8 markets); null without a price.
- `priceRating` (string): AutoScout24 price rating label when shown, e.g. "good-price"; null otherwise.
- `mileageKm` (integer): Odometer reading in kilometres.
- `firstRegistration` (string): First registration as "YYYY-MM" (or "YYYY").
- `year` (integer): Year of first registration.
- `fuel` (string): Fuel type, e.g. "Diesel", "Gasoline", "Electric".
- `transmission` (string): Gearbox, e.g. "Automatic", "Manual".
- `powerKw` (integer): Engine power in kW.
- `powerHp` (integer): Engine power in hp.
- `engineCc` (integer): Engine displacement in cm3; null when not stated (often for electric cars).
- `offerType` (string): used, new, demonstration, pre_registered, employee_car or classic; other AutoScout24 codes are passed through as-is (e.g. "A").
- `location` (object): Where the car is offered: countryCode, zip, city; street only for dealers.
- `sellerType` (string): dealer or private.
- `dealerName` (string): Dealer company name; always null for private sellers.
- `dealerId` (string): AutoScout24 dealer id; null for private sellers.
- `dealerRating` (number): Dealer star rating on AutoScout24 when shown.
- `dealerReviewCount` (integer): Number of dealer reviews when shown.
- `images` (array): Photo URLs (720x540) from the search result, in listing order.
- `imageCount` (integer): Number of photo URLs in images.
- `source` (string): Always "autoscout24".
- `fetchedAt` (string): When the row was fetched (ISO 8601, UTC).

## Input settings

- `make` (string): Car brand as shown on AutoScout24, e.g. "BMW", "Volkswagen" (or "VW"), "Mercedes-Benz", "Toyota". Leave empty to search all makes.
- `model` (string): Model or model line, e.g. "3 Series" (covers 316, 318, 320 ...), "C-Class" (also "C-Klasse"), "320", "Golf", "X5". Needs a make. An unknown name fails with suggestions instead of returning an empty list.
- `country` (string): Where the car is offered. "all" covers all 8 AutoScout24 markets.
- `yearFrom` (integer): Earliest year of first registration, e.g. 2019.
- `yearTo` (integer): Latest year of first registration.
- `priceFrom` (integer): Minimum asking price in euros.
- `priceTo` (integer): Maximum asking price in euros.
- `mileageMax` (integer): Only cars with at most this many kilometres.
- `condition` (string): New, used, or both.
- `sort` (string): Order of results. "Newest listings first" is best for monitoring with Only new listings.
- `maxItems` (integer): Stop after this many listings. AutoScout24 shows at most 4,000 results per search; split big searches by country, year or price.
- `onlyNew` (boolean): Return only listings that appeared since the previous run of the same search (with "Newest listings first", reading stops at the first page with no new listings; other orders stop after 5 such pages in a row). Use with a schedule to monitor new cars. The first run returns the newest listings up to Maximum listings and remembers them.
- `stateKey` (string): Name for the Only new listings history (letters, digits, - and _). Leave empty to use one history per set of filters; set it to keep history when you tweak filters.

## Step by step on Apify

1. Open the Input tab.
2. Type a Make (`make`), for example `BMW`, and a Model (`model`), for example `3 Series`.
3. Keep the prefilled Country `de` (Germany) and Maximum listings `20`, or change them.
4. Click Start.
5. Open the Output tab and check `title`, `price` and `mileageKm`.

## Use cases

| Task | Input | You get | Key fields | Next step |
|---|---|---|---|---|
| Price check for one model | `make`, `model`, `country` | Car listing | `price`, `mileageKm`, `year`, `priceRating` | Export to CSV or Excel |
| Alert on new cars | `onlyNew: true` + schedule | New car listings only | `url`, `price`, `firstRegistration` | Webhook or integration on run finish |
| Dealer list for a model | `make`, `model`, `country` | Car listing from a dealer | `dealerName`, `dealerId`, `dealerRating`, `location` | Spreadsheet or CRM import |
| Narrow buying search | `yearFrom`, `priceTo`, `mileageMax`, `condition` | Car listing | `price`, `mileageKm`, `fuel`, `transmission` | API call from your app |

## Tips

- Use the model line, like 3 Series, to cover 316, 318 and 320.
- Split big searches by country, year or price. One run saves up to 2,000.
- A wrong model name fails fast with suggestions. It costs only the start.

## Limits



- Listings already seen in Only new listings mode are skipped and not charged.
- A run with a wrong make or model fails fast and costs only the run start.
- If the run stops at your spending cap or time limit, you pay only for the rows that were saved.

## Sample result

```json
{
  "id": "ffb3f43b-6b16-4b35-84f1-e1ac2706c187",
  "url": "https://www.autoscout24.com/offers/bmw-320-d-touring-advantage-hifi-dab-spur-diesel-black-cat_ma13mo1641-ffb3f43b-6b16-4b35-84f1-e1ac2706c187",
  "title": "BMW 320 d Touring Advantage / HIFI / DAB / Spur",
  "make": "BMW",
  "model": "320",
  "modelGroup": "3 Series",
  "version": "d Touring Advantage / HIFI / DAB / Spur",
  "price": 19299,
  "currency": "EUR",
  "priceRating": "top-price",
  "mileageKm": 112257,
  "firstRegistration": "2021-02",
  "year": 2021,
  "fuel": "Diesel",
  "transmission": "Automatic",
  "powerKw": 140,
  "powerHp": 190,
  "engineCc": 1995,
  "offerType": "used",
  "location": { "countryCode": "DE", "zip": "21614", "city": "Buxtehude", "street": "Example Street 3" },
  "sellerType": "dealer",
  "dealerName": "Example Autohaus",
  "dealerId": "44450405",
  "dealerRating": 5,
  "dealerReviewCount": 9,
  "images": ["https://prod.pictures.autoscout24.net/listing-images/ffb3f43b-…/720x540.webp"],
  "imageCount": 15,
  "source": "autoscout24",
  "fetchedAt": "2026-10-15T00:54:34.255Z"
}
```

## Use it from code

Actor ID: `cliqtomedia/car-listings-scraper`

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("cliqtomedia/car-listings-scraper").call(run_input={
    "make": "BMW",
    "model": "3 Series"
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

```bash
curl -X POST "https://api.apify.com/v2/acts/cliqtomedia~car-listings-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"make": "BMW", "model": "3 Series"}'
```

```python
# pip install langchain-apify
# set APIFY_TOKEN in your environment
from langchain_apify import ApifyActorsTool

tool = ApifyActorsTool("cliqtomedia/car-listings-scraper")
result = tool.invoke({"run_input": {"make": "BMW", "model": "3 Series"}})
print(result)
```

run-sync waits up to 300 seconds; for longer runs start a run and use a webhook. LlamaIndex and MCP: https://cliqtomedia.com/actors/ai-agents/

## Similar tools

- [Depop Scraper - Listings, Prices, Brands & Shops](https://cliqtomedia.com/actors/depop-scraper/)
- [Kleinanzeigen Scraper: Listings, Prices & Photos (No Login)](https://cliqtomedia.com/actors/kleinanzeigen-scraper/)
- [OLX Listings Scraper: Poland, Ukraine, Romania & More](https://cliqtomedia.com/actors/olx-listings-scraper/)
- [Subito.it Scraper - Italy Classifieds & Prices, No Login](https://cliqtomedia.com/actors/subito-listings-scraper/)
- [Craigslist Scraper - Listings, Prices & Photos, No Login](https://cliqtomedia.com/actors/craigslist-scraper/)
- [Vinted Scraper - Listings, Prices & Brands in 25 Countries](https://cliqtomedia.com/actors/vinted-scraper/)
