StepStone Jobs Scraper - DE, AT, UK, NL & BE
Pricing
$3.00 / 1,000 job returneds
StepStone Jobs Scraper - DE, AT, UK, NL & BE
Cover the whole DACH and Benelux job market in one run. Search StepStone by keyword and location across Germany, Austria, the UK, Netherlands and Belgium, and get job title, company, location, salary when shown, posted date, remote flag, snippet and apply URL. Built for recruiters and job boards.
Pricing
$3.00 / 1,000 job returneds
Rating
5.0
(2)
Developer
Dami's Studio
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
2
Monthly active users
2 hours ago
Last modified
Categories
Share
StepStone Jobs Scraper
Scrape job listings from StepStone — Germany, Austria, UK, Netherlands and Belgium — by keyword and location. Clean, structured output, paginated.
StepStone sits behind anti-bot protection that blocks the obvious API and plain HTTP clients, which is why naive scrapers return empty or get captcha pages. This actor reads the rendered listings the way a browser sees them and rotates a fresh exit address per page, with explicit handling for blocked pages instead of silently returning nothing.
Pricing
$3.00 per 1,000 jobs ($0.003 each), with no run-start fee. Flat rate — no volume tiers, no plan gates — and you are charged only for jobs actually returned.
Input
| Field | Notes |
|---|---|
keywords | Job title / keywords, e.g. software engineer, marketing manager, krankenpflege. |
location | Optional city/region, e.g. Berlin, München, Wien. Leave empty for a nationwide search. |
site | StepStone country site: DE / AT / UK / NL / BE. Default de. |
maxItems | Jobs to collect, 1–2000 (default 25); the scraper paginates to reach it. |
proxyConfiguration | Leave empty. The actor routes itself through rotating Apify datacenter addresses. Fill it in only if you want the traffic to leave through proxy servers you already pay for. |
notionConnector | Optional MCP connector ID; writes each job as a page into your Notion when the run finishes. |
notionParentId | Optional Notion data-source ID to write into. Leave empty to create the pages privately in your workspace. |
Country sites covered
site | Domain | Locale |
|---|---|---|
de | www.stepstone.de | de-DE |
at | www.stepstone.at | de-AT |
uk | www.stepstone.co.uk | en-GB |
nl | www.stepstone.nl | nl-NL |
be | www.stepstone.be | nl-BE |
The search URL is built from your keywords and location the same way the site's own search does it, including the German umlaut transliteration (München → muenchen) and the Dutch vacatures path on stepstone.nl.
Output
One row per job, each with ok: true:
| Field | Notes |
|---|---|
jobId | StepStone listing id. May be null if the URL has no id. |
title | Job title. |
company | Hiring company. May be null when StepStone hides it. |
location | Job location. May be null. |
salary | Only present when the listing publishes it — frequently null. |
postedText | Human-readable posted date (e.g. "vor 3 Tagen"). May be null. |
workFromHome | true/false remote flag. |
snippet | Short description excerpt. May be null. |
url | Job URL. |
site | The StepStone country site searched. |
Any of the text fields above can be null when StepStone omits them from the listing card.
Pagination
Results come back roughly 25 per page and the actor keeps requesting the next page until maxItems is reached or StepStone runs out of matches. Each block retry gets a fresh exit address and User-Agent, and rendered pages are waited on properly so a DataDome JavaScript challenge that resolves into the real page still yields jobs rather than an empty read.
Charging and failures
You are charged per successfully collected job (ok: true). The actor never charges for:
- No matches — returns a single
ok: falseNO_RESULTSdiagnostic row, uncharged. - A fully blocked search — if StepStone (DataDome) blocks every IP/browser rotation, returns an
ok: falseBLOCKEDdiagnostic row, uncharged. - A partially blocked search — if a block hits mid-collection (e.g. on page 2), any rows already gathered are returned with
ok: falseandpartial: trueplus aBLOCKEDdiagnostic row, and none of them are charged. Retry — a different exit address usually completes the search.
Example
{"keywords": "software engineer","location": "Berlin","site": "de","maxItems": 100}
Notes
Leave the proxy field empty — the actor rotates Apify datacenter addresses, and a fresh address and User-Agent are taken on each block retry. Salary is only present when the listing publishes it.