Indeed Jobs Scraper avatar

Indeed Jobs Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Indeed Jobs Scraper

Indeed Jobs Scraper

Extract job listings from Indeed across 14 country domains. Titles, companies, salaries, locations, benefits, and apply URLs. HTTP-only with residential proxy rotation.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Aurenic

Aurenic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Extract job listings from Indeed across 14 country domains. Titles, companies, salaries, locations, benefits, and apply URLs. HTTP-only with residential proxy rotation.

What does Indeed Jobs Scraper do?

Scrape Indeed job listings by keyword and location across 14 country domains:

  • United States (indeed.com), United Kingdom (uk.indeed.com), Canada, Australia, Germany, France, India, Brazil, Mexico, Spain, Italy, Netherlands, Japan, Singapore

For every job: title, company name + rating, location, remote flag, salary range (parsed to min/max/type), job type, experience level, benefits, description snippet, posted date, and a direct apply URL.

Data comes from the JSON blob that Indeed embeds in every search results page — window.mosaic.providerData["mosaic-provider-jobcards"]. No HTML card parsing, no browser.

Output fields

FieldDescription
jobKeyIndeed job key
titleJob title
companyCompany name
companyRatingCompany rating (0–5)
companyReviewCountNumber of company reviews
locationJob location
remoteRemote job flag
salaryMin / salaryMaxParsed salary range
salaryTypehourly / yearly / monthly / weekly / daily
salaryTextRaw salary string
jobTypeFull-time, Part-time, Contract, etc.
experienceLevelEntry / Mid / Senior level
descriptionSnippetJob description snippet (first 3,000 chars)
benefitsSemicolon-separated benefits list
attributesAdditional job attributes
sponsoredSponsored listing flag
urgentlyHiringUrgent hiring flag
easilyApplyEasy-apply flag
postedAtPosting date
urlDirect view-job URL

Who is it for?

  • Recruiters sourcing candidates and benchmarking salaries across markets
  • Job board aggregators building multi-country job feeds
  • Market researchers analyzing hiring trends by role, city, and industry
  • HR tech platforms powering salary benchmarking and job-matching engines
  • Sales teams identifying companies that are actively hiring (buying signal)
  • Career coaches tracking openings for clients across regions

Pricing

$2.00 per 1,000 results. No subscription.

ResultsCost
100$0.20
1,000$2.00
10,000$20.00

How to use it

  1. Enter Search Queries (job titles or keywords).
  2. Enter Locations (cities, states, ZIP codes) or leave empty for nationwide.
  3. Pick the Country domain.
  4. Optionally set Remote Only, Job Type, and Experience Level filters.
  5. Set Max Items (default 200) and Max Pages per Query (default 5).
  6. Click Start.

Output example

{
"recordType": "job",
"jobKey": "a1b2c3d4e5f67890",
"title": "Senior Software Engineer",
"company": "Stripe",
"companyRating": 4.2,
"companyReviewCount": 1284,
"location": "San Francisco, CA 94103",
"remote": false,
"salaryMin": 180000,
"salaryMax": 250000,
"salaryType": "yearly",
"salaryText": "$180,000 - $250,000 a year",
"jobType": "Full-time",
"experienceLevel": "Senior level",
"descriptionSnippet": "We are looking for a Senior Software Engineer to join the Payments Infrastructure team...",
"benefits": "Health insurance; 401(k); Paid time off",
"attributes": "Health insurance; Dental insurance",
"sponsored": false,
"urgentlyHiring": true,
"easilyApply": false,
"postedAt": "2026-09-19T00:00:00.000Z",
"url": "https://www.indeed.com/viewjob?jk=a1b2c3d4e5f67890",
"query": "software engineer",
"searchLocation": "San Francisco, CA",
"country": "us",
"source": "indeed-mosaic",
"scrapedAt": "2026-09-22T12:00:00.000Z"
}

Technical details

  • HTTP-only — uses got-scraping (TLS impersonation) to fetch search pages. No browser overhead.
  • Residential proxy rotation — Indeed's Cloudflare rules block datacenter IPs based on reputation. The actor rotates residential proxy sessions on 403 and retries up to 5 times per URL.
  • JSON extraction — Indeed embeds job cards as JSON in window.mosaic.providerData["mosaic-provider-jobcards"]. The actor parses that blob directly instead of scraping HTML cards.
  • 14 country domains — US, UK, CA, AU, DE, FR, IN, BR, MX, ES, IT, NL, JP, SG.
  • Parsed salary — Indeed's raw salary string is parsed to numeric min/max plus a type (hourly, yearly, etc.).
  • Self-throttled at 2.5–4 s between pages to keep Cloudflare's reputation scoring stable.

Known limits

  • Residential proxy is required. Indeed blocks datacenter IPs aggressively. Per-request success rates on Apify residential proxies are around 25–40% in the US, which is why the actor retries up to 5 times per page. Runs are slower than non-protected targets.
  • 10 jobs per page — Indeed shows 10 results per page by default. Pagination goes deeper with &start=10, &start=20, etc.
  • Description is a snippet, not full text — full job descriptions require fetching each /viewjob page. Planned for a future release.
  • No CAPTCHA solving — the actor relies on proxy rotation. If Indeed escalates to a hard challenge, the page will return no JSON and the actor will log the failure.
  • Salary data is not always present — many employers do not disclose salary. Those records have salaryMin: null.

FAQ

Do I need an API key? No. Indeed has no public jobs API for third parties.

Do I need a proxy? Yes — residential proxy is pre-configured and required. Datacenter IPs are blocked within a few requests.

Why is the run slow? Indeed's Cloudflare rules block ~60–75% of residential requests on the first try. Each page takes up to 5 retries with 3–10 s backoff. Budget ~30–60 s per page.

Can I filter by salary? Not directly in the input, but salaryMin/salaryMax are parsed so you can filter downstream.

How do I export data? After a run, go to Storage → Export as JSON, CSV, Excel.

Support

Open an issue on the Actor's page for bugs or feature requests.