XING Jobs Scraper - Germany, Austria & Switzerland Jobs
Pricing
$0.70 / 1,000 job listings
XING Jobs Scraper - Germany, Austria & Switzerland Jobs
Scrape XING job ads across Germany, Austria and Switzerland: salary band, career level, discipline, remote policy, postcode, street, company size and full description. No login. $0.70 per 1,000 jobs.
Pricing
$0.70 / 1,000 job listings
Rating
0.0
(0)
Developer
Crikit
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
What is XING Jobs Scraper?
XING Jobs Scraper lets you extract every public job ad on XING across Germany, Austria and Switzerland, helping you build DACH recruitment pipelines, benchmark salaries by city and seniority, and generate lists of companies that are actively hiring.
XING is the professional network that German-speaking Europe actually uses, and its job board carries pay data that almost no other job site publishes. This scraper returns it.
- ๐ถ Benchmark salaries that nobody else publishes: every ad comes back with a minimum, maximum and median in euros or francs, and a flag telling you whether the employer advertised the number or XING estimated it. 90% of ads carry a salary band.
- ๐ฏ Build a DACH candidate and client pipeline: filter by city and radius, employment type, career level and remote policy, then export straight to CSV, Excel or your ATS.
- ๐ข Find companies that are hiring right now: each row carries the employer's XING company page, headcount band, industry and head office city, so a job feed doubles as a B2B prospect list.
- ๐ See the real remote market: XING tags every ad full remote, hybrid or on-site, so you can size the German remote market instead of guessing from job titles.
- ๐ Get street-level location: city, federal state, postcode and street where the employer published it, not just "Berlin, Germany".
- โก No login, no cookies, no session to paste. XING has no public jobs API and its own site shows you 20 ads at a time. This actor reads up to about 1,000 per search in a single run, at roughly 240 rows per 30 seconds.
What data does XING Jobs Scraper extract?
Every row is one job ad.
- ๐ท Job title, XING job URL and slug (
title,jobUrl,slug) - ๐ Numeric job ID and XING's internal hashed ID (
jobId,jobHashId) - ๐ข Company name, XING company page, headcount band, industry and head office city (
companyName,companyXingUrl,companySize,companyIndustry,companyCity) - ๐ผ Company logo URL (
companyLogoUrl) - ๐ City, federal state or canton, postcode, street, country and ISO country code (
city,region,zipCode,street,country,countryCode) - ๐บ Additional cities when one ad covers several offices (
additionalCities) - ๐ถ Salary minimum, maximum, median and currency (
salaryMin,salaryMax,salaryMedian,salaryCurrency) - โ
Whether the pay came from the employer or from XING's own model (
salaryIsEstimated,hasSalary) - ๐งโ๐ผ Employment type, career level and professional discipline (
employmentType,careerLevel,discipline) - ๐ญ Job industry (
industry) - ๐ก Remote policy, full remote, hybrid or on-site (
remotePolicy,remoteOptions) - ๐ Full job description as HTML and as clean plain text (
descriptionHtml,descriptionText) - ๐ง XING's own summary of the ad plus its bulleted responsibilities and qualifications (
summary,responsibilities,qualifications) - ๐ง Skill and keyword tags XING assigned to the ad (
skills) - ๐
Posted date, last refreshed date and expiry date (
postedAt,refreshedAt,expiresAt) - ๐ฉ Whether the ad is promoted, a XING top job, or applies on an external site (
isPromoted,isTopJob,appliesOffsite) - ๐ฃ Language the ad is written in (
adLanguage) - ๐ The search keyword, city and source URL that produced the row (
searchKeywords,searchLocation,sourceUrl,resultPosition)
How to use XING Jobs Scraper
- Click Try for free and open the actor.
- Type your keywords, one per line. German and English both work, so
Softwareentwicklerandsoftware engineerboth return results. - Add the DACH cities you care about and a radius in kilometres.
- Set Max results. You are charged per job row, so this is your budget control.
- Click Start, then download the results as CSV, JSON, Excel or XML, or pull them from the Apify API.
Already built the search you want on xing.com? Copy the address bar into XING search URLs instead and the keyword, city, radius, employment type, career level, remote policy and sort order all carry over.
Input
{"keywords": ["software engineer", "Softwareentwickler"],"locations": ["Berlin", "Munich"],"radius": 20,"maxItems": 500,"sortBy": "date","employmentTypes": ["full-time"],"careerLevels": ["professional/experienced"],"remoteOptions": ["remote", "hybrid"],"proxyConfiguration": { "useApifyProxy": true }}
Every keyword is combined with every city, so two keywords and two cities is four searches. Leave both empty to browse all of XING.
Output
One record, trimmed:
{"jobId": "157369813","title": "Senior Software Engineer","jobUrl": "https://www.xing.com/jobs/berlin-senior-software-engineer-157369813","companyName": "Capmo.com","companySize": "51-200 employees","companyIndustry": "Software","companyXingUrl": "https://www.xing.com/pages/capmo","city": "Berlin","region": "Land Berlin","zipCode": "10178","street": "Neue Schoenhauser Str. 3-5","countryCode": "DE","employmentType": "Full-time","careerLevel": "Professional/Experienced","discipline": "IT and software development","industry": "Software","remotePolicy": "Hybrid","salaryMin": 85000,"salaryMax": 115000,"salaryCurrency": "EUR","salaryIsEstimated": false,"hasSalary": true,"skills": ["typescript", "node", "javascript"],"postedAt": "2026-08-21T11:29:44Z","expiresAt": "2026-10-20T11:29:46Z","descriptionText": "...","summary": "Capmo.com is seeking a Backend Engineer in Berlin ...","responsibilities": ["Design scalable backend services with Node.js.", "..."],"qualifications": ["6+ years of software engineering experience.", "..."]}
The dataset ships with three ready-made table views so you do not have to hide 50 columns by hand:
- Overview: title, company, location, postcode, salary band, employment type, career level, remote policy, industry, posted date and link.
- Salaries: the pay side on its own, with the estimate flag next to it.
- Companies: the hiring employers with industry, headcount, head office and XING page.
How much does it cost to scrape XING jobs?
One flat price per job row. No start fee, no per-request charge, no surprise line items.
| Job rows | Cost |
|---|---|
| 1,000 | $0.70 |
| 10,000 | $7.00 |
| 100,000 | $70.00 |
The cheapest other XING scraper on the Store charges $1.00 per 1,000 rows plus a $0.50 fee every time the run starts, so a daily 1,000-row run costs $45.00 a month there and $21.00 a month here. Apify's free tier includes $5 of platform credit each month, which is about 7,000 XING jobs.
Measured coverage
Measured on 2026-09-14 across 240 job ads pulled from live DACH searches.
| Field | Present |
|---|---|
| Job ID, title, URL, company name | 100% |
| City, federal state, country | 100% |
| Employment type, career level, discipline, industry | 100% |
| Remote policy | 100% |
| Skill tags | 100% |
| Posted, refreshed and expiry dates | 100% |
Salary band (hasSalary) | 90% |
| Salary median | 73% |
| Full description text | 84% |
| Company industry | 76% |
| Company headcount band | 67% |
| Postcode | 22% |
| Street address | 13% |
Of the ads that carry pay, roughly 4 in 5 are XING's own salary estimate and 1 in 5 is a band the employer published. salaryIsEstimated tells you which is which on every row, so you never have to guess.
Limits
- About 1,000 results per individual search. XING stops serving results past roughly the 1,000th row, whatever the result count on the page suggests. To go deeper, split the search: narrow the city, shrink the radius, or add an employment type or career level filter.
- Postcode and street are sparse. XING only publishes them when the employer filled them in, which is about 1 in 5 ads. City, state and country are always there.
- Descriptions are missing on about 1 in 6 ads. Those are postings pushed in from an external applicant tracking system, where XING links out instead of hosting the body text.
appliesOffsiteflags them. - A misspelled city does not error. XING resolves locations loosely and quietly falls back to a wider search rather than returning nothing, so check the
Cities:line in the run log if the results look off. - DACH only. XING is a German, Austrian and Swiss network. It is not the tool for jobs outside those three countries.
- No candidate profiles. This actor reads job ads. It does not touch personal profiles, contacts or anything behind a login.
FAQ
Is it legal to scrape XING jobs?
XING Jobs Scraper reads only job advertisements that XING publishes publicly to anyone with a browser, with no login and no cookies. It collects no candidate profiles and no personal data. Scraping public data is broadly lawful in the EU and the US, but how you store and use the results is your responsibility, particularly under GDPR if you combine it with personal data. If you are unsure, take legal advice.
Does XING have a public jobs API?
No. XING retired its public developer API, so scraping the public job board is the only way to get this data programmatically. That is exactly what this actor does.
Can I use XING Jobs Scraper as an API?
Yes. Every actor on Apify is an API. Start a run, poll it and read the dataset over REST, or use the official clients. See the Apify API docs.
Can I use this in Python?
Yes, with apify-client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("cirkit/xing-jobs-scraper").call(run_input={"keywords": ["software engineer"],"locations": ["Berlin"],"maxItems": 500,})for job in client.dataset(run["defaultDatasetId"]).iterate_items():print(job["title"], job["companyName"], job["salaryMin"], job["salaryMax"])
Can I integrate XING Jobs Scraper with other apps?
Yes. Apify ships native integrations for Zapier, Make, Google Sheets, Slack, Airbyte, GitHub and Google Drive, plus webhooks that fire when a run finishes, so new job ads can land in your CRM or ATS without anyone touching a button.
How do I schedule XING Jobs Scraper to run automatically?
Open the actor, go to Schedules, and set a cron expression. Set Sort by to Date posted (newest first) and Max results to a modest number, and a daily run gives you a clean feed of new DACH job ads.
Why did I get fewer results than expected?
Three usual causes. XING caps one search at roughly 1,000 results, so a broad keyword hits a ceiling. Your Max results cap may be lower than you think, since it applies across every keyword and city combined. Or a filter is narrower than intended, for example Full remote plus Senior executive in a small city is genuinely a handful of ads.
Can I search in English or does it have to be German?
Both work. XING's search is semantic, so software engineer returns German-language ads for the same role. Searching the German term as well usually widens the result set, and running both keywords costs you nothing extra because duplicate ads are removed before you are charged.
What is the difference between salaryMin and salaryMedian?
salaryMin and salaryMax are the ends of the band. salaryMedian is XING's midpoint estimate and only appears on ads where XING modelled the pay rather than the employer publishing a range. Use salaryIsEstimated to separate the two populations before you benchmark anything.
Can I get a field that is not listed?
If XING shows it publicly on the job ad, it can probably be added. Open an issue on the actor and describe the field.
Does it cover Austria and Switzerland?
Yes. Search Vienna, Graz, Zurich, Basel or Geneva the same way you search German cities. Swiss ads come back in CHF and the countryCode field tells you which market each row belongs to.
You might also like
- SEEK Job Scraper for Australia and New Zealand
- Indeed Jobs Scraper for global job listings
- Glassdoor Company Scraper for employer reviews and ratings
- Workday Jobs Scraper for corporate career sites
- Wellfound Jobs Scraper for startup roles
Changelog
- 0.1 (2026-09-14): first release. Keyword, city and radius search across Germany, Austria and Switzerland, employment type, career level and remote policy filters, pasted XING search URLs, salary bands, company profiles and full descriptions.