mobile.de Car Listings Scraper
Pricing
from $0.50 / 1,000 listings
mobile.de Car Listings Scraper
[💰 $0.5 / 1K] Extract car listings from mobile.de — Germany's largest vehicle marketplace. Get prices, full specs, photos, and direct dealer phone numbers from 1.5M+ live listings. Export to JSON, CSV or Excel.
Pricing
from $0.50 / 1,000 listings
Rating
0.0
(0)
Developer
SolidCode
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 hours ago
Last modified
Categories
Share
mobile.de Scraper
Pull car listings from mobile.de at scale — prices, full specifications, photos, and direct dealer phone numbers in one clean dataset. Built for car dealers, market analysts, and lead-generation teams who need current German vehicle-market data without building and maintaining their own scraper.
mobile.de carries over 1.5 million live listings. Set your filters on the site, paste the URL, and get structured rows back.
Why This Scraper?
- Dealer phone numbers on 100% of listings — measured across a 300-listing sample: every row carries the seller's direct numbers, plus WhatsApp contact links where the dealer offers them. No second lookup, no extra charge.
- 61 fields per listing, 69 with full details — 50 of them populated on 95%+ of rows, from engine displacement and emission class to inspection status and previous-owner count.
- mobile.de's own price rating on every row — the marketplace's
Top-Preis/Guter Preisassessment, already computed against the model's market band. One filter downstream and you have a deal-finder. - Gross and net price with the VAT rate — the
vatDeductiblesplit that cross-border importers and B2B buyers need, which listing pages bury. - Dealer coordinates on 100% of rows — latitude and longitude, ready for radius search and territory mapping without a geocoding pass.
- Dealer reputation built in — rating score and review count per seller, so you can rank inventory by seller quality.
- Up to 2,000 listings per search URL — with automatic de-duplication across every search in a run, so a car matching two of your searches is never billed twice.
- Listing timestamps for inventory monitoring —
createdAtandmodifiedAton every row make it trivial to diff runs and surface only new or re-priced stock. - German or English output — units, vocabulary, and number formatting switch together, so
Benzin/Petroland1.984 cm³/1,984 ccmstay internally consistent.
Use Cases
Dealer & Inventory Intelligence
- Track competitor stock levels, pricing moves, and days-on-market by make and model
- Benchmark your own listings against the local market before repricing
- Spot inventory gaps in your region by body type, fuel, or price band
Market Research & Pricing Analytics
- Build residual-value and depreciation curves from mileage, registration year, and price
- Measure how emission class and inspection status move asking prices
- Compare private-seller versus dealer pricing across the same model
Lead Generation
- Build dealer contact lists with direct phone numbers, addresses, and coordinates
- Segment dealers by inventory size, average price band, or reputation score
- Target dealers stocking a specific make for parts, finance, or warranty offers
Arbitrage & Sourcing
- Filter on the site's own price rating to surface under-market listings
- Find VAT-deductible stock for cross-border resale
- Source specific trims by equipment list when full details are enabled
Data Enrichment & Integration
- Feed live market comparables into valuation tools and CRM systems
- Enrich internal stock records with market pricing and photos
- Schedule runs and diff on
modifiedAtto monitor price changes
Getting Started
Simplest run — paste a search URL
{"searchUrls": ["https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&dam=false"],"maxResults": 100}
Specific make and model, English output
{"searchUrls": ["https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&mk=25200&md=8&dam=false"],"maxResults": 500,"language": "en"}
Full details for equipment-level analysis
{"searchUrls": ["https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&p=%3A25000&fr=2019%3A&dam=false"],"maxResults": 1000,"enrichDetails": true,"imageSize": "large"}
Several price bands in one run
{"searchUrls": ["https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&p=%3A10000","https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&p=10000%3A25000","https://suchen.mobile.de/fahrzeuge/search.html?isSearchRequest=true&s=Car&vc=Car&p=25000%3A"],"maxResults": 2000}
Input Reference
What to Scrape
| Parameter | Type | Default | Description |
|---|---|---|---|
searchUrls | array | — | mobile.de search URLs copied from your browser. Every filter in the URL is carried through. |
maxResults | integer | 100 | Maximum listings per search URL. 0 collects everything the search returns, up to 2,000. |
Options
| Parameter | Type | Default | Description |
|---|---|---|---|
enrichDetails | boolean | false | Adds the advert text, equipment list, and labelled specification table to each row. |
language | string | de | de for German values as shown on the site, en for English. |
imageSize | string | large | small (240px), medium (360px), or large (1024px) image URLs. |
concurrency | integer | 10 | Parallel requests when fetching full details. Lower it if requests start failing. |
proxyConfiguration | object | Apify Proxy | Proxy settings for the run. |
Output
Every listing is one dataset row. Enabling enrichDetails adds eight further fields to the same row — there is no second record type to join.
{"id": 410455298,"url": "https://suchen.mobile.de/auto-inserat/volkswagen-golf-6-r-2-0tsi/410455298.html","title": "Volkswagen Golf 6 R 2.0TSI 265PS DSG Cabriolet","make": "Volkswagen","model": "Golf","category": "Cabrio","price": 21999.0,"priceNet": 18486.55,"priceCurrency": "EUR","vatRate": 19.0,"priceRating": "GOOD_PRICE","priceRatingLabel": "Guter Preis","mileage": 115264,"firstRegistration": "07/2014","year": 2014,"powerKw": 195,"powerHp": 265,"cubicCapacity": 1984,"fuelType": "Benzin","transmission": "Automatik","exteriorColor": "Blau","emissionClass": "Euro5","generalInspection": "Neu","previousOwners": 2,"doorCount": "2/3","seatCount": 4,"weightKg": 1614,"images": ["https://img.classistatic.de/api/v1/mo-prod/images/4d/4dfc2e80-...?rule=mo-1024w"],"numImages": 13,"sellerType": "Händler","sellerName": "Autohaus Klann GmbH","sellerPhones": ["+49 (0)3328 3599968", "+49 (0)1577 3527695"],"sellerCity": "Teltow","sellerZip": "14513","sellerCountry": "DE","sellerLatitude": 52.4029259,"sellerLongitude": 13.2727313,"sellerRating": 4.5,"sellerRatingCount": 38,"createdAt": "2026-06-12T09:25:20Z","modifiedAt": "2026-07-24T14:18:05Z"}
Core Fields
| Field | Type | Description |
|---|---|---|
id | integer | mobile.de listing ID |
url | string | Public listing page |
title | string | Full advert headline |
shortTitle | string | Make and model only |
subTitle | string | Trim or seller's descriptive line |
make / model | string | Manufacturer and model name |
makeId / modelId | integer | mobile.de's numeric make/model IDs |
category | string | Body style (Cabrio, SUV, Kombi, …) |
vehicleClass / segment | string | Vehicle class (Car, Motorbike, …) |
Price
| Field | Type | Description |
|---|---|---|
price | number | Gross asking price |
priceNet | number | Net price where VAT is shown separately |
priceCurrency | string | ISO currency code |
priceLocalized | string | Price as displayed on the site |
vatRate | number | VAT percentage |
vatDeductible | boolean | Whether VAT is stated separately |
priceType | string | FIXED, NEGOTIABLE, … |
priceRating | string | mobile.de's price assessment |
priceRatingLabel | string | That assessment in readable form |
Specifications
| Field | Type | Description |
|---|---|---|
mileage | integer | Kilometres |
firstRegistration | string | MM/YYYY |
year | integer | Registration year |
powerKw / powerHp | integer | Engine power in kW and PS |
cubicCapacity | integer | Displacement in cm³ |
fuelType | string | Fuel or drivetrain |
transmission | string | Gearbox type |
exteriorColor | string | Body colour |
emissionClass | string | Euro emission standard |
generalInspection | string | Next inspection due |
previousOwners | integer | Number of prior owners |
countryVersion | string | Market the car was built for |
weightKg | integer | Kerb weight |
doorCount / seatCount | string / integer | Doors and seats |
isNew, hasDamage, readyToDrive | boolean | Condition flags |
Seller
| Field | Type | Description |
|---|---|---|
sellerName | string | Dealer or private seller name |
sellerType | string | Dealer or private |
sellerId | integer | mobile.de seller ID |
sellerPhones | array | Direct phone numbers |
sellerMessengers | array | WhatsApp and messenger links |
sellerAddress | string | Street address |
sellerCity / sellerZip / sellerCountry | string | Location |
sellerLatitude / sellerLongitude | number | Coordinates |
sellerRating | number | Average rating |
sellerRatingCount | integer | Number of reviews |
Media & Timestamps
| Field | Type | Description |
|---|---|---|
images | array | Photo URLs at the chosen size |
numImages | integer | Photo count |
highlights | array | Seller's highlighted selling points |
createdAt | string | ISO-8601 listing creation time |
modifiedAt | string | ISO-8601 last-modified time |
With enrichDetails enabled
| Field | Type | Description |
|---|---|---|
description | string | Advert text as plain text |
htmlDescription | string | Advert text with original formatting |
features | array | Full equipment list |
attributes | object | Labelled specification table |
sellerHomepage | string | Dealer's mobile.de profile |
sellerLanguages | string | Languages the dealer speaks |
sellerSince | string | How long the dealer has been on mobile.de |
carfaxEligible | boolean | Whether a vehicle history report is available |
Tips for Best Results
- Filter on the site first, then copy the URL — every filter mobile.de offers (price band, registration range, mileage cap, fuel, gearbox, damage exclusion, radius) is encoded in the URL and carried through, so a six-filter search needs no extra configuration here.
- Plan around the 2,000-per-search ceiling — mobile.de will not page past 2,000 results for a single search, no matter how many match. For a broad segment, split it into narrower searches by price band, registration year, or make and paste them all into
searchUrls. The run de-duplicates across them automatically. - Leave
enrichDetailsoff unless you need the advert text — phone numbers, images, price, and the full specification set are on every row either way. Details add the free-text advert, equipment list, and labelled spec table, at roughly ten times the requests. - Filter on
priceRatingfor sourcing — rows ratedGOOD_PRICEor better are mobile.de's own judgement that the car is below its market band, which is the cleanest arbitrage signal in the dataset. - Split on
sellerTypefor outreach — dealer rows carrysellerName,sellerPhones, andsellerRating; private-seller rows are thinner. Segmenting on this field is the sharpest cut for lead lists. - Use
modifiedAtto monitor rather than re-collect — schedule a run and diff on this field to surface only new or re-priced listings instead of reprocessing the whole segment. - Pick
language: "en"for downstream tooling — it switches vocabulary and number formatting together, which avoids mixed-locale values in analytics pipelines.
Pricing
$0.50 per 1,000 listings (standard) or $1.00 per 1,000 listings (with full details).
| Listings | Standard | With Full Details |
|---|---|---|
| 100 | $0.05 | $0.10 |
| 1,000 | $0.50 | $1.00 |
| 10,000 | $5.00 | $10.00 |
| 100,000 | $50.00 | $100.00 |
A "result" is any listing row in the output dataset. When you run several searches at once, a listing that matches more than one of them is de-duplicated before it reaches the dataset, so you are never charged twice for the same car. The full-details rate applies only to rows that actually came back with the advert text and equipment list attached — if a listing's detail record is unavailable, the row is still delivered and charged at the standard rate. Platform fees (compute, storage) are additional and depend on your Apify plan.
Integrations
Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:
- Zapier / Make / n8n — Workflow automation
- Google Sheets — Direct spreadsheet export
- Slack / Email — Notifications when new listings match
- Webhooks — Trigger custom APIs on run completion
- Apify API — Full programmatic access
Legal & Ethical Use
This is an unofficial scraper. It is not affiliated with, endorsed by, or connected to mobile.de or its operators in any way. All trademarks belong to their respective owners.
This actor is intended for legitimate market research, dealer intelligence, and automotive analytics. You are responsible for complying with applicable laws and with mobile.de's Terms of Service.
Listings include dealer contact details. Treat them as personal data: do not use phone numbers or addresses for spam, harassment, or any unlawful purpose, and follow GDPR and local privacy rules when storing or processing them.