Indeed Jobs Scraper — by Keyword & Zip Code (No Login)
DeprecatedPricing
$10.00 / 1,000 result scrapeds
Indeed Jobs Scraper — by Keyword & Zip Code (No Login)
DeprecatedScrape Indeed.com job listings by keyword, zip code, or city — no login, no API key required. Returns title, company, salary, description, posted date, apply URL across 7 countries (US, UK, CA, AU, IN, DE, FR). Pay per result $0.01/job. JSON, CSV, Excel.
Pricing
$10.00 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Web Data Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 days ago
Last modified
Categories
Share
Indeed Jobs Scraper — Job Listings, Salaries & Apply URLs at Scale
Scrape Indeed job listings by keyword and location across 7 countries — no login, no Indeed API access, no developer agreements. Returns structured records with job title, company, location, salary, full description, posted date, and a direct apply URL.
Pay-per-result pricing means you only pay for jobs you actually receive. Output ships as JSON, CSV, or Excel.
Why Scrape Indeed?
Indeed is the largest job board in the world — more than 250 million unique monthly visitors and tens of millions of active listings. For talent teams, market researchers, and aggregator builders, it's the canonical source of hiring data. But Indeed makes that data hard to use programmatically:
- Indeed's official Publisher API was deprecated in 2023 — most external integrations broke overnight.
- The newer Indeed Apply API is restricted to ATS partners and approved employers.
- Manually paging through search results is slow, lossy, and impossible at scale.
- Indeed's pages render with anti-bot protections — naive scrapers stop working within a week.
- Salary data, which Indeed sometimes publishes and sometimes hides, is parsed inconsistently across competing tools.
This actor handles all of it. You give it a search query and a location, it returns clean, structured job records.
What Data You Get Per Job
Each job record includes:
- Job title — exact title as posted
- Company name — hiring organization
- Company URL — Indeed company profile page
- Location — city, state, country, or "Remote"
- Job type — full-time, part-time, contract, internship, temporary
- Salary — disclosed salary range (when available)
- Posted date — when the listing first appeared
- Description — full job description text (responsibilities, requirements, benefits)
- Apply URL — direct link to apply (Indeed Apply or external ATS)
- Job ID — Indeed's unique listing identifier
- URL — direct link to the Indeed listing page
Output is delivered as a structured Apify dataset — exportable to JSON, CSV, Excel, or XML, or fetchable via the Apify API.
Use Cases
1. Job market and salary research
Track which roles are growing or shrinking in a specific market. Compare median salaries for "Data Engineer" vs "Software Engineer" across San Francisco, Austin, and Remote. Build the kind of compensation reports that recruiters and salary-benchmark sites charge thousands for.
2. Recruitment and sourcing automation
Build internal alerts that ping your team the moment a target company posts a new role. Scan a list of competitor companies daily and route fresh listings to your applicant tracker — useful for executive recruiters and contingent staffing firms.
3. Competitive intelligence
A company's hiring pattern is a public signal of its priorities. A surge in product engineering hires often means a new product launch is coming. A wave of sales hires signals a market expansion. Pull a competitor's Indeed footprint weekly and turn it into intelligence.
4. Job board and aggregator products
Power your own niche job board (e.g. "remote Python jobs" or "climate-tech jobs") without building a scraper from scratch. Pull Indeed listings, filter, deduplicate, and present on your own platform. Schedule daily refreshes to keep listings current.
5. Workforce trend analysis
Track how skill demand shifts in response to new technologies, regulatory changes, or economic events. Researchers, journalists, and economists use job-posting data to identify trends months before they show up in BLS statistics.
6. Recruitment marketing benchmarks
Compare your job descriptions to competitors in the same role and location. Are your titles too generic? Is your salary band below market? Pull 200 similar listings, parse the descriptions, and benchmark in an afternoon.
7. ATS and HRIS integration
Feed Indeed job data into your applicant tracking system or HR platform to enrich applicant context, surface duplicate listings, or build a unified job catalog across multiple sources.
How to Use
- Open the actor on Apify: apify.com/cryptosignals/indeed-jobs-scraper
- Click Try for free — no credit card required for small runs
- Configure your inputs (see below):
keywords— what to search forlocation— where to searchcountry— which Indeed domain to use (US, UK, CA, AU, IN, DE, FR)maxItems— how many jobs to return (1–100)
- Click Start — most batches of 25 jobs complete in 1–2 minutes
- Download results as JSON, CSV, Excel, or fetch via the Apify API
You can also schedule recurring runs (hourly, daily, weekly) and route results to webhooks, Google Sheets, Airtable, Slack, or any Apify integration.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
keywords | string | Yes | python developer | Job search keywords (e.g. data scientist, marketing manager) |
location | string | No | Remote | City, state, or "Remote" (e.g. San Francisco, CA, London) |
country | string | No | US | Indeed country domain — one of US, UK, CA, AU, IN, DE, FR |
maxItems | integer | No | 25 | Maximum number of job listings to scrape (1–100) |
proxyConfiguration | object | No | Apify residential | Proxy settings — residential IPs strongly recommended |
Example input — basic search
{"keywords": "data engineer","location": "Austin, TX","country": "US","maxItems": 50}
Example input — remote roles in the UK
{"keywords": "product manager","location": "Remote","country": "UK","maxItems": 100}
Example input — Germany
{"keywords": "machine learning engineer","location": "Berlin","country": "DE","maxItems": 30}
Country Coverage
The actor supports the following Indeed country domains:
| Code | Country | Indeed Domain |
|---|---|---|
US | United States | indeed.com |
UK | United Kingdom | uk.indeed.com |
CA | Canada | ca.indeed.com |
AU | Australia | au.indeed.com |
IN | India | in.indeed.com |
DE | Germany | de.indeed.com |
FR | France | fr.indeed.com |
Pass the country code in the country parameter and Indeed routes to the appropriate regional domain automatically.
Output Example
Each result is a JSON object. Example record:
{"jobId": "0a1b2c3d4e5f6789","title": "Senior Data Engineer","company": "Acme Analytics","companyUrl": "https://www.indeed.com/cmp/Acme-Analytics","location": "Austin, TX","jobType": "Full-time","salary": "$130,000 - $170,000 a year","postedAt": "2026-05-04","description": "Acme Analytics is hiring a Senior Data Engineer to lead our data platform team. You'll design pipelines, mentor engineers, and partner with product to ship customer-facing analytics features...","applyUrl": "https://www.indeed.com/jobs/apply/0a1b2c3d4e5f6789","url": "https://www.indeed.com/viewjob?jk=0a1b2c3d4e5f6789","country": "US","scrapedAt": "2026-05-07T09:14:23Z"}
Datasets can be exported as JSON, CSV, XML, or Excel from the Apify console, or fetched programmatically via the dataset API.
Calling the Actor Programmatically
Python — apify-client
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("cryptosignals/indeed-jobs-scraper").call(run_input={"keywords": "data engineer","location": "Austin, TX","country": "US","maxItems": 50,})for job in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{job['title']} at {job['company']} — {job.get('salary', 'salary not listed')}")
Python — multi-country sweep
from apify_client import ApifyClientimport pandas as pdclient = ApifyClient("YOUR_APIFY_TOKEN")countries = ["US", "UK", "CA", "DE", "FR"]all_jobs = []for c in countries:run = client.actor("cryptosignals/indeed-jobs-scraper").call(run_input={"keywords": "machine learning engineer","location": "","country": c,"maxItems": 100,})items = list(client.dataset(run["defaultDatasetId"]).iterate_items())all_jobs.extend(items)df = pd.DataFrame(all_jobs)print(df.groupby("country").size())
Node.js — apify-client
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('cryptosignals/indeed-jobs-scraper').call({keywords: 'product manager',location: 'Remote',country: 'US',maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(j => console.log(`${j.title} — ${j.company} (${j.location})`));
cURL — direct API call
curl -X POST \"https://api.apify.com/v2/acts/cryptosignals~indeed-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"keywords": "data engineer","location": "San Francisco, CA","country": "US","maxItems": 25}'
Pricing
This actor uses Pay-per-event pricing — you only pay for the jobs you actually receive. No charges for failed runs, empty results, or compute time.
- Cost: $0.01 per job result
- Free tier: Apify's free plan includes $5/month of platform credits — enough to scrape ~500 jobs at no additional cost
- Cost examples:
| Use case | Jobs/run | Cost |
|---|---|---|
| One-off keyword check | 25 | $0.25 |
| Daily ATS feed | 50/day | $0.50/day (~$15/month) |
| Weekly competitor sweep | 500/week | $5/week |
| Research dataset | 5,000 | $50 |
FAQ
Is scraping Indeed legal?
Scraping publicly visible data — pages anyone can see without logging in — is generally considered lawful in many jurisdictions. The U.S. Ninth Circuit's hiQ v. LinkedIn (2022) decision held that scraping publicly accessible data does not violate the Computer Fraud and Abuse Act. This actor only collects data from Indeed's publicly visible job listings — no login, no private content, no bypassing of access controls. Consult your own legal counsel for your specific use case.
Do I need an Indeed account or Publisher API key?
No. Indeed's Publisher API was deprecated in 2023, and the actor uses publicly accessible job listings — no login, no API key, no developer agreement.
How fast is it?
A run of 25 jobs typically completes in 1–2 minutes. Larger runs (100+ jobs) generally finish within 5–8 minutes. Multiple runs can execute in parallel using Apify's concurrent-run feature.
What if Indeed blocks the request?
The actor uses Apify residential proxies by default, which rotate across thousands of geographic IPs. This bypasses the standard anti-bot protections Indeed uses. If a single request fails (rare), the actor retries automatically.
Can I get jobs from outside the 7 supported countries?
The 7 supported countries cover the majority of Indeed's English-language and major European markets. For other regions, contact us via web-data-labs.com and we can prioritize the country you need.
Can I schedule recurring runs?
Yes. Apify has a built-in scheduler — set any cron expression (hourly, daily, weekly), and have results pushed to a webhook, Google Sheets, Airtable, Slack, or your own database. Combine with Apify's Zapier and Make integrations for downstream automation.
What output formats are supported?
JSON, CSV, Excel, and XML are all supported natively in the Apify console. You can also fetch results programmatically via the dataset API in any language.
Why not just use the Indeed Publisher API?
You can't — Indeed deprecated the public Publisher API in 2023. The remaining Indeed Apply API is restricted to ATS partners and approved employers. For independent developers, agencies, and researchers, this scraper is the practical alternative.
Why This Actor vs Alternatives?
- No login required. Some competing actors require a logged-in Indeed session. This one doesn't.
- Pay-per-result. You only pay for jobs you actually receive. Failed runs cost zero.
- 7-country coverage. Most Indeed scrapers only handle US listings. This one supports US, UK, CA, AU, IN, DE, FR.
- Residential proxies built in. Anti-bot handling is automatic — no proxy configuration on your side.
- Apify-native integrations. Pipe results into Zapier, Make, Google Sheets, Airtable, Slack, or any of Apify's 50+ integrations.
- Maintained. The actor is updated as Indeed evolves its layout. You don't need to rebuild a parser every quarter.
Related Actors From Web Data Labs
- LinkedIn Jobs Scraper — Job listings from LinkedIn
- Glassdoor Jobs Scraper — Jobs plus salary and company-review data
- Greenhouse Jobs Scraper — Job listings from Greenhouse-powered ATS pages
- Lever Jobs Scraper — Job listings from Lever-powered career pages
- Stack Overflow Jobs Scraper — Developer-focused job listings
About Web Data Labs
This actor is built and maintained by Web Data Labs — a team focused on production-grade web data extraction across jobs, e-commerce, social media, software reviews, and company data. We publish 100+ public actors on the Apify platform, all pay-per-result.
Need a custom build, enterprise SLA, or private actor? Reach out via web-data-labs.com or the Apify contact form.