Otomoto.pl Car Scraper avatar

Otomoto.pl Car Scraper

Pricing

from $0.79 / 1,000 car listings

Go to Apify Store
Otomoto.pl Car Scraper

Otomoto.pl Car Scraper

Scrape Otomoto.pl car listings: prices, specs, mileage & equipment. Filter by make, model, year, fuel type, price range and more. 240k+ listings.

Pricing

from $0.79 / 1,000 car listings

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

7

Total users

3

Monthly active users

2 days ago

Last modified

Categories

Share

Otomoto.pl Car Scraper

Extract car listings from Otomoto.pl, Poland's largest vehicle marketplace, in a clean, consistent structure ready for price monitoring, market research and dealer analytics. Full specifications, structured pricing with drop tracking and price rating, GPS location, equipment lists and seller details. No API key required.


Why this scraper?

🎯 Built for Otomoto.pl

A dedicated Polish scraper tuned for Otomoto.pl — its categories, price format and currency (PLN), not a generic tool pointed at it.

🚗 Complete vehicle data

Make, model, version, generation, year, mileage, fuel, gearbox, drivetrain, engine capacity and power, body type, colour, seats and doors.

💶 Structured pricing

Price and currency, whether the price is net (VAT deductible), whether it recently dropped and by how much, plus Otomoto's own price rating (below / at / above market).

📍 Precise location

City, region and exact latitude/longitude of the listing, ready for mapping and regional analysis.

✅ Trust signals

Otomoto verification and CEPIK (Polish vehicle registry) verification flags, accident-free, first-owner, service-record, registration and import status.

🔒 Privacy by default

Company and dealer data only. We never collect private sellers' personal names, phone numbers or any personal contact details.


Input parameters

ParameterTypeDefaultDescription
startUrlsarray(empty)One or more Otomoto.pl listing or search URLs. Overrides the make/model/filter settings below.
makestring(empty)Car brand slug, e.g. volkswagen, bmw, toyota. Leave empty for all makes.
modelstring(empty)Car model slug, e.g. golf, 3-series. Requires Make to be set.
yearFrominteger(empty)Minimum production year, inclusive.
yearTointeger(empty)Maximum production year, inclusive.
priceFrominteger(empty)Minimum asking price in PLN.
priceTointeger(empty)Maximum asking price in PLN.
mileageFrominteger(empty)Minimum mileage in kilometres.
mileageTointeger(empty)Maximum mileage in kilometres.
fuelTypestringAnyPetrol, Diesel, Hybrid, Electric, LPG, CNG or Hydrogen.
bodyTypestringAnySedan, Estate, Hatchback, SUV, Coupé, Cabriolet, Van, Minivan, Bus or Pickup.
gearboxstringAnyManual or Automatic.
sortBystringDefaultNewest first, Price low→high, Price high→low, Mileage low→high, or Year newest first.
conditionDamagedbooleantrueWhen disabled, only undamaged cars are returned.
maxResultsinteger5Maximum number of car listings to return.
fetchDetailsbooleanfalseFetch each listing's detail page for the full description, equipment, all photos, GPS and 25+ extra fields.
requestDelayMsinteger1500Minimum delay between requests in milliseconds.

Output schema

Fields the source does not publish for a given car are returned as null rather than omitted.

Always present (every run)

FieldTypeDescription
idstringUnique Otomoto listing ID.
titlestringListing title.
urlstringDirect link to the listing.
shortDescriptionstringShort teaser line from the search card.
make / makeDisplaystringBrand slug and display name.
model / modelDisplaystringModel slug and display name.
versionstringVersion / trim (null when not published).
yearnumberProduction year.
mileageKmnumberMileage in kilometres.
fuelTypestringFuel type.
engineCapacityCcnumberEngine capacity in cc.
enginePowerHpnumberEngine power in hp.
gearboxstringManual or automatic.
priceValuenumberAsking price.
priceCurrencystringCurrency code (PLN).
priceIsNetbooleanTrue if the price is net (VAT deductible).
priceDropnumberRecent price-drop percentage (null if no drop).
priceDropLowestPricenumberLowest price reached after the drop, in PLN (null if no drop).
priceEvaluationIndicatorstringOtomoto's price rating: BELOW, IN, ABOVE or NONE.
city / regionstringListing city and region.
sellerNamestringDealer / company name (null for private sellers — personal names are never collected).
sellerTypestringPROFESSIONAL or PRIVATE.
cepikVerifiedbooleanVerified against the Polish CEPIK vehicle registry.
isHighlighted / isPromotedbooleanPaid listing placement flags.
bumpDatestringLast time the listing was bumped (null if never bumped).
createdAtstringWhen the listing was published.
sourcestringAlways otomoto.pl.
contentHashstringStable 16-char fingerprint of id + price + mileage for change detection.
scrapedAtstringISO timestamp of scraping.

With fetchDetails: true

FieldTypeDescription
generationstringModel generation, e.g. "F39 (2017-2023)".
conditionstringNew or used.
transmissionstringDrivetrain, e.g. front-wheel, all-wheel-permanent.
bodyTypestringBody style.
countryOriginstringCountry of origin code.
nrSeats / doorCountnumberSeats and doors.
color / colourTypestringColour and finish (e.g. metallic, pearl).
damagedbooleanDeclared as damaged.
noAccidentbooleanDeclared accident-free.
isRegisteredbooleanRegistered in Poland.
isOriginalOwnerbooleanFirst owner.
hasVin / hasRegistrationDoc / hasServiceRecordbooleanDocumentation flags.
financingAvailable / leasingAvailablebooleanFinance / leasing offered.
isVintagebooleanHistoric / classic vehicle.
isImportedbooleanImported car.
verifiedCarbooleanOtomoto-verified listing.
co2EmissionsnumberCO2 in g/km (null if not published).
urbanConsumption / extraUrbanConsumption / avgConsumptionnumberFuel consumption, l/100km (published only for some cars).
autonomyKmnumberElectric range in km (electric vehicles only).
latitude / longitudenumberGPS coordinates of the listing area.
descriptionHtml / descriptionText / descriptionMarkdownstringFull description in three formats.
imageUrlsarrayAll photo URLs.
equipmentarrayEquipment and options list.
sellerUrlstringDealer profile URL.
sellerNumberOfAdsnumberDealer's active listing count.
updatedAt / originalCreatedAtstringListing update and original-publish timestamps.

Example record

{
"id": "6149219292",
"title": "Mitsubishi ASX 1.6 ClearTec 2WD Diamant Edition",
"url": "https://www.otomoto.pl/osobowe/oferta/mitsubishi-asx-ID6I9x2c.html",
"shortDescription": "1.6 MIVEC DIAMANT LIFT Bezkolizyjny",
"make": "mitsubishi",
"makeDisplay": "Mitsubishi",
"model": "asx",
"modelDisplay": "ASX",
"version": "1.6 ClearTec 2WD Diamant Edition",
"generation": "F39 (2017-2023)",
"year": 2018,
"condition": "used",
"mileageKm": 124000,
"fuelType": "petrol",
"engineCapacityCc": 1590,
"enginePowerHp": 117,
"gearbox": "manual",
"transmission": "front-wheel",
"bodyType": "SUV",
"countryOrigin": "d",
"priceValue": 55555,
"priceCurrency": "PLN",
"priceIsNegotiable": false,
"priceIsNet": false,
"priceDrop": 3.9,
"priceDropLowestPrice": 55555,
"priceEvaluationIndicator": "IN",
"nrSeats": 5,
"doorCount": 5,
"color": "Szary",
"colourType": "Perłowy",
"damaged": false,
"noAccident": true,
"isRegistered": true,
"isOriginalOwner": true,
"hasVin": true,
"hasServiceRecord": true,
"isImported": true,
"verifiedCar": false,
"cepikVerified": false,
"co2Emissions": 136,
"urbanConsumption": 7.0,
"extraUrbanConsumption": 4.4,
"city": "Końskie",
"region": "Świętokrzyskie",
"latitude": 51.19163,
"longitude": 20.40866,
"sellerName": "PREMIUM-CARS",
"sellerType": "PROFESSIONAL",
"sellerNumberOfAds": 20,
"isPromoted": false,
"createdAt": "2026-07-10T06:11:34Z",
"equipment": ["Apple CarPlay", "Android Auto", "Bluetooth", "Klimatyzacja"],
"imageUrls": ["https://ireland.apollo.olxcdn.com/v1/files/..."],
"source": "otomoto.pl",
"contentHash": "ef4698ebe9f37bfa",
"scrapedAt": "2026-07-10T06:13:43.352Z"
}

Examples

All BMWs, newest first:

{
"make": "bmw",
"sortBy": "newest",
"maxResults": 100
}

Cheap diesel estates, full detail:

{
"bodyType": "kombi",
"fuelType": "diesel",
"priceTo": 40000,
"sortBy": "price_asc",
"fetchDetails": true,
"maxResults": 200
}

Scrape a specific search URL:

{
"startUrls": [
{ "url": "https://www.otomoto.pl/osobowe/audi/a4?search%5Bfilter_float_year%3Afrom%5D=2019" }
],
"maxResults": 200
}

Daily price monitoring (run on a schedule):

{
"make": "volkswagen",
"model": "golf",
"sortBy": "newest",
"fetchDetails": true,
"maxResults": 500
}

Schedule this input in the Apify Scheduler to track prices, price drops and new listings over time. Use contentHash to detect changed records between runs.


💰 Pricing

$0.97 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.

ResultsCost
100~$0.10
1,000~$0.97
10,000~$9.70
100,000~$97.00

Flat-rate alternatives typically charge $29–$49/month regardless of usage.

Subscription tiers lower the rate further, down to $0.79 per 1,000 at the highest tier. Use the Max results cap in the input to control your spend exactly.


Performance

Run sizeTypical time
100 resultsunder 1 minute
1,000 results2–4 minutes
10,000 results20–35 minutes

Detail mode (fetchDetails: true) fetches one extra page per car, so runs take longer but return the full field set.


Known limitations

  • Detail-only fields (equipment, GPS, full description, generation, condition, consumption and the boolean flags) require fetchDetails: true. Without it, only the search-card fields are returned.
  • Fuel consumption, CO2 and electric range are published by Otomoto only for some cars — expect null on a share of records.
  • VIN and exact registration date are encrypted at source and are not usable, so we expose only the hasVin and hasRegistrationDoc flags rather than false values.
  • Private sellers' personal names and any phone numbers are never collected, by policy.
  • Prices and stock change constantly; records reflect the moment of scraping, and cars can sell or be withdrawn at any time.

Technical details

  • Source: Otomoto.pl — Polish car marketplace
  • Coverage: the full /osobowe (passenger cars) catalogue, filterable via the input parameters above
  • Retry: automatic retry on network errors with exponential backoff

Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl