Indeed Scraper avatar

Indeed Scraper

Pricing

Pay per event

Go to Apify Store
Indeed Scraper

Indeed Scraper

Scrape Indeed job listings by keyword and location. Extract job titles, companies, locations, salaries, job types, posting dates, and full descriptions. Perfect for market research, recruiting intelligence, and hiring trend analysis.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

11 days ago

Last modified

Categories

Share

Scrape Indeed job listings by keyword and location. Returns structured job card data extracted directly from Indeed's internal page state — no secondary page loads required.

What you get

Each record contains:

FieldDescription
jobKeyIndeed internal job ID
jobUrlDirect link to the job posting
titleJob title
companyHiring company name
companyRatingCompany star rating on Indeed
locationCity, state, or "Remote"
salaryPay range if shown on the listing
jobTypeFull-time, Part-time, Contract, etc.
remoteWorkModelRemote / Hybrid / On-site label
isSponsoredWhether the listing is a sponsored ad
postedAtPosting date or recency label
descriptionFull job description as plain text
querySearch keyword used
searchLocationLocation filter used
scrapedAtISO timestamp of when the record was scraped

Note: description carries the full job description as plain text (one batched request per ~15 records). Set includeDescription: false for a faster, cards-only run.

How it works

Indeed is Cloudflare-protected, which is why most scrapers pointed at it come back empty. This one reads the structured job-card state Indeed embeds in its own results page, so records are clean and fully typed rather than scraped from brittle selectors.

Indeed only serves the first page of a search to anonymous visitors, so instead of paging the actor widens the search across filter variants — date posted, job type, radius, experience level — de-duplicating by job key until maxItems is reached or the variants run out.

Input

ParameterTypeRequiredDescription
querystringYesSearch keywords (e.g. software engineer, registered nurse)
locationstringYesLocation (e.g. New York, NY, Remote, London)
maxItemsintegerYesMaximum number of job listings to return
includeDescriptionbooleanNoFetch the full description text for each record (default true)

Example:

{
"query": "data analyst",
"location": "San Francisco, CA",
"maxItems": 50
}

Limits and best practices

  • Keep maxItems at 15 or below for test runs to stay within free-tier limits.
  • Each search variant yields roughly 15–50 cards; a single query typically reaches 150–200 unique jobs across all variants. For more, run additional queries or locations.
  • Sponsored listings are included and flagged with isSponsored: true.
  • Results reflect Indeed's current live index — the same search run twice may return different ordering due to Indeed's personalization and freshness ranking.

Use cases

  • Job market research — track salary ranges and demand for specific roles across cities
  • Recruiting intelligence — monitor competitor hiring activity
  • Hiring trend analysis — compare job volume across industries and locations over time
  • Lead generation — identify companies actively hiring in a given domain