Hiring.Cafe Scraper — 2.8M AI-Enriched Jobs from 46 ATS avatar

Hiring.Cafe Scraper — 2.8M AI-Enriched Jobs from 46 ATS

Pricing

from $1.80 / 1,000 results

Go to Apify Store
Hiring.Cafe Scraper — 2.8M AI-Enriched Jobs from 46 ATS

Hiring.Cafe Scraper — 2.8M AI-Enriched Jobs from 46 ATS

Scrape Hiring.Cafe (hiring.cafe) — AI-enriched job aggregator with 2.8M+ listings from 46 ATS platforms. Structured salary, company, and remote-work data with incremental tracking for recurring job monitoring.

Pricing

from $1.80 / 1,000 results

Rating

0.0

(0)

Developer

Black Falcon Data

Black Falcon Data

Maintained by Community

Actor stats

2

Bookmarked

33

Total users

18

Monthly active users

0.44 hours

Issues response

2 days ago

Last modified

Share

What does Hiring.Cafe Scraper do?

Hiring.Cafe Scraper extracts structured job data from hiring.cafe — including salary data, apply URLs, company metadata, full descriptions, and location data. It supports keyword search, location filters, and controllable result limits, so you can run the same query consistently over time. The actor also offers detail enrichment (full descriptions and company metadata) where the source provides them.

New to Apify? Sign up free and use the included $5 monthly platform credit to test this actor.

Key features

  • ♻️ Incremental mode — recurring runs emit NEW / UPDATED / REAPPEARED records by default; UNCHANGED and EXPIRED are opt-in. First run builds the baseline; subsequent runs emit and charge only for the diff. Pair with notifications for daily "new jobs" alerts. Can save 80–95% on daily monitoring when only a small share of listings changes.
  • 🔔 Notifications — Telegram, Slack, Discord, WhatsApp Cloud API, and generic webhook are supported. Pair with incremental + notifyOnlyChanges to notify only NEW / UPDATED / REAPPEARED jobs.
  • 🌍 Verified country search — Search one country or many countries in the same run across 50 verified country-level markets. Use countries + maxResultsPerCountry for balanced multi-country runs; exact city/region searches are supported by pasting a Hiring.Cafe ?searchState=... URL.
  • 📋 Detail enrichment — two-stage mode: list jobs first, then enrich each job with cleaned full descriptions, education/requirements fields, contact extraction, URLs, social profiles, geolocation, and company metadata where the source provides them.
  • 🔀 Apply-source provenance — every listing carries the Hiring.Cafe portal URL, original apply URL when exposed, and source ATS/platform (sourceAts) for audit and deduplication against direct-source feeds.
  • 📦 Compact mode — AI-agent and MCP-friendly compact payloads with the most useful core fields only, including apply, salary, location, lifecycle, and derived table fields.
  • ✂️ Description truncation — cap description length with descriptionMaxLength to control LLM prompt cost and dataset size — set 0 for full descriptions, or any char-limit to trim.
  • 📌 Change classification — each incremental record carries a changeType of NEW / UPDATED / UNCHANGED / REAPPEARED / EXPIRED. Default emits NEW + UPDATED + REAPPEARED; opt into the others with emitUnchanged / emitExpired. Repost detection flags previously-expired listings that come back.

What data can you extract from hiring.cafe?

Each result includes core listing fields (jobId, title, company, location, locationNormalized, workplaceType, commitmentTypes, seniorityLevel, experienceLevelBucket, jobCategory, and more), compensation fields (salaryRange, salaryMin, salaryMax, salaryCurrency, salaryFrequency), apply fields (applyUrl, portalUrl, sourceAts, applicationType), company metadata (companyName, companyWebsite, companyEmployeeCount, companySizeBucket, and more), contact extraction (contactEmail, contactPhone, extractedEmails, extractedPhones), URL classification (classifiedUrls, socialProfiles), and freshness/lifecycle fields (postedDate, freshnessBucket, changeType, firstSeenAt, lastSeenAt). In standard mode, all fields are always present — unavailable data points are returned as null, never omitted. In compact mode, only the most useful table/AI fields are returned.

Input

The main inputs are a search keyword, an optional location filter, and a result limit. Additional filters and options are available in the input schema.

Key parameters:

  • query — Job search keywords. Leave blank to browse all jobs.
  • startUrls — Optional Hiring.Cafe search result URLs. Supports direct slug URLs such as https://hiring.cafe/jobs/software-engineer/locations/united-states and Hiring.Cafe URLs with ?searchState=... for exact structured locations selected on Hiring.Cafe. For simple international country searches, use the Country dropdown.
  • country — Country market to search. The dropdown runs country-level searches across 50 verified markets. United States also supports direct city/region slugs through Location and Start URLs; non-US Location is applied as a result filter after country search. (default: "US")
  • countries — Optional multi-country mode. Select multiple country-level markets to search in one run. When set, this overrides Country and uses Max Results Per Country; Start URLs still take priority if provided.
  • location — City, state, or region. United States direct searches are supported. For non-US countries, this filters the country-level result window by location text. For exact non-US city/region targeting, paste a Hiring.Cafe URL with ?searchState=... into Start URLs; otherwise leave empty to run country-level search.
  • workplaceTypes — Filter results by workplace type.
  • seniorityLevels — Filter results by seniority level.
  • commitmentTypes — Filter results by employment commitment.
  • onlyTransparentSalaries — Only include jobs where Hiring.Cafe reports transparent compensation. (default: false)
  • minSalary — Only include jobs whose reported salary range reaches at least this amount.
  • maxSalary — Only include jobs whose reported salary range starts at or below this amount.
  • postedWithinDays — Only include jobs with an estimated posted date within the last N days. 0 = no date filter. (default: 0)
  • ...and 24 more parameters

Input examples

Full enriched search — Keyword-driven search with detail enrichment for descriptions, contact extraction, URLs, company data, and derived fields.

→ Full payload per result — all standard fields populated where the source provides them.

{
"query": "software engineer",
"country": "US",
"maxResults": 50,
"includeDetails": true,
"outputMode": "full"
}

US + Germany table export — Balanced multi-country search with spreadsheet-friendly output.

→ Includes fields such as salaryRange, locationNormalized, experienceLevelBucket, companySizeBucket, applicationType, and freshnessBucket.

{
"query": "engineer",
"countries": [
"US",
"DE"
],
"maxResultsPerCountry": 50,
"includeDetails": false,
"outputMode": "table"
}

India compact export — Country-level India search with compact output for AI agents, MCP workflows, or quick lead triage.

→ Compact payload for AI agents or MCP workflows while preserving key apply, salary, location, and lifecycle fields.

{
"query": "engineer",
"country": "IN",
"maxResults": 50,
"includeDetails": false,
"outputMode": "compact"
}

Output

Each run produces a dataset of structured job records. Results can be downloaded as JSON, CSV, or Excel from the Dataset tab in Apify Console.

Example job record

{
"jobId": "2c348e5768d733e3cfceea25a61fe881528ecf7c57aa3ed00474fd98513e23d7",
"title": "Software Engineer/Lead Software Engineer",
"company": "State Farm",
"location": "Bloomington or Tempe",
"workplaceType": "Hybrid",
"commitment": "Full Time",
"seniorityLevel": "Mid Level",
"roleType": "Individual Contributor",
"roleActivities": [
"lead teams",
"deliver software",
"design solutions"
],
"jobCategory": "Software Development",
"description": "Overview:\n<p style=\"margin: 0px;\">Being good neighbors – helping people, investing in our communities, and making the world a better place – is who we are at State Farm. It is at the core of how we op...",
"salaryMin": null,
"salaryMax": null,
"salaryCurrency": "USD",
"salaryFrequency": "Yearly",
"isCompensationTransparent": false,
"requirementsSummary": "Software Engineer with experience delivering software and leading collaborative initiatives in cloud-enabled environments.",
"technicalTools": [
"Python",
"Terraform",
"APIs",
"JSON",
"React",
"AWS",
"Azure",
"Cloud Architecture",
"DevSecOps",
"Sagemaker",
"Lambda",
"EC2",
"SQS",
"S3",
"CloudFront",
"API Gateway",
"SNS"
],
"minYearsExperience": null,
"minManagementYears": null,
"degreeRequirement": null,
"degreeFieldsOfStudy": null,
"licensesOrCertifications": null,
"languageRequirements": [
"English"
],
"securityClearance": null,
"driverLicenseRequired": false,
"retirement401kMatching": false,
"retirementPlan": false,
"tuitionReimbursement": false,
"generousParentalLeave": false,
"generousPaidTimeOff": false,
"fourDayWorkWeek": false,
"visaSponsorship": false,
"relocationAssistance": false,
"fairChance": false,
"militaryVeterans": false,
"physicalLaborIntensity": "Low",
"physicalPosition": "Sitting",
"workplaceEnvironment": "Office",
"computerUsage": "High",
"cognitiveDemand": "High",
"oralCommunicationLevel": "High",
"overtimeRequired": false,
"onCallRequirement": null,
"airTravelRequirement": null,
"landTravelRequirement": null,
"morningShiftWork": null,
"eveningShiftWork": null,
"overnightWork": null,
"weekendAvailabilityRequired": false,
"holidayAvailabilityRequired": false,
"positionEmployerType": "External Position",
"workplaceCountries": [
"US"
],
"workplaceContinents": [
"North America"
],
"workplaceStates": [
"Illinois, US",
"Arizona, US"
],
"workplaceCities": [
"Bloomington, Illinois, US",
"Tempe, Arizona, US"
],
"workplaceCounties": [
"McLean County, Illinois, US",
"Maricopa County, Arizona, US"
],
"isWorkplaceWorldwideOk": false,
"latitude": 40.477,
"longitude": -89.3859,
"companyName": "State Farm",
"companyWebsite": "statefarm.com",
"companySector": "Information Technology",
"companyIndustries": [
"Insurance",
"Financial Services"
],
"companyActivities": [
"insurance",
"financial services"
],
"companyTagline": "A leading provider of insurance and financial services.",
"companyEmployeeCount": 67000,
"companyHqCountry": "US",
"companyYearFounded": 1922,
"companyOrganizationType": "Cooperative / Mutual",
"companyParent": null,
"companySubsidiaries": [
"State Farm Fire and Casualty Company",
"State Farm Life Insurance Company",
"State Farm General Insurance Company",
"State Farm Florida Insurance Company",
"State Farm Bank"
],
"companyStockExchange": null,
"companyStockSymbol": null,
"companyFundingType": null,
"companyFundingYear": null,
"companyFundingAmount": null,
"companyFundingInvestors": null,
"applyUrl": "https://jobs.statefarm.com/jobs/43740/job?utm_source=hiringcafe_integration&iis=Job%20Board&iisn=HiringCafe",
"portalUrl": "https://hiring.cafe/viewjob/kac5xufceyhyds01",
"sourceAts": "icims",
"postedDate": "2026-03-16T22:04:00.000Z",
"scrapedAt": "2026-04-05T13:50:10.906Z",
"source": "hiring.cafe",
"changeType": null
}

Incremental fields

When incremental: true, each record also carries:

  • changeType — one of NEW, UPDATED, UNCHANGED, REAPPEARED, EXPIRED. Default output covers NEW / UPDATED / REAPPEARED; set emitUnchanged: true or emitExpired: true to opt into the others.
  • firstSeenAt, lastSeenAt — ISO-8601 timestamps tracking the listing across runs.
  • isRepost, repostOfId, repostDetectedAt — populated when a new listing matches the tracked content of a previously expired one. Set skipReposts: true to drop detected reposts from the output.

How to scrape hiring.cafe

  1. Go to Hiring.Cafe Scraper in Apify Console.
  2. Enter a search keyword and optional location filter.
  3. Set maxResults to control how many results you need.
  4. Enable includeDetails if you need full descriptions, company data.
  5. Click Start and wait for the run to finish.
  6. Export the dataset as JSON, CSV, or Excel.

Use cases

  • Extract job data from hiring.cafe for market research and competitive analysis.
  • Track salary trends across regions and categories over time.
  • Monitor new and changed listings on scheduled runs without processing the full dataset every time.
  • Auto-apply or feed apply URLs into your ATS / hiring pipeline.
  • Research company hiring patterns, employer profiles, and industry distribution.
  • Use structured location data for regional analysis, mapping, and geo-targeting.
  • Feed structured data into AI agents, MCP tools, and automated pipelines using compact mode.
  • Export clean, structured data to dashboards, spreadsheets, or data warehouses.

How much does it cost to scrape hiring.cafe?

Hiring.Cafe Scraper uses pay-per-event pricing. You pay a small fee when the run starts and then for each result that is actually produced.

  • Run start: $0.005 per run
  • Per result: $0.0018 per job record

Example costs:

  • 10 results: $0.02
  • 100 results: $0.18
  • 500 results: $0.91

Example: recurring monitoring savings

These examples compare full re-scrapes with incremental runs at different churn rates. Churn is the share of listings that are new or whose tracked content changed since the previous run. Actual churn depends on your query breadth, source activity, and polling frequency — the scenarios below are examples, not predictions.

Example setup: 100 results per run, daily polling (30 runs/month). Event-pricing examples scale linearly with result count.

Churn rateFull re-scrape run costIncremental run costSavings vs full re-scrapeMonthly cost after baseline
5% — stable niche query$0.18$0.01$0.17 (92%)$0.42
15% — moderate broad query$0.18$0.03$0.15 (83%)$0.96
30% — high-volume aggregator$0.18$0.06$0.13 (68%)$1.77

Full re-scrape monthly cost at daily polling: $5.55. First month with incremental costs $0.59 / $1.11 / $1.90 for the 5% / 15% / 30% scenarios because the first run builds baseline state at full cost before incremental savings apply.

FAQ

How many results can I get from hiring.cafe?

The number of results depends on the search query and available listings on hiring.cafe. Use the maxResults parameter to control how many results are returned per run.

Does Hiring.Cafe Scraper support recurring monitoring?

Yes. Enable incremental mode to only receive new or changed listings on subsequent runs. This is ideal for scheduled monitoring where you want to track changes over time without re-processing the full dataset.

Can I integrate Hiring.Cafe Scraper with other apps?

Yes. Hiring.Cafe Scraper works with Apify's integrations to connect with tools like Zapier, Make, Google Sheets, Slack, and more. You can also use webhooks to trigger actions when a run completes.

Can I use Hiring.Cafe Scraper with the Apify API?

Yes. You can start runs, manage inputs, and retrieve results programmatically through the Apify API. Client libraries are available for JavaScript, Python, and other languages.

Can I use Hiring.Cafe Scraper through an MCP Server?

Yes. Apify provides an MCP Server that lets AI assistants and agents call this actor directly. Use compact mode and descriptionMaxLength to keep payloads manageable for LLM context windows.

This actor extracts publicly available data from hiring.cafe. Web scraping of public information is generally considered legal, but you should always review the target site's terms of service and ensure your use case complies with applicable laws and regulations, including GDPR where relevant.

Your feedback

If you have questions, need a feature, or found a bug, please open an issue on the actor's page in Apify Console. Your feedback helps us improve.

You might also like

Getting started with Apify

New to Apify? Create a free account with $5 credit — no credit card required.

  1. Sign up — $5 platform credit included
  2. Open this actor and configure your input
  3. Click Start — export results as JSON, CSV, or Excel

Need more later? See Apify pricing.