
StepStone Jobs Scraper
hipersoft/stepstone-scraper
Scrape jobs from StepStone (stepstone.de) by keyword and location: job title, company, location, remote/home-office flag, posted time, apply link and a description snippet. Fast clean HTTP. For recruiting, job boards and labor-market research.
Total users
2Monthly users
1Total runs
119Per job scraped
$0.0008Last rebuilt
Oct 28, 2026Overview
Scrape job listings from StepStone (stepstone.de) by keyword and location into clean, structured JSON, CSV or Excel. Give it plain search terms or full StepStone jobs URLs and pull job title, company, company page link, location, home-office flag, posted time, badges, a description snippet and a direct apply link. No account and no login needed. Built for recruiters, job-board builders and labour-market analysts in the German-speaking market.

Features
- 🔎 Keyword + location search — pass
searchesas"software engineer|Berlin"lines, or feed full stepstone.de/jobs URLs. - 🔗 Advanced start URLs — supply a
startUrlsrequest list of{"url":"..."}jobs pages for precise control. - 🏢 Company links — captures both the employer name and its StepStone
companyUrlwhere present. - 🏠 Home-office flag — every record carries a boolean
workFromHomeso you can filter remote-friendly roles. - 🏷️ Job badges — collects listing badges (e.g. tags shown on the card) as an array.
- 📄 Page depth control — set
maxPagesPerSearch(~25 jobs each) andmaxItemsto balance cost and coverage.
Input
{
"searches": ["software engineer|Berlin", "pflege|München"],
"maxItems": 0,
"maxPagesPerSearch": 10
}
| Field | Description |
|---|---|
searches |
One per line: "keyword|location" or a full stepstone.de/jobs URL. |
startUrls |
Advanced: a request list of {"url":"..."} StepStone jobs URLs. |
maxItems |
Cap total jobs across all searches (0 = no cap). |
maxPagesPerSearch |
Result pages (~25 jobs each) to crawl per search. |
Use cases
- Build or refresh a German-market job board with fresh listings.
- Source candidates by monitoring roles by title and city.
- Track hiring demand and home-office trends for labour-market research.
- Feed structured job records into an ATS, CRM or analytics pipeline.
What you get

Each job is one dataset record like this:
{
"jobId": "1234567",
"title": "Softwareentwickler (m/w/d)",
"company": "Acme GmbH",
"companyUrl": "https://www.stepstone.de/cmp/de/acme-gmbh-12345",
"location": "Berlin",
"workFromHome": true,
"posted": "vor 2 Tagen",
"badges": ["Home Office möglich"],
"snippet": "Wir suchen einen erfahrenen Softwareentwickler für unser Plattform-Team...",
"url": "https://www.stepstone.de/stellenangebote--softwareentwickler-berlin-acme-gmbh--1234567-inline.html"
}
Output schema
| Field | Type | Description |
|---|---|---|
jobId |
string | StepStone's unique identifier for the job listing. |
title |
string | Job title / role. |
company |
string | Name of the hiring company. |
companyUrl |
string (URL) | Link to the company's StepStone page. |
location |
string | Job location / city. |
workFromHome |
boolean | Whether the role offers home office / remote work. |
posted |
string | Human-readable posting age (e.g. vor 2 Tagen). |
badges |
array | Listing badges or tags shown on the job card. |
snippet |
string | Short description snippet from the listing. |
url |
string (URL) | Direct link to the job listing on StepStone. |
FAQ
Do I need a StepStone account or login? No. Just add your search terms or URLs and run — no account, login or setup required.
How many jobs can I scrape?
As many as your searches return. Use maxPagesPerSearch and maxItems to control the volume and cost.
What export formats are supported? JSON, CSV, Excel and XML, plus the Apify API for programmatic access.
Can I filter for remote roles?
Yes — every record carries a workFromHome boolean you can filter on.
Can I connect it to other tools? The StepStone Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.
Notes
Returns only public StepStone job data — the same information any visitor can see. This is an independent tool and is not affiliated with, endorsed by or connected to StepStone; "StepStone" is a trademark of its respective owner.
Input
| Field | Type | Description |
|---|---|---|
searchesSearches | array | Keyword + optional location as "keyword|location" (e.g. "software engineer|Berlin"), or a full stepstone.de/jobs URL. One per line. |
startUrlsStart URLs (advanced) | array | Alternative to searches: a request list of {"url":"..."} StepStone jobs URLs. |
maxItemsMax jobs (total) | integer | Cap total jobs across all searches (0 = no cap). Default: 0 |
maxPagesPerSearchMax pages per search | integer | Pages (~25 jobs each) to crawl per search. Default: 10 |
proxyConfigurationProxy (optional) | object | Optional. StepStone works without a proxy; enable one only if you hit rate limits at scale. Default: {"useApifyProxy": false} |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~stepstone-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searches": [
"software engineer|Berlin"
]
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/stepstone-scraper").call(run_input={
"searches": [
"software engineer|Berlin"
]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/stepstone-scraper').call({
"searches": [
"software engineer|Berlin"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Job scraped One job with title, company, location, home-office flag, posted time, apply link and snippet | $0.0008 | $0.0004 |
| Listing page fetched One StepStone listing page (~25 jobs) fetched and parsed | $0.001 | $0.001 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Dribbble Shots Scraper
Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.
359 runs · 5 users · $0.003 / shot scrapedComputrabajo Scraper
Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.
206 runs · 4 users · $0.002 / listing scrapedKraken Market Data Scraper
Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.
165 runs · 4 users · $0.001 / pair scrapedBayt Scraper
Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.
134 runs · 4 users · $0.003 / job scrapedGitHub Scraper
Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.
131 runs · 7 users · $0.0008 / item scrapedHacker News Scraper
Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.
130 runs · 2 users · $0.004 / item scrapedSend the site and the fields. We build it and you get it first.