Skip to content

OLX Scraper

Try for free

Scrape OLX classifieds in Poland, Ukraine, Romania, Bulgaria, Portugal, Kazakhstan and Uzbekistan by keyword, location, category or search URL: price, all item parameters, description, photos, location, seller and promotion flags.

🛒 OLX Scraper

Scrape classified listings from OLX in seven countries: Poland (olx.pl), Ukraine (olx.ua), Romania (olx.ro), Bulgaria (olx.bg), Portugal (olx.pt), Kazakhstan (olx.kz) and Uzbekistan (olx.uz). Search by keyword and location, or paste any OLX search, category or offer URL, and get clean rows with price, every item parameter, description, photos, location, seller details and promotion flags. No login, no browser, hundreds of listings in seconds.

✨ Why use OLX Scraper?

  • 🌍 7 countries, one actor — the same clean output for olx.pl, .ua, .ro, .bg, .pt, .kz and .uz.
  • ⚡ Fast — reads OLX's own JSON API: 50 listings per request, no browser.
  • 🔗 Paste any search URL — category pages, keyword searches and all the site's filters are kept exactly as on the site.
  • 📋 Complete listings — every parameter (brand, model, size, mileage, rooms, condition, ...) as a list and as a simple name → value map, plus the full description and full-size photos.
  • 🧮 Past the 1,000 limit — OLX shows at most 1,000 results per search; the actor splits bigger searches into price bands automatically.
  • 💸 Cheap — pay per listing, datacenter traffic only.

🎯 Use cases

  • 💰 Price monitoring — track asking prices for phones, cars, bikes or flats across cities and countries.
  • 🔁 Cross-border arbitrage — compare the same items on olx.pl, olx.ro and olx.ua.
  • 🏪 Competitor and dealer research — see which business sellers promote which items, and how often.
  • 🤝 Lead generation — find business sellers and shops by category and region.
  • 📊 Market research — supply, condition mix and price spread by category and region.

🚀 How to use

  1. Paste OLX search, category or offer URLs into Start URLs, or type keywords into Search queries and pick the Country site.
  2. Optionally set a location, price range, seller type or sorting.
  3. Set Max listings per search (default 20).
  4. Click Start and download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldDescription
startUrlsOLX search, category or offer URLs from any supported site
searchQueriesKeywords, one search each
maxItemsMaximum listings per search (0 = no limit)
domainSite for keyword searches: olx.pl, olx.ua, olx.ro, olx.bg, olx.pt, olx.kz, olx.uz
locationCity or region for keyword searches, e.g. "Kraków", "Київ", "Lisboa"
categoryIdOptional OLX category id for keyword searches
priceMin, priceMaxPrice range in the site's currency
sellerTypeall, private or business
sortByrelevance, newest, priceLowToHigh, priceHighToLow
withPhotosOnlySkip listings without photos
{
  "searchQueries": ["iphone 13"],
  "domain": "olx.pl",
  "location": "Warszawa",
  "priceMax": 2000,
  "sortBy": "newest",
  "maxItems": 100
}

📤 Output

FieldDescription
id, url, titleOffer id, link and title
price, currency, priceLabel, priceType, negotiable, previousPricePrice data (priceType is price, arranged, free or exchange)
condition, params, paramsMapItem condition and every parameter the seller filled in
descriptionFull description as plain text
categoryId, categoryTypeOLX category
city, district, region, latitude, longitudeLocation (the map point is approximate, as on the site)
sellerId, sellerName, sellerType, sellerCompanyName, sellerSince, sellerLastSeen, sellerLogo, shopUrlSeller
hasPhone, hasChat, deliveryAvailableContact options and OLX delivery
isPromoted, isHighlighted, isUrgent, promotionOptionsPromotion flags
mainImage, photos, photoCountPhotos (up to 1280 px)
createdAt, refreshedAt, pushedUpAt, validTo, statusDates and status
domain, searchQuery, searchUrlWhere the row came from

Example (trimmed; the seller is fictional):

{
  "id": 1102592858,
  "url": "https://www.olx.pl/d/oferta/iphone-13-midnight-128gb-stan-idealny-brak-rys-oryginal-bateria-100-CID99-ID1cCmLM.html",
  "title": "iPhone 13 Midnight 128GB, stan idealny, brak rys, oryginał, bateria 100%",
  "price": 850,
  "currency": "PLN",
  "priceLabel": "850 zł",
  "priceType": "price",
  "negotiable": false,
  "previousPrice": null,
  "convertedPrice": null,
  "convertedCurrency": null,
  "condition": "Używane",
  "description": "iPhone 13 Midnight 128GB w stanie idealnym. \n\nWyglada jak właśnie wyjęty z pudełka - bez rys i otarć. \n\nNa ekranie folia ochronna od nowości. \n\nKondyc...",
  "params": [
    {
      "key": "state",
      "name": "Stan",
      "value": "Używane",
      "valueKey": "used"
    },
    {
      "key": "phonemodel",
      "name": "Model telefonu",
      "value": "iPhone 13",
      "valueKey": "iphone-13"
    },
    {
      "key": "builtinmemory_phones",
      "name": "Wbudowana pamięć",
      "value": "128GB",
      "valueKey": "128gb"
    }
  ],
  "paramsMap": {
    "Stan": "Używane",
    "Model telefonu": "iPhone 13",
    "Wbudowana pamięć": "128GB",
    "Kolor": "Czarny",
    "Opcje SIM": "Dual SIM (SIM + eSIM)",
    "Funkcje": "Rozpoznawanie twarzy, Szybkie ładowanie, Hot-Spot, Płatność NFC, Ładowanie indukcyjne"
  },
  "categoryId": 2298,
  "categoryType": "electronics",
  "city": "Warszawa",
  "district": "Praga-Północ",
  "region": "Mazowieckie",
  "latitude": 52.25786,
  "longitude": 21.03784,
  "locationRadiusKm": 7,
  "sellerId": 100000001,
  "sellerName": "Marek",
  "sellerType": "private",
  "sellerCompanyName": null,
  "sellerSince": "2019-11-29T19:46:44+01:00",
  "sellerLastSeen": "2026-10-14T07:43:47+02:00",
  "sellerIsOnline": false,
  "sellerLogo": null,
  "sellerPhoto": null,
  "shopUrl": null,
  "hasPhone": true,
  "hasChat": true,
  "deliveryAvailable": false,
  "isPromoted": true,
  "isHighlighted": false,
  "isUrgent": false,
  "promotionOptions": [
    "promoted_ad_7"
  ],
  "mainImage": "https://ireland.apollo.olxcdn.com:443/v1/files/oyx0zdtddsr11-PL/image;s=1000x750",
  "photoCount": 8,
  "photos": [
    "https://ireland.apollo.olxcdn.com:443/v1/files/oyx0zdtddsr11-PL/image;s=1000x750",
    "https://ireland.apollo.olxcdn.com:443/v1/files/wl60lfoe4her2-PL/image;s=1000x750"
  ],
  "createdAt": "2026-10-04T11:57:11+02:00",
  "refreshedAt": "2026-10-14T09:47:47+02:00",
  "pushedUpAt": "2026-10-14T09:47:47+02:00",
  "validTo": "2026-11-03T10:57:11+01:00",
  "status": "active",
  "offerType": "offer",
  "domain": "olx.pl",
  "searchQuery": "iphone 13",
  "searchUrl": null,
  "scrapedAt": "2026-10-15T23:05:53.507Z"
}

💰 Pricing

You pay $3.50 per 1,000 listings ($0.0035 per listing) plus a small amount of platform usage (compute and datacenter traffic): a 1,400-listing keyword run used $0.003 in our tests, and each pasted search URL adds about half a cent for loading the page once. So 1,000 listings ≈ $3.50–3.51. You only pay for listings saved to the dataset; "not found" rows are free.

❓ FAQ

Is it legal to scrape OLX? The actor reads only public listing data that anyone can see without an account. Make sure your use of the data, especially personal data such as seller names, complies with GDPR and local law.

Do I need an account or a proxy? No login is needed. The default datacenter proxy works well; residential proxies are pinned to the site's country if you choose them.

How many listings can I get? OLX returns at most 1,000 results per search. For bigger searches the actor splits the search into price bands and keeps going, so you can collect many thousands. Listings without a price (free, exchange) only appear in the first 1,000.

Why do I get results for a keyword that matches nothing? When nothing matches exactly, OLX itself shows loosely related listings instead of an empty page, and the API returns the same. Check title or add a category or price filter to narrow it.

Why is the phone number missing? OLX shows phone numbers only to logged-in users, and this actor never logs in. hasPhone tells you whether the seller added one.

Does it support OLX Brazil, India or Indonesia? No. Those sites run on different platforms. This actor covers the seven European and Central Asian OLX sites listed above.

Can I schedule it or use the API? Yes. Schedule runs in the console, or start runs and read datasets through the REST API.

⚠️ Limits

  • Phone numbers are not collected (they need a logged-in account).
  • Seller ratings and full seller profiles are not included.
  • Map coordinates are the approximate point OLX shows, not the exact address.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.