Indeed Job Scraper avatar

Indeed Job Scraper

Pricing

from $2.80 / 1,000 results

Go to Apify Store
Indeed Job Scraper

Indeed Job Scraper

Scrape Indeed jobs from 65 countries with no login or cookies. Get title, company, salary, benefits, skills, apply link and description from search links or keywords. Bulk input, date filters, auto proxy switching. Export JSON, CSV or Excel for recruiting and market research.

Pricing

from $2.80 / 1,000 results

Rating

0.0

(0)

Developer

Data Minds

Data Minds

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 hours ago

Last modified

Categories

Share

Indeed Job Scraper is an Apify Actor and Indeed job scraper that extracts job listings from 62 Indeed country sites: title, company, salary, workplace type, benefits, skills, apply link and full description. Paste Indeed search links or type job titles, add filters, and export JSON, CSV or Excel. From $0.0028 per job ($2.80 per 1,000) on the Gold plan; $0.004 on the Free plan. ๐Ÿš€ Try it free

What can Indeed Job Scraper do?

  • ๐Ÿ”Ž Scrape Indeed jobs in bulk - add many search links, job titles and locations in one run, with duplicates removed.
  • ๐ŸŒ Cover 62 countries - pick the Indeed country site for phrases; links keep their own country.
  • ๐Ÿ’ฐ Extract Indeed salary data - listed pay plus yearly and hourly equivalents, and a pay range read from the posting text when none is listed.
  • ๐Ÿ  Filter by workplace type - keep remote, hybrid or on-site jobs, plus job type, seniority and apply method.
  • ๐Ÿข Add company data - size, revenue, industry, website and logo when Indeed shows them.
  • ๐Ÿ“ Get the full job description - as plain text, HTML or both.
  • ๐Ÿ• Find fresh postings - limit results to the last N days or hours and sort newest first.
  • ๐Ÿ”Œ Export and automate - JSON, CSV, Excel, API, schedules and webhooks.

What data can I extract from Indeed?

FieldDescription
๐Ÿท title, normalizedTitle, idJob title, normalized title and job ID.
๐Ÿข companyName, companyDetailsEmployer name and profile: industry, employee range, revenue, CEO, website, logo, social links, claimed flag.
๐Ÿ“ formattedLocation, location, jobLocationCity, jobLocationStatePlace text and an object with city, state, country, postal code, coordinates and address.
๐Ÿ’ต salary, salaryText, salaryAnnualMin, salaryAnnualMax, salaryHourlyMin, salaryHourlyMaxPay range, readable pay text, and yearly and hourly equivalents.
๐Ÿงพ salarySource, salaryFlag, descriptionSalary, payTypesWhere the pay came from, a wide-range flag, pay found in the text, and pay types such as bonus or tips.
๐Ÿ  workplaceType, workplaceSourceRemote, hybrid or on-site, and where that was read from.
๐Ÿ•’ jobTypes, workSchedule, shifts, seniorityFull-time, part-time and similar types, schedule, shifts and level.
๐ŸŽ“ experience, education, skills, certifications, requirementsRequirements and skills tagged on the job.
๐ŸŽ benefits, socialInsurance, attributes, occupationsBenefits offered, insurance benefits, all job tags and occupations.
๐Ÿ”— jobUrl, originalApplyUrl, viewJobLink, companyOverviewLink, applyType, jobSourceNameJob link, apply link, relative link, company page, apply method and source name.
๐Ÿ“„ jobDescription, jobDescriptionHTMLFull description as text and as HTML.
๐Ÿ“… postedAt, publishedAt, pubDate, ageHours, expirationDate, expiredPosting dates, age in hours and expiry.
๐Ÿ”ฅ urgentlyHiring, highVolumeHiring, isRepostHiring flags and repost flag.
๐Ÿงญ searchQuery, searchLocation, country, matchedSearches, scrapedAt, language, trackingKeyWhich search found the job, country, language and collection time.

Fields Indeed does not show for a job are empty. Some fields depend on the options you choose, for example company details and description formats.

What can you do with the data from Indeed?

๐ŸŽฏ Salary benchmarking

  1. Add your job titles to urls and your cities to locations.
  2. Turn on requireSalary and set minSalary to compare yearly pay.
  3. Export the salary columns to Excel and compare ranges.

๐Ÿ’ผ Recruiting and competitor hiring tracking

  1. Put competitor names in includeCompanies.
  2. Set postedWithinDays to 7 and sortBy to date.
  3. Schedule the run weekly and review new postings and hiring trends.

๐Ÿ“Š Job market research and skills demand

  1. Search a role in several country values.
  2. Keep outputFields to title, skills, seniority and salaryAnnualMin.
  3. Count skills and levels to study labor market analysis questions.

๐Ÿค– Job data for AI

  1. Leave includeDescriptionText on.
  2. Use workplaceTypes to focus on remote jobs.
  3. Feed the job posting data into your own dataset or model.

How do I use Indeed Job Scraper?

  1. Open Indeed Job Scraper on Apify and click Try for free.
  2. Add Indeed search links or job titles to Indeed links or job searches (urls).
  3. Add locations and choose a country if you typed job titles.
  4. Set Max jobs (count) and any filters such as postedWithinDays or workplaceTypes.
  5. Click Start and wait for the run to finish.
  6. Open the Output or Dataset tab and export JSON, CSV or Excel.

How much does it cost to scrape Indeed?

Indeed Job Scraper uses pay-per-event pricing: you pay for each job saved to the dataset, and platform usage is billed in addition.

PlanPrice per jobPer 1,000 jobs
๐Ÿ†“ Free$0.004$4.00
๐Ÿฅ‰ Bronze$0.0036$3.60
๐Ÿฅˆ Silver$0.0032$3.20
๐Ÿฅ‡ Gold, Platinum and Diamond$0.0028$2.80

Each run also pays one start event of $0.00005 per GB of memory, minimum one. The default memory is 1,024 MB (1 GB), so a run pays 1 start event = $0.00005.

Example: 500 jobs on the Free plan cost 500 x $0.004 = $2.00, plus the $0.00005 start event.

Is scraping Indeed free?

Indeed Job Scraper is not free: you pay per saved job at the rates above, and the table shows each plan's price. You can set a maximum spend per run on Apify, and the run stops cleanly when the limit is reached. Set Max jobs to control the size of a test run.

How much does Indeed Job Scraper cost per 1,000 results?

1,000 jobs cost $4.00 on the Free plan, $3.60 on Bronze, $3.20 on Silver, and $2.80 on Gold, Platinum and Diamond. Platform usage is billed in addition, and each run adds a $0.00005 start event. Only jobs saved to the dataset are counted for the per-job price.

Input

Only urls is required. It takes Indeed search links, company page links or plain job phrases, and you can mix them. Links keep their keywords, place, radius, sort, posted-date and job-type settings. Single job pages are not supported; use a search link instead.

FieldTypeRequiredDescriptionDefault / example
urlsarrayYesIndeed search links (any country site), company page links, or job titles.["data analyst"]
queriesarrayNoExtra job titles; each is combined with every location.[]
locationsarrayNoCity, state, region or postal code. Empty searches the whole country.[]
countrystringNoIndeed country site used for phrases (62 countries).us
radiusKmintegerNoDistance around each location, 0 to 2000 km.25
postedWithinDaysintegerNoOnly jobs posted in the last N days.none
postedWithinHoursintegerNoOnly jobs from the last N hours; wins over days.none
sortBystringNorelevance or date.relevance
countintegerNoMaximum jobs to save in total; empty collects everything.prefill 10
deepSearchbooleanNoReach more jobs on big searches.true
minSalary, maxSalarynumberNoYearly pay bounds in local currency; jobs without pay are skipped.none
requireSalarybooleanNoKeep only jobs that show pay.false
jobTypesarrayNoFor example Full-time, Contract, Internship.[]
workplaceTypesarrayNoremote, hybrid, onsite.[]
seniorityarrayNoEntry level, Mid-level, Senior level.[]
applyTypestringNoany, indeed_apply or external.any
titleIncludes, titleExcludesarrayNoKeep or drop jobs by words in the title.[]
descriptionIncludes, descriptionExcludesarrayNoKeep or drop jobs by words in the description.[]
includeCompanies, excludeCompaniesarrayNoKeep or drop jobs by company name.[]
includeDescriptionText, includeDescriptionHtmlbooleanNoInclude the description as text or HTML.true
includeCompanyDetailsbooleanNoInclude company profile data.true
fetchFullDetailsbooleanNoFill fields that are empty in the first result, such as the repost flag.true
salaryFromDescriptionbooleanNoRead a clearly stated pay range from the text when no structured pay exists.true
outputFieldsarrayNoTop-level field names to keep. Empty keeps all.[]
concurrencyintegerNoParallel connections, 1 to 8.4
maxRetriesintegerNoRetries per failed request, 0 to 10.3
timeoutSecintegerNoSeconds to wait for each response, 5 to 300.45
maxScannedintegerNoSafety stop on jobs examined, including filtered-out ones.200000
apiKeystringNoOptional secret value; leave empty unless support gave you one.none
proxyConfigurationobjectNoOptional connection settings.default
{
"urls": [
"https://www.indeed.com/jobs?q=registered+nurse&l=Austin%2C+TX&fromage=7",
"data analyst"
],
"locations": ["Austin, TX"],
"country": "us",
"radiusKm": 25,
"postedWithinDays": 7,
"sortBy": "date",
"count": 10,
"workplaceTypes": ["remote", "hybrid"],
"requireSalary": true,
"includeDescriptionText": true
}

Output

Each job is one row in the Apify Dataset, saved as soon as it is ready. The Output tab has separate tables: overview, salary, company, location, job details, benefits (one row per benefit), description, apply links and search info. Export JSON, CSV, Excel, XML or HTML from the Dataset tab or through the API. Values below are fake examples.

{
"id": "abc123example",
"title": "Data Analyst",
"normalizedTitle": "data analyst",
"companyName": "Example Company",
"formattedLocation": "Austin, TX",
"location": {
"city": "Austin",
"state": "Texas",
"countryName": "United States",
"postalCode": "00000",
"latitude": 30.0,
"longitude": -97.0
},
"salary": { "min": 70000, "max": 90000, "type": "YEAR", "currencyCode": "USD" },
"salaryText": "70,000-90,000 USD per year",
"salaryAnnualMin": 70000,
"salaryAnnualMax": 90000,
"salarySource": "listed",
"workplaceType": "hybrid",
"jobTypes": ["Full-time"],
"seniority": "Mid-level",
"skills": ["SQL", "Excel"],
"benefits": [{ "key": "example1", "label": "Health insurance" }],
"applyType": "external",
"jobUrl": "https://www.indeed.com/viewjob?jk=abc123example",
"originalApplyUrl": "https://example.com/apply",
"companyOverviewLink": "https://www.indeed.com/cmp/example-company",
"companyDetails": {
"name": "Example Company",
"industry": "Information Technology",
"employeeRange": "1,001 to 5,000",
"websiteUrl": "https://example.com"
},
"postedAt": "2026-10-10T08:00:00Z",
"ageHours": 48.0,
"isRepost": false,
"searchQuery": "data analyst",
"searchLocation": "Austin, TX",
"country": "US",
"matchedSearches": ["'data analyst' @ Austin, TX"],
"scrapedAt": "2026-10-12T08:00:00Z"
}

A summary record named SUMMARY is saved in the key-value store with counts such as jobs saved, jobs billed, searches, rows examined, filtered-out jobs, pages, failed pages, notes and duration.

Notes and limitations

  • Fields Indeed does not publish for a job come back empty or as empty lists.
  • Pay is read from the posting text only when salaryFromDescription is on; those rows say salarySource is description.
  • minSalary and maxSalary skip jobs without pay.
  • count limits the total jobs saved across all searches.
  • Single job pages are not accepted as input.
  • Results can differ from what you see in a browser, because location, date and country choices change what Indeed returns.
  • Very large searches may not return every job; narrow the location or phrase to reach more.

FAQ

Indeed Job Scraper collects publicly available job listings that any visitor can see. Legality depends on your country, your use of the data and the site's terms; GDPR and CCPA may apply. This is not legal advice; read Apify's guide to scraping legality and ask a lawyer if unsure.

Do I need an Indeed account, cookies or an API key to scrape Indeed?

No. Indeed Job Scraper needs no Indeed login and no cookies, so you can scrape Indeed without login. The optional access key field is for a value provided by support and can stay empty. You only need an Apify account to run the Actor, start it from the Console and download your results.

How many Indeed jobs can I scrape per run?

Set Max jobs (count) to the number you need, or leave it empty to collect everything the searches return. A safety stop, maxScanned, ends the run after 200,000 jobs examined by default. You can also set a maximum spend per run on Apify to control cost.

Can I export Indeed jobs to CSV or Excel?

Yes. Every run saves a dataset that you can export from the Dataset tab as JSON, CSV, Excel, XML or HTML, so you can export Indeed jobs to CSV or Excel, or open them in Google Sheets. The same data is available through the API, and outputFields lets you keep only the columns you want.

Can I schedule runs, use webhooks or integrations?

Yes. Apify lets you schedule Indeed Job Scraper to run daily or weekly for job monitoring, trigger webhooks when a run finishes, and connect results to tools such as Make, n8n or Zapier. Combine postedWithinDays with a schedule to collect only recent postings and track hiring trends.

Can I use Indeed Job Scraper with the Apify API or an MCP server?

Yes. You can start runs, read the dataset and manage schedules with the Apify API, and connect the Actor to AI tools through an MCP server. The Indeed jobs API alternative works the same way as any Apify Actor; see the Apify API documentation for details.

Why am I getting fewer jobs than expected?

Filters remove jobs before they are saved, and the run log lists how many were filtered out. Check requireSalary, minSalary, workplaceTypes and the title or description filters, widen the postedWithinDays window, and keep deepSearch on. Very large searches may need a narrower location or phrase.

Indeed Job Scraper not working?

First check your input: urls needs at least one Indeed search link or job phrase, and single job pages are not supported. Then read the run log for the message. If the problem continues, open the Issues tab of this Actor with your run link and input, and the maintainers will look into it.

ActorUse it to
๐Ÿ”— Workday Jobs ScraperTurn Workday careers portals into a clean job dataset with titles, companies, locations, salaries, skills and descriptions.
๐Ÿ”— Website Lead IntelligenceTurn company website addresses into scored leads with emails and named decision-makers, for example for employers found in your Indeed data.

Support and disclaimer

Found a bug or need a feature? Open an issue in the Issues tab. For custom solutions, integrations or questions, contact hello.dataminds@gmail.com. Indeed Job Scraper is independent and not affiliated with Indeed; trademarks belong to their owners. It collects publicly available data, and you are responsible for complying with applicable laws and the site's terms.

Last updated: 2026-10-17