Indeed Jobs Scraper - Latest Job Listings with Salary avatar

Indeed Jobs Scraper - Latest Job Listings with Salary

Pricing

$0.50 / 1,000 job returneds

Go to Apify Store
Indeed Jobs Scraper - Latest Job Listings with Salary

Indeed Jobs Scraper - Latest Job Listings with Salary

Get the newest Indeed job listings for any search in 16 countries: title, company, location, salary range, job type, rating and date as clean JSON. Search terms times cities, or paste Indeed search URLs. $3 per 1,000 jobs, no login, no proxy setup.

Pricing

$0.50 / 1,000 job returneds

Rating

0.0

(0)

Developer

DataSignals Lab

DataSignals Lab

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Indeed Jobs Scraper: newest listings with salary, $0.50 per 1,000

Get the newest Indeed job listings for any search as clean JSON: title, company, location, salary range, job type, employer rating and posting date. Give it search terms and cities, or paste Indeed search URLs with your filters. 16 Indeed country sites, residential proxy built in and included in the price, no login and no API key.

Read this first. Indeed only serves the first result page of a search to visitors who are not logged in. So each search returns about 15 jobs (25 to 50 on indeed.com), not the full result count. This Actor is built for monitoring: narrow searches, newest first, on a schedule.

Run it with the default input to see it work. It returns the newest registered nurse jobs in Austin, TX, one page.

What you get

One row per job:

fieldmeaning
job_idIndeed's job key, stable across runs, use it to detect new jobs
title, companyjob title and employer
company_rating, company_review_countemployer rating on Indeed, 1 to 5, and the number of reviews
location, city, postal_codewhere the job is
remotetrue when Indeed marks the job as remote
job_typesfull-time, part-time and similar, as Indeed labels them
date_posted, posted_relativepublication date in UTC and the age text Indeed shows
salary, salary_min, salary_max, salary_period, salary_currencysalary text and the parsed range, when the listing shows one
snippetthe teaser text from the result list
is_sponsored, urgently_hiring, easy_applylisting flags
urllink to the listing
country, search_urlthe site and the search the job came from

Example row:

{
"job_id": "671e2cfec1349ac1",
"title": "RN Operating Room II - Bloomfield Surgery Center",
"company": "SCA Health",
"company_rating": 2.8,
"company_review_count": 443,
"location": "Bloomfield, CT 06002",
"city": "Bloomfield",
"postal_code": "06002",
"remote": false,
"job_types": null,
"date_posted": "2026-10-02T05:00:00Z",
"posted_relative": "Just posted",
"salary": "$35 - $54 an hour",
"salary_min": 35,
"salary_max": 54,
"salary_period": "hour",
"salary_currency": "USD",
"snippet": "Successful completion of Basic Life Support (BLS) within 90 of employment or documentation of current BLS certification.",
"is_sponsored": false,
"urgently_hiring": false,
"easy_apply": true,
"url": "https://www.indeed.com/viewjob?jk=671e2cfec1349ac1",
"country": "us",
"search_url": "https://www.indeed.com/jobs?q=registered+nurse&sort=date"
}

How to scrape Indeed jobs with this Actor

  1. Open the Actor in the Apify Console and click Try for free. The form is prefilled with one search term, one city and the US site.
  2. Type your search terms and cities, one per line. Each term is searched in each city, so 3 terms and 10 cities are 30 searches. Pick the country site.
  3. For filters this form does not have, such as radius or remote only, set them on Indeed in the browser and paste the result URL into startUrls.
  4. Set postedWithinDays and maxJobs and click Start. Export the dataset from the Storage tab.
  5. From code, call POST /v2/acts/datasignalslab~indeed-jobs-scraper/run-sync-get-dataset-items on the Apify API with the same input.

Input

fieldwhat it does
queriessearch terms, one per line
locationscities or regions, one per line. Each term is searched in each location. Empty means the whole country
countrythe Indeed site: us, uk, ca, au, ie, in, sg, de, nl, fr, be, at, ch, es, it, se. Default us
startUrlsIndeed search URLs pasted from the browser, in addition to the search terms. Filters in the URL are kept, only the first page is returned
sortdate (default, newest first) or relevance. Pasted URLs keep their own sorting
postedWithinDays"1", "3", "7" or "14" to keep only recent jobs, default "any"
skipSponsoreddrop sponsored listings. Read the note under Limits before you use it
maxJobshard stop across the run, also your budget cap. 0 means no limit

Three roles in four German cities is twelve searches and up to 180 jobs:

{ "queries": ["data engineer", "python developer", "devops engineer"], "locations": ["Berlin", "Hamburg", "Munich", "Cologne"], "country": "de", "postedWithinDays": "3" }

Pricing

Pay per job returned: $0.50 per 1,000 jobs, charged only for rows that land in the dataset. That is $0.0005 per job, residential proxy included. No start fee, no charge for compute. Searches that fail cost nothing. Apify's free monthly credit covers thousands of jobs.

Example: 20 search terms in 25 US cities is 500 searches of one page each. At 25 to 50 jobs per page on indeed.com that is 12,500 to 25,000 rows, so $6.25 to $12.50 for a full sweep. That is how you cover a country with one page per search. A daily schedule with postedWithinDays set to "1" costs a fraction, because only new postings come back.

More from DataSignals Lab

This Actor is one of the pay-per-result data Actors of DataSignals Lab: job listings per ATS platform and job board, app and company reviews, YouTube comments and transcripts, website contacts and tech stacks. Every Actor returns the same clean JSON style and charges only for rows that land in the dataset, so you can combine feeds without remapping fields. All Actors and prices are listed on datasignalslab.com.

Use cases

  • Recruiters: new openings for a role in a set of cities every morning, with the employer rating.
  • Sales teams: fresh job posts as a buying signal, urgently_hiring marks employers who struggle to fill a role.
  • Salary researchers: parsed salary_min and salary_max per role, city and period.
  • Job alert products and niche job boards: a daily feed per city, de-duplicated on job_id.
  • AI agents: answer "who started hiring nurses in Austin this week" from live data.

Other boards: LinkedIn Jobs Scraper, Stepstone Jobs Scraper. Career sites: Job Search API.

Indeed jobs API alternative: how it compares

  • Indeed has no public jobs API. Scrapers that page through hundreds of results run into Indeed's blocks, which shows up as timeouts and crawls that take hours. This Actor asks for one page per search, which Indeed serves, and gets breadth from many small searches.
  • Residential proxy is included. No proxy groups to configure, no proxy bill next to the Actor fee.
  • A blocked search is retried with fresh proxy sessions, then skipped and logged. The run continues.
  • No full job description, see Limits. LinkedIn Jobs Scraper and Stepstone Jobs Scraper offer it as an option.

Limits

  • First result page per search only. Indeed blocks further pages for visitors who are not logged in.
  • Result list data only. The full description, benefits block and external apply link are not included.
  • Salary is filled only when the listing shows one. Indeed's own estimates are not included.
  • No radius or remote filter in the form. Set them on Indeed in the browser and paste the URL into startUrls.
  • Indeed decides per request how many listings are sponsored, in our tests from none to all 15 for the same search. Sponsored listings are real jobs, flagged with is_sponsored. skipSponsored removes them, which can leave a search with few rows or none.
  • The same search can return different jobs on two runs. Repeated runs collect more of the result set.
  • To build a history, run on a schedule and de-duplicate on job_id.

FAQ

The Actor reads the public result page Indeed shows to any visitor, without logging in and without personal data. Whether you may use the data depends on your jurisdiction and your use.

Do I need an Indeed account, API key or proxy?

No. There is no login and no cookie to paste. The residential proxy is built in.

How often does the Indeed Jobs Scraper update?

Every run reads Indeed live. Keep sort on date and set postedWithinDays to "1" for the postings of the last day.

Can I schedule it?

Yes. Create a schedule in the Apify Console, for example every two hours, with postedWithinDays set to "1". De-duplicate on job_id.

Can an AI agent or MCP client call the Indeed Jobs Scraper?

Yes. Through the Apify MCP server any MCP client, for example Claude Desktop or Cursor, can call this Actor as a tool and read the dataset.

How much do 10,000 Indeed jobs cost?

$5.00. No start fee, no proxy fee. On indeed.com that is roughly 200 to 400 searches.

What happens when Indeed blocks a request?

The search is retried three times with a fresh browser fingerprint and proxy session, in up to three rounds with a pause in between. If it still fails it is skipped and logged, and nothing is charged.

Integrations

Works with the Apify API and SDKs, schedules, webhooks and the Apify MCP server, so Claude, ChatGPT and other agents can call it as a tool. Push the dataset into Google Sheets, or connect it through Make, Zapier or n8n. Export to JSON, CSV or Excel.

Support

Issues tab on this page, or support@datasignalslab.com. Response within one working day. Built and maintained by DataSignals Lab.

Changelog

  • 2026-10: Price cut from $3 to $0.50 per 1,000 jobs. Blocked searches are retried in up to three rounds. README restructured with guide, cost example, comparison, limits and FAQ.
  • 2026-10-03: First release. One page per search, 16 country sites, parsed salary.