OLX.pl Jobs Scraper
Pricing
from $1.49 / 1,000 results
OLX.pl Jobs Scraper
Extract job listings from OLX.pl — Poland's largest job classifieds platform. Salary, contract type, workplace mode, full descriptions. No account required.
Pricing
from $1.49 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
1
Bookmarked
13
Total users
6
Monthly active users
3 days ago
Last modified
Categories
Share

Extract job listings from OLX.pl — Poland's largest classifieds platform — including salary, contract type, workplace mode, GPS coordinates, and full job descriptions. No account required.
Why this scraper?
🗺️ Nationwide, regional, city, and radius search
Target all 16 voivodeships, a specific city like Warszawa, Kraków, or Gdańsk, or set a kilometre radius around any city to capture nearby listings.
💰 Structured salary data
Extracts minimum, maximum, currency (PLN), pay period (monthly/hourly), and gross/net flag whenever the employer chooses to display it.
📋 Full job descriptions
Delivers the complete description in HTML, plain text, and Markdown — ready for your pipeline without post-processing.
📍 GPS coordinates
Every listing includes latitude and longitude from OLX's own location data, enabling map visualisations and geo-analytics.
🔄 Cross-run deduplication
A 90-day fingerprint cache detects reposts and marks them with isRepost: true, so scheduled runs never double-count the same listing.
⏱️ Date-range filtering
Use daysOld to build daily or weekly job feeds without processing the entire backlog.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
query | string | "" | Keyword(s) to search for, e.g. programista, kierowca, sprzedawca |
region | select | all | Polish voivodeship to filter by, or all for nationwide |
citySlug | string | "" | City name, e.g. Warszawa, Kraków, Gdańsk. Overrides region. Polish characters auto-normalised. |
radiusKm | integer | — | Search radius in km around the city (applies when citySlug is set). OLX values: 5, 10, 15, 25, 50, 75. |
maxResults | integer | 5 | Maximum results to return (1–1,000) |
daysOld | integer | — | Only return jobs posted or refreshed within this many days |
skipReposts | boolean | false | Skip listings already seen in previous runs |
startUrls | array | [] | Specific OLX.pl job search or city URLs to scrape |
Input priority: startUrls → citySlug → query + region. Only the first matching mode runs.
Available regions
dolnoslaskie · kujawsko-pomorskie · lubelskie · lubuskie · lodzkie · malopolskie · mazowieckie · opolskie · podkarpackie · podlaskie · pomorskie · slaskie · swietokrzyskie · warminsko-mazurskie · wielkopolskie · zachodniopomorskie
Output
Each result is saved to the default dataset, sorted newest-first.
| Field | Type | Description |
|---|---|---|
id | string | Unique OLX offer identifier |
url | string | Direct link to the job listing |
title | string | Job title as posted |
descriptionHtml | string|null | Full description in raw HTML |
descriptionText | string|null | Full description as plain text |
descriptionMarkdown | string|null | Full description in Markdown |
publishDate | string | Date posted — YYYY-MM-DD, Warsaw timezone |
publishDateISO | string | ISO 8601 timestamp of original posting |
lastRefreshDate | string | Date of last refresh — YYYY-MM-DD |
lastRefreshDateISO | string | ISO 8601 timestamp of last refresh |
expiresAt | string|null | ISO 8601 expiry timestamp of the listing |
salaryMin | number|null | Minimum salary (null if not disclosed by employer) |
salaryMax | number|null | Maximum salary (null if not disclosed) |
salaryCurrency | string|null | Currency code, typically PLN |
salaryPeriod | string|null | Pay period: MONTH, HOUR, DAY, WEEK, YEAR |
salaryGross | boolean|null | true = gross; false = net; null = not specified |
contractType | string|null | Contract type label, e.g. Umowa o pracę (may be comma-separated for multiple) |
workType | string|null | Pełny etat (full-time) or Część etatu (part-time) |
workplaceType | string|null | Workplace mode label, e.g. Praca zdalna, Praca hybrydowa |
availability | string|null | Availability label, e.g. Elastyczny czas pracy |
city | string|null | City name |
region | string|null | Polish voivodeship name |
latitude | number|null | GPS latitude of the job location |
longitude | number|null | GPS longitude of the job location |
isFeatured | boolean | true if the listing is a promoted or top ad |
categoryId | number|null | OLX category ID (4 = all jobs; subcategories e.g. 2515 = IT) |
companyName | string|null | Employer company name (business accounts only; private postings return null) |
isBusiness | boolean | true if posted by a verified business account |
summary | string|null | First 300 characters of the plain-text description |
source | string | Always olx.pl |
scrapedAt | string | ISO 8601 timestamp of when this item was scraped |
contentHash | string | 16-character MD5 fingerprint for change detection |
isRepost | boolean | true if this listing was seen in a previous run |
originalPublishDate | string|null | ISO timestamp from the first time this listing was seen |
originalUrl | string|null | URL from the first time this listing was seen |
Example output
{"id": "1068495670","url": "https://www.olx.pl/oferta/praca/wewnetrzny-automation-specialist-CID4-ID1ajix8.html","title": "Automation Specialist / Wdrożeniowiec No-code","descriptionHtml": "<p><strong>O firmie</strong></p><p>Sieć klinik stomatologicznych...</p>","descriptionText": "O firmie Sieć klinik stomatologicznych...","descriptionMarkdown": "## O firmie\n\nSieć klinik stomatologicznych...","publishDate": "2026-04-21","publishDateISO": "2026-04-21T16:00:41+02:00","lastRefreshDate": "2026-04-24","lastRefreshDateISO": "2026-04-24T16:02:24+02:00","expiresAt": "2026-05-21T16:00:41+02:00","salaryMin": 7000,"salaryMax": 9000,"salaryCurrency": "PLN","salaryPeriod": "MONTH","salaryGross": true,"contractType": "Umowa o pracę, Samozatrudnienie","workType": "Pełny etat","workplaceType": "Praca hybrydowa, W siedzibie firmy","availability": "Elastyczny czas pracy","city": "Kalisz","region": "Wielkopolskie","latitude": 51.75766,"longitude": 18.08934,"isFeatured": false,"categoryId": 4,"companyName": null,"isBusiness": true,"summary": "O firmie Sieć klinik stomatologicznych. Realizujemy autorską strategię cyfryzacji...","source": "olx.pl","scrapedAt": "2026-04-24T17:30:00.000Z","contentHash": "a1b2c3d4e5f60001","isRepost": false,"originalPublishDate": null,"originalUrl": null}
Examples
1 — IT jobs in Warszawa:
{"query": "programista","citySlug": "Warszawa","maxResults": 200}
2 — Driver jobs within 50 km of Katowice:
{"query": "kierowca","citySlug": "Katowice","radiusKm": 50,"maxResults": 200}
3 — All jobs in Śląskie (region-wide):
{"region": "slaskie","maxResults": 500}
4 — Daily new jobs nationwide, deduplicated:
{"query": "","region": "all","maxResults": 1000,"daysOld": 1,"skipReposts": true}
5 — Scrape a specific city or category URL:
{"startUrls": [{ "url": "https://www.olx.pl/praca/gdansk/" }],"maxResults": 200}
6 — IT jobs in Mazowieckie, weekly deduplicated feed:
{"query": "programista","region": "mazowieckie","maxResults": 500,"daysOld": 7,"skipReposts": true}
💰 Pricing
$1.49 per 1,000 results — you only pay for successfully retrieved listings. Failed retries and filtered reposts are never charged.
| Results | Cost |
|---|---|
| 100 | ~$0.15 |
| 1,000 | ~$1.49 |
| 10,000 | ~$14.90 |
| 100,000 | ~$149.00 |
Flat-rate alternatives typically charge $29–$49/month regardless of usage.
Use the Max results cap in the input to control your spend exactly.
Performance
| Run size | Approximate time |
|---|---|
| 50 results (API mode) | ~10–20 seconds |
| 500 results | ~2–4 minutes |
| 1,000 results | ~4–8 minutes |
Known limitations
- The OLX.pl API exposes a maximum of 1,000 results per keyword + region combination. For broader coverage, combine multiple queries across different keywords or regions.
- Salary data is only present when the employer chooses to display it (approximately 30–40% of listings).
companyNameis only populated for verified business accounts; private postings returnnull.- Results are sorted newest-first by default.
- GPS coordinates are the city-level coordinates provided by OLX, not the precise address.
Technical details
- Source: olx.pl — Poland's largest job classifieds platform, public API
- Memory: 512 MB
- Repost storage: KeyValueStore
olx-pl-scraper-job-dedup, 90-day TTL - Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request
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