Indeed Jobs Scraper avatar

Indeed Jobs Scraper

Pricing

from $4.00 / 1,000 dataset items

Go to Apify Store
Indeed Jobs Scraper

Indeed Jobs Scraper

Scrape Indeed job listings at scale — job title, company, ratings, location, salary range, full description and apply links — across 25 country sites. Structured JSON ready for Sheets, your ATS or CRM. Ideal for recruiters, job boards and labor-market research. Pay only for the results you get.

Pricing

from $4.00 / 1,000 dataset items

Rating

0.0

(0)

Developer

axly

axly

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Categories

Share

Extract structured job data from Indeed — the world's largest job site — by keyword, location and country. Get job titles, companies, salary ranges, company ratings, full descriptions and apply links as clean JSON, ready for your ATS, CRM, spreadsheet or data pipeline.

No Indeed login, no browser automation to maintain — just fast, structured results across 25 Indeed country sites.

Who uses this

  • Recruiters & staffing agencies — build talent-market maps, monitor which roles competitors are hiring for, and feed openings into your ATS.
  • Job boards & aggregators — supplement your inventory with fresh Indeed postings, deduplicated and normalized.
  • Labor-market & HR analysts — track hiring demand, salary benchmarks and remote-work trends by role, city and country.
  • PropTech / SaaS / AI developers — a stable JSON schema to power job-search products, salary tools and AI agents.

Output fields

FieldTypeDescription
jobkeystringIndeed's unique job identifier
titlestringJob title
companystringEmployer name
company_ratingnumberEmployer star rating (0–5)
company_review_countnumberNumber of employer reviews
locationstringFormatted job location
city / state / postal_code / countrystringParsed location parts
remotebooleanWhether the job is remote
salary_min / salary_maxnumberSalary range when published
salary_currencystringSalary currency
salary_unitstringPay period (year, hour, …)
salary_textstringSalary as shown on Indeed
employment_typestringFull-time, contract, etc. (detail mode)
job_typesarrayJob-type tags
snippet_textstringShort summary from the search card
description_textstringFull job description (detail mode)
posted_relativestringe.g. "3 days ago"
date_postedstringISO date the job was posted (detail mode)
sponsoredbooleanWhether the listing is a paid ad
indeed_applyablebooleanWhether Easy Apply is available
urlstringLink to the job on Indeed
scraped_atstringISO-8601 timestamp of extraction

High-value use cases

  1. Competitive hiring intelligence — track a competitor's open roles by searching their company name and location weekly.
  2. Salary benchmarking — collect salary_min/salary_max for a role across cities to build compensation bands.
  3. Lead lists for staffing — pull fresh openings in a niche (e.g. "registered nurse", "Dallas, TX") and route them to recruiters.
  4. Remote-work trend tracking — filter remote=true roles over time.
  5. AI job-search assistants — feed normalized JSON to an LLM to answer "find me senior Python jobs in Berlin posted this week".

Input parameters

ParameterTypeDefaultDescription
querystringRequired. Job title or keywords.
locationstringCity, state, ZIP or "Remote".
countryenumusWhich Indeed country site to search (25 supported).
maxItemsinteger50Stop after this many jobs.
fetchDetailsbooleanfalseEnrich each job with full description, precise salary and address.
jobTypeenumanyFull-time, part-time, contract, temporary, internship.
maxAgeDaysintegerOnly jobs posted within N days.
radiusintegerSearch radius around the location.
sortenumrelevancerelevance or date (newest first).
includeSponsoredbooleantrueInclude promoted job ads.
proxyConfigurationobjectResidentialProxy settings — use Residential.

Example input

{
"query": "software engineer",
"location": "New York, NY",
"country": "us",
"maxItems": 50,
"fetchDetails": true,
"sort": "date",
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Example output

{
"jobkey": "a1b2c3d4e5f6",
"title": "Senior Software Engineer",
"company": "Acme Corp",
"company_rating": 4.1,
"company_review_count": 320,
"location": "New York, NY 10003",
"city": "New York",
"state": "NY",
"country": "us",
"remote": false,
"salary_min": 140000,
"salary_max": 180000,
"salary_currency": "USD",
"salary_unit": "YEAR",
"salary_text": "$140,000 - $180,000 a year",
"employment_type": "FULL_TIME",
"snippet_text": "We are looking for a senior engineer to...",
"posted_relative": "2 days ago",
"indeed_applyable": true,
"url": "https://www.indeed.com/viewjob?jk=a1b2c3d4e5f6",
"scraped_at": "2026-07-17T12:00:00+00:00"
}

Scheduling & integrations

  • Schedule runs (hourly/daily/weekly) from the Apify Console to keep a fresh jobs feed.
  • Webhooks notify your app when a run finishes.
  • Export to Google Sheets, Make, Zapier, Amazon S3 or pull via the Apify API.

MCP / AI assistants

Prefer live access from an AI assistant (Claude, Cursor, ChatGPT)? Use the companion Indeed MCP Server actor, which exposes job search, detail lookup and location autocomplete as Model Context Protocol tools.

FAQ

How many jobs can I get per search? Indeed gates anonymous access beyond roughly the first result page per query (~15–45 jobs including sponsored). To collect more, vary query, location, jobType, maxAgeDays and country across runs — this also yields broader, less-duplicated coverage.

Why should I use Residential proxies? Indeed is protected by Cloudflare and blocks datacenter IPs. Residential proxies make requests look like real users and dramatically improve reliability.

Is the data fresh? Yes — every run fetches live pages directly from Indeed at run time.

Do I need an Indeed account or API key? No. The actor reads publicly visible job pages.

Is scraping Indeed legal? The actor collects only publicly available job postings. You are responsible for complying with Indeed's terms and applicable laws in your jurisdiction.

Something broke — how fast is support? Report issues on the actor's Issues tab; fixes are typically shipped quickly.