mobile.de Car Scraper - Germany’s Largest Car Marketplace
Pricing
from $1.00 / 1,000 results
mobile.de Car Scraper - Germany’s Largest Car Marketplace
Scrape mobile.de - Germany’s largest car marketplace. Prices, full specifications, seller details, image galleries, and search filters. Incremental mode detects new and changed listings. Compact output for AI agents and MCP workflows.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Black Falcon Data
Actor stats
1
Bookmarked
12
Total users
4
Monthly active users
3 days ago
Last modified
Categories
Share
What does mobile.de Car Scraper do?
mobile.de Car Scraper turns Germany's largest car marketplace (1.4 million+ listings) into clean, structured JSON. Prices, full specifications, equipment, dealer phones and GPS coordinates, EV battery capacity, KBA registration codes, repost detection, and price-direction monitoring across runs — all in one feed.
Why pick this scraper?
- 70+ structured output fields — search-page essentials plus 30+ extra fields when
includeDetailsis on (VIN, full description, equipment list, dealer street + GPS, accident-free flag, previous owners, HU date, EV battery capacity, etc.). - Normalized enums —
fuelType: "ELECTRIC"andtransmission: "AUTOMATIC"instead of raw German"Elektro"/"Automatik". Raw German is preserved as*Rawsiblings if you need it. - Multi-select filters — pick several fuel types, transmissions, body types, and conditions at once. Filter by exterior colour. Search Cars, Motorbikes, Motorhomes, Vans, Trucks, Buses, Trailers, and Construction & Agricultural Machinery.
- Incremental price monitoring —
priceChange: UP/DOWNpluspriceChangeAmounton every recurring run. Detect listings that disappeared (changeType: EXPIRED). - 5-channel notifications — Slack, Telegram, Discord, WhatsApp Cloud API, plus a generic JSON webhook for n8n / Make / Zapier / custom backends. Deliver new + price-changed listings as formatted messages.
- Compact mode — strip to core fields (
listingId,title,make,model,price,mileageKm,firstRegistration,fuelType,transmission,bodyType,powerPs,batteryCapacityKwh,location,priceChange) for LLM context windows. - Strong filter correctness — multi-word makes (Land Rover, Mercedes-Benz, Alfa Romeo) are parsed correctly. Filter values are translated to mobile.de's canonical URL params (
ELECTRICITY,HYBRID_PLUGIN,EstateCar,SmallCar,OffRoad) — no silent no-ops.
What data can you extract from mobile.de?
Each listing record carries (when available):
Identity: listingId, listingKey, canonicalUrl, sourceUrl, searchQuery, searchUrl, category.
Title: title, subTitle, make, model, series, trimLevel.
Pricing: price, priceCurrency, priceType, netPrice, vatDeductible, priceRating (VERY_GOOD / GOOD / FAIR / HIGH / VERY_HIGH), priceRatingRaw.
Specs: mileageKm, firstRegistration (MM/YYYY), firstRegistrationDate (ISO), yearOfManufacture, fuelType (canonical), fuelTypeRaw (German), powerKw, powerPs, transmission (canonical), transmissionRaw, bodyType (canonical), bodyTypeRaw, engineSize, cubicCapacityCc, cylinders, batteryCapacityKwh, emissionClass, driveType.
Condition + history: condition (canonical), conditionRaw, accidentFree, previousOwners, huStatus, vin (detail only, when published), vehicleNumber, availability, origin, weight, trailerLoadBraked, trailerLoadUnbraked.
Appearance: color (canonical), colorRaw, colorManufacturer, interiorMaterial, interiorColor, doors, seats.
Equipment: highlights[], features[] (detail; ABS, navigation, leather, etc.), airbags, climatisation, parkAssists.
Description (detail only): description, descriptionHtml, descriptionMarkdown.
Seller: sellerName, sellerType (DEALER / PRIVATE), sellerRating, sellerReviewCount, sellerYearsOnPlatform, sellerListingsCount, sellerStreet, sellerZipCity, sellerCountry, sellerLatitude, sellerLongitude, sellerPhones[], sellerWhatsapp, sellerWebsite, sellerLanguages[], sellerReviews[] (when reviewLimit > 0).
KBA codes (German vehicle registration): kbaHsn, kbaTsn.
Financing: isFinancingAvailable.
Images: imageUrls[], numImagesAvailable.
Incremental mode adds: changeType (NEW / UPDATED / UNCHANGED / EXPIRED / REAPPEARED), firstSeenAt, lastSeenAt, expiredAt, priceChange (UP / DOWN), priceChangeAmount, isRepost, repostOfId, repostDetectedAt, contentHash.
In standard mode all fields are always present — unavailable values are returned as null, never omitted. In compact mode only the core fields ship.
Input
The fastest way to start is a free-text search keyword and a result cap. Most use cases need only that.
Common parameters:
query— Free-text search keywords (e.g."VW Golf GTI"). Use a JSON array for multi-query.make+model— Brand + model names.modelaccepts a string, comma-separated list, or JSON array.startUrls— Paste mobile.de search URLs directly when you want full filter control beyond the structured fields.category—CAR(default),MOTORBIKE,MOTORHOME,VAN,TRUCK_OVER_7500,BUS, etc.maxResults— 0 = unlimited (mobile.de SERPs cap at ~2,000 per query). Default 25.
Filters (multi-select):
fuelType[],transmission[],bodyType[],condition[],exteriorColor[]sellerType—DEALER/PRIVATEdamageStatus—ANY(default) /EXCLUDE/ONLYpriceMin/Max,mileageMin/Max,yearMin/Max,powerMin/Max(PS, auto-converted to kW)zipCode+radiusKm(orradiusMiles)sort— relevance / price asc/desc / mileage asc/desc / registration asc/desc / newest / oldest
Enrichment:
includeDetails: true— fetch each listing's detail page for VIN, full description, equipment list, dealer GPS coordinates, and 25+ other fields.descriptionMaxLength— truncate descriptions for LLM pipelines.reviewLimit— extract dealer review text bodies (capped, default 0 = off).
Post-fetch filters:
includeKeywords/excludeKeywords— keyword DSL with field scoping (title/subTitle/description).customFilters[]— operator DSL:[{"field":"powerPs","op":"gte","value":300},{"field":"description","op":"notIncludes","value":"Bastler"}].fromDate/toDate/maxAgeMinutes.
Incremental & monitoring:
incrementalMode: true— only emit new + changed (+ optionally unchanged + expired) listings. State persists across runs in the named KV storemobile-de-state.stateKey— unique tag per tracked search. Defaults to a key derived from your inputs.emitUnchanged,emitExpired,skipReposts.
Notifications (5 destinations, all opt-in, fire in parallel):
telegramToken+telegramChatId— Telegram bot from @BotFather.slackWebhookUrl— Slack incoming webhook.discordWebhookUrl— Discord channel webhook (rich embeds with fields, colour-coded by change type).whatsappAccessToken+whatsappPhoneNumberId+whatsappTo— WhatsApp Cloud API (Meta). Recipient must have messaged your business number within 24 h.webhookUrl(+ optionalwebhookHeaders) — generic JSON POST{ metadata, items }. Universal hook for n8n / Make / Zapier / custom backends.notificationLimit(default 5),notifyOnlyChanges(defaulttrue),includeRunMetadata(defaulttrue).
Input examples
Used BMW 3 Series with full details
{"make": "BMW","model": "3er","yearMin": 2020,"maxResults": 10,"includeDetails": true,"condition": ["USED"]}
Affordable electric / plug-in hybrid cars
{"fuelType": ["ELECTRIC", "PLUG_IN_HYBRID"],"priceMax": 30000,"maxResults": 25,"sort": "price_asc"}
Diesel SUV / off-road, automatic, ≥ 200 PS
{"fuelType": ["DIESEL"],"transmission": ["AUTOMATIC_GEAR"],"bodyType": ["SUV", "GELAENDEWAGEN"],"powerMin": 200,"maxResults": 50,"includeDetails": true}
Daily Porsche 911 monitor with Telegram alerts
{"query": "porsche 911","maxResults": 50,"sort": "newest","incrementalMode": true,"stateKey": "porsche-911-tracker","telegramToken": "123456:ABC...","telegramChatId": "-100123456789","notifyOnlyChanges": true}
Pipe NEW + price-changed listings to your own n8n / Make backend
{"make": "BMW","model": ["3er", "5er"],"maxResults": 100,"incrementalMode": true,"stateKey": "bmw-3-5-pipe","webhookUrl": "https://hooks.example.com/mobile-de-pipeline","webhookHeaders": { "Authorization": "Bearer my-secret-token" },"notifyOnlyChanges": true}
Compact mode for AI / MCP pipelines
{"query": "tesla model 3","maxResults": 25,"compact": true,"descriptionMaxLength": 500,"includeDetails": true}
Output
Each run produces a dataset of structured listing records. Download as JSON, CSV, or Excel from the Dataset tab in Apify Console.
Sample listing record
{"listingId": "354dfb2b97e9d63cbd417bd1618ece6544de556e6934a56db1d658cc3ac65511","listingKey": "452460714","canonicalUrl": "https://suchen.mobile.de/fahrzeuge/details.html?id=452460714","title": "Volkswagen Golf VIII Style 1.4 TSI DSG eHybrid","subTitle": "AHK+NAVI+LED","make": "Volkswagen","model": "Golf","series": "CD9","trimLevel": "Style","category": "Car","price": 23480,"priceCurrency": "EUR","priceType": "FIXED","netPrice": 19731.09,"vatDeductible": true,"priceRating": "GOOD_PRICE","priceRatingRaw": "Guter Preis","mileageKm": 21790,"firstRegistration": "09/2022","firstRegistrationDate": "2022-09-01","yearOfManufacture": 2022,"fuelType": "PLUG_IN_HYBRID","fuelTypeRaw": "Hybrid (Benzin/Elektro), Plug-in-Hybrid","powerKw": 110,"powerPs": 150,"transmission": "AUTOMATIC","transmissionRaw": "Automatik","bodyType": "SEDAN","bodyTypeRaw": "Limousine","cubicCapacityCc": 1395,"cylinders": 4,"batteryCapacityKwh": 10,"color": "WHITE","colorRaw": "Weiß","colorManufacturer": "Pure White","doors": "4/5","seats": 5,"previousOwners": 1,"accidentFree": true,"huStatus": "Neu","kbaHsn": "0603","kbaTsn": "CLB","highlights": ["Bi-Xenon Dashcam", "Rückfahrkamera"],"features": ["ABS", "Abstandstempomat", "Apple CarPlay", "Android Auto", "..."],"description": "Top-Zustand, scheckheftgepflegt …","sellerName": "Volkswagen Zentrum Göttingen AH Südhannover GmbH","sellerType": "DEALER","sellerRating": 4.3,"sellerReviewCount": 170,"sellerYearsOnPlatform": 26,"sellerStreet": "Kasseler Landstrasse 53-69","sellerZipCity": "DE-37081 Göttingen","sellerLatitude": 51.5299497,"sellerLongitude": 9.8965677,"sellerPhones": ["+49 (0)551 903291"],"sellerLanguages": ["Deutsch", "English"],"location": "37081 Göttingen","country": "DE","imageUrls": ["https://img.classistatic.de/api/v1/mo-prod/images/..."],"numImagesAvailable": 18,"isSponsored": false,"scrapedAt": "2026-04-25T10:00:00.000Z","contentHash": "ec3f4f...","changeType": "UPDATED","priceChange": "DOWN","priceChangeAmount": 500,"firstSeenAt": "2026-04-22T08:00:00.000Z"}
How to scrape mobile.de
- Go to mobile.de Car Scraper in Apify Console.
- Enter a search keyword (or paste a mobile.de search URL).
- Set
maxResultsto control how many results you need. - Toggle
includeDetailsif you want the full 70+ field record. - Click Start and wait for the run to finish.
- Export the dataset as JSON, CSV, or Excel — or wire it into Make / Zapier / Airbyte / Keboola via Apify integrations.
Use cases
- Pricing intelligence — track average asking price by make / model / year / region. Build a price-rating model from the included
priceRating. - Dealer leads —
sellerName,sellerStreet,sellerPhones,sellerLatitude/Longitude,sellerLanguages,sellerWebsitefor outreach automation. - Monitoring + alerting — run daily in incremental mode with a Telegram or Discord webhook; get pinged the moment a target listing drops in price or disappears.
- EV market analysis —
batteryCapacityKwh,fuelType: ELECTRIC,chargingTime,plugTypes(when published) for fleet sizing and charging-network planning. - Insurance + financing —
kbaHsn+kbaTsncodes plus full registration date for German vehicle-insurance quote integrations. - AI / RAG pipelines —
descriptionMarkdownand compact mode keep tokens predictable for LLM context windows. - Repost + churn detection —
isRepost+repostOfId+expiredAtreveal when a listing is taken down and resurfaced.
How much does mobile.de Car Scraper cost?
mobile.de Car Scraper uses pay-per-event pricing. You pay a small fee when the run starts and then for each result that is actually produced. Detail enrichment, normalization, multi-select filters, notifications, and price-direction monitoring are all included in the base per-result price — no surcharges.
- Run start: $0.005 per run
- Per result: $0.001 per listing record
| Volume | Cost |
|---|---|
| 10 results | $0.01 |
| 100 results | $0.11 |
| 500 results | $0.51 |
| 1,000 results | $1.01 |
Recurring monitoring savings
Examples below compare full re-scrapes with incremental runs at different churn rates. Churn is the share of listings that are new or whose tracked content changed since the previous run. Actual churn depends on your query breadth, source activity, and polling frequency — the scenarios are examples, not predictions.
Setup: 100 results per run, daily polling (30 runs/month).
| Churn rate | Full re-scrape | Incremental run | Savings | Monthly after baseline |
|---|---|---|---|---|
| 5% — stable niche query | $0.11 | $0.01 | 90 % | $0.30 |
| 15% — moderate broad query | $0.11 | $0.02 | 81 % | $0.60 |
| 30% — high-churn aggregator | $0.11 | $0.03 | 67 % | $1.05 |
Full re-scrape monthly cost at daily polling: $3.15. The first incremental run costs the same as a full scrape because it builds the baseline state.
FAQ
How many results can I get from mobile.de?
mobile.de's SERP caps at roughly 2,000 results per query. To go beyond, narrow with structured filters (make, model, year range, body type) or split by region using zipCode + radiusKm.
Does mobile.de Car Scraper support recurring monitoring?
Yes. Enable incrementalMode to receive only new, updated, and price-changed listings on subsequent runs. Pair with notifyOnlyChanges + telegramToken for real-time alerts. The actor tracks last-known prices internally so you also get priceChange: UP/DOWN and priceChangeAmount.
Why are some filters multi-select?
Multi-select lets one run cover several scenarios — e.g. all-electric and plug-in hybrids, or SUVs and off-road vehicles, in a single search. You can pass either a single string or an array; both work.
Why do fuelType (canonical) and fuelTypeRaw (German) both appear?
Canonical English values let you filter and join across pipelines without locale-aware code. The raw German value is preserved for cases where you need the exact mobile.de label (e.g. for re-display on a German-facing UI).
Does it work for motorbikes / motorhomes / trucks?
Yes — set category to MOTORBIKE, MOTORHOME, VAN, TRUCK_OVER_7500, TRUCK_UP_TO_7500, BUS, TRAILER, SEMI_TRAILER, CONSTRUCTION_MACHINE, AGRICULTURAL_VEHICLE, or FORKLIFT_TRUCK.
Can I integrate with other apps?
Yes. mobile.de Car Scraper works with Apify integrations — Zapier, Make, Google Sheets, Airbyte, Keboola, Slack — and the built-in Slack / Telegram / Discord notifications.
Can I use mobile.de Car Scraper through an MCP Server?
Yes. Apify provides an MCP Server that lets AI assistants and agents call this actor directly. Use compact: true and descriptionMaxLength to keep payloads manageable for LLM context windows.
What about VIN?
When the seller publishes the VIN on the detail page (Fahrzeug-Identifizierungsnummer), the actor extracts it. Most listings on mobile.de don't expose VIN publicly — for those you'll get vin: null.
Is it legal to scrape mobile.de?
This actor extracts publicly available data. Web scraping of public information is generally considered legal, but you should always review the target site's terms of service and ensure your use case complies with applicable laws and regulations, including GDPR where relevant.
Your feedback
If you have questions, need a feature, or found a bug, please open an issue on the actor's page in Apify Console. Your feedback drives the roadmap.
You might also like
- AutoScout24 Scraper — Europe's largest used-car marketplace (770K+ listings, 8 countries).
- Bilbasen Scraper — Denmark's largest car marketplace.
- Adzuna Job Scraper — Job listings across 20+ countries.
- Arbeitsagentur Scraper — Germany's official employment portal (1M+ listings).
Getting started with Apify
New to Apify? Create a free account with $5 credit — no credit card required.
- Sign up — $5 platform credit included
- Open this actor and configure your input
- Click Start — export results as JSON, CSV, or Excel
Need more later? See Apify pricing.