๐ Indeed jobs scraper [PPR]
Pricing
$5.00 / 1,000 jobs
๐ Indeed jobs scraper [PPR]
Pay per result - Fast and reliable Indeed Job Scraper! ๐ Extract job listings with company details effortlessly with advanced filters, avoid blocking, and enjoy lightning-speed execution. Build your analytics, automate searches, or benchmark salariesโall with seamless outputs. Try it now for free
Pricing
$5.00 / 1,000 jobs
Rating
4.9
(30)
Developer
borderline
Maintained by CommunityActor stats
230
Bookmarked
13K
Total users
1.9K
Monthly active users
2.6 hours
Issues response
10 hours ago
Last modified
Categories
Share
๐ Indeed Job Scraper | (PPR) Pay per results version
Feel free to open issues to suggest new features or report bugs!
Welcome to the Indeed Job Scraper! ๐ Extract detailed job listing data from Indeed seamlessly and build your own job market analytics, databases, or even automate your job searches. Designed for ease-of-use and power, this tool will supercharge your data needs! ๐
๐ฆ What Can You Extract?
Jump directly to the fields you need:
- ๐ Job Essentials
- ๐ข Company Info
- ๐ Location & Geodata
- ๐ฐ Compensation & Benefits
- ๐ Description & Requirements
- ๐ Application & Hiring Details
- ๐ Language & Locale
- ๐ Scraping Metadata
๐ป How to Use
1๏ธโฃ Input Requirements:
You can now use two different approaches:
Option A: URL-based scraping
| Parameter | Description | Example | Required? |
|---|---|---|---|
urls | Array of search / company URLs | ["https://indeed.com/jobs?q=developer", "https://indeed.com/cmp/Google"] | Yes |
maxRowsPerUrl | Maximum number of results to scrape per URL | 50 | No |
- All parameters of Option B will be omitted if you chose this option.
Option B: Traditional search using parameters & filters (query and country are required unless you provide URLs):
The scraper accepts the following inputs and their respective enum options, indicating if they are required:
| Parameter | Description | Example | Enum Options | Required? |
|---|---|---|---|---|
query | Job title or search keyword. | "data analyst" | - | Yes |
country | Country code. | "us" | "ar", "au", "at", "bh", "be", "br", "ca", "cl", "cn", "co", "cz", "dk", "fi", "fr", "de", "gr", "hk", "hu", "in", "id", "ie", "il", "it", "jp", "kw", "lu", "my", "mx", "ma", "nl", "nz", "no", "om", "pe", "ph", "pl", "pt", "qa", "ro", "sa", "sg", "za", "kr", "es", "se", "ch", "tw", "tr", "ua", "ae", "uk", "us", "ve", "vn", "cr", "ec", "eg", "ng", "pk", "pa", "th", "uy" | Yes |
location | Search location. | "San Francisco, CA" | - | No |
radius | Search radius in miles. | "10" | "0", "5", "10", "15", "25", "35", "50", "100" | No |
jobType | Type of job (e.g., fulltime, parttime). | "fulltime" | "fulltime", "parttime", "contract", "internship", "temporary", "permanent", "seasonal", "freelance" | No |
level | Experience level (e.g., entry_level, senior_level). | "entry_level" | "entry_level", "mid_level", "senior_level" (US only) | No |
sort | Sort results by relevance or date. | "date" | "relevance", "date" | No |
fromDays | Limit to jobs posted within a certain number of days. | "7" | "1", "3", "7", "14" | No |
remote | Filter for remote or hybrid jobs. | "remote" | "remote", "hybrid" | No |
maxRows | Maximum number of jobs to scrape. | 100 | - | No |
enableUniqueJobs | Save only unique jobs (skip duplicates). | false | true, false | No |
includeSimilarJobs | Include "View similar jobs" results. | true | true, false | No |
Input Example (URL-based):
{"urls": ["https://indeed.com/jobs?q=developer","https://indeed.com/cmp/Google/jobs"],"maxRowsPerUrl": 50}
Input Example (Traditional parameters & filters):
{"country": "us","query": "data analyst","location": "New York, NY","maxRows": 50,"radius": "25","jobType": "fulltime","sort": "relevance","fromDays": "7","remote": "remote"}
2๏ธโฃ Run the Scraper:
- Sign up on Apify.
- Add the scraper to your Apify account.
- Configure your input JSON.
- Click "Start" to begin scraping.
3๏ธโฃ Output :
Jump directly to the fields you need:
- ๐ Job Essentials
- ๐ข Company Info
- ๐ Location & Geodata
- ๐ฐ Compensation & Benefits
- ๐ Description & Requirements
- ๐ Application & Hiring Details
- ๐ Language & Locale
- ๐ Scraping Metadata
๐ Sample Output Data:
{"title": "Remote Customer Support Representative, Professional Services","isRemote": true,"jobType": ["Full-time", "Remote"],"companyName": "American Heart Association","companyUrl": "https://www.indeed.com/cmp/American-Heart-Association","companyLogoUrl": "https://d2q79iu7y748jz.cloudfront.net/s/_squarelogo/256x256/2b22f028a31bec649682434b83dd2804","campanyHeaderUrl": "https://d2q79iu7y748jz.cloudfront.net/s/_headerimage/1960x400/1cf333dc972583d2e1c9df18c4f23d5e","rating": {"rating": 3.9,"count": 885,},"emails": ["hr@heart.jobs"],"companyAddresses": ["Dallas, TX"],"companyNumEmployees": "1,001 to 5,000","companyRevenue": "$500M to $1B (USD)","companyIndustry": "ASSOCIATION","companyDescription": "The American Heart Association is a relentless force for a world of longer, healthier lives. Through collaboration ...","companyFounded": {"year": 1924},"companyBriefDescription": "The American Heart Association is the nationโs oldest, largest voluntary organization devoted to ...","companyLinks": {"facebook": "https://www.facebook.com/theahalife","instagram": "https://www.instagram.com/theahalife","twitter": "","customLinks": [{"name": "AHA Careers Site","url": "https://heart.jobs/"}],"corporateWebsite": "http://www.heart.org"},"companyCeo": {"name": "Nancy A. Brown","photoUrl": "https://d2q79iu7y748jz.cloudfront.net/s/_ceophoto/512x512/c79ae9f355378e5e78738e1ac5e7fee7","startDate": null},"location": {"countryCode": "US","country": "United States","city": "Dallas","formattedAddressShort": "Dallas, TX","formattedAddressLong": " Dallas, Texas 75231-4596, US","postalCode": "75231","latitude": 32.814034,"longitude": -96.815,"streetAddress": "7272 Greenville Ave.","fullAddress": "7272 Greenville Ave. Dallas, Texas 75231-4596, US"},"benefits": ["Health insurance", "Paid time off", "Retirement plan"],"occupation": ["Customer Support & Client Services Occupations","Sales, Retail & Customer Support Occupations"],"socialInsurance": ["Health insurance"],"attributes": ["Bilingual","Microsoft Word","Spanish","Wellness program","Microsoft Outlook","Hourly pay"],"requirements": [{"label": "Engineering","requirementSeverity": "REQUIRED"},{"label": "Ability to lift 50 pounds","requirementSeverity": "PREFERRED"},{"label": "Associate's degree","requirementSeverity": "PREFERRED"}],"shiftAndSchedule": ["Monday to Friday"],"workingSystem": ["Flextime"],"descriptionText": "Provide tier I technical support for inbound calls and emails...","descriptionHtml": "<p>Provide tier I technical support for inbound calls and emails</p>","salary": {"salaryText": "$20 - $22 an hour","salaryType": "hourly","salaryMax": 350,"salaryMin": 250,"salarySource": "EXTRACTION","salaryCurrency": "USD"},"age": "Just posted","postedToday": true,"datePublished": "2025-02-24","hiringDemand": {"isUrgentHire": true,"isHighVolumeHiring": false},"organicApplyStarts": 11,"numOfCandidates": 3,"expired": false,"scrapingInfo": {"page": 12, // Page number where the job has been scraped"index": 3 // Job index in page},"source": "American Heart Association","jobUrl": "https://www.indeed.com/viewjob?jk=6ae7e4ae7ac60636","applyUrl": "https://rr.jobsyn.org/9ECBB26665F341FCA3EAB747075CAA9B1554","jobKey": "1e6e49448374145b","language": "en","locale": "en_US"}
๐ Job Essentials
-
title
Example:"Remote Customer Support Representative, Professional Services" -
isRemote
Boolean:true/false -
jobType
Example:["Full-time", "Remote"] -
age
Example:"Just posted","1 day ago", etc. -
postedToday
Boolean:true/false -
datePublished
Example:"2025-02-24"
๐ข Company Info
-
companyName
Example:"American Heart Association" -
companyUrl
Example:"https://www.indeed.com/cmp/American-Heart-Association" -
companyLogoUrl
Direct link to the company's logo -
companyHeaderUrl
Image or banner link shown on the company profile -
rating
Object containing rating info, e.g.:{"rating": 3.9,"count": 885} -
emails
Array of any emails found (e.g.,["hr@heart.jobs"]) -
companyAddresses
E.g.,["Dallas, TX"] -
companyNumEmployees
Example:"1,001 to 5,000" -
companyRevenue
Example:"$500M to $1B (USD)" -
companyIndustry
Example:"ASSOCIATION" -
companyDescription
Full text describing the company -
companyFounded
Object with founding year:{"year": 1924} -
companyBriefDescription
Shorter summary of the company -
companyLinks
Social media links, official site, custom links, e.g.:{"facebook": "https://facebook.com/... ","instagram": "https://instagram.com/... ","twitter": "","customLinks": [{"name": "AHA Careers Site","url": "https://heart.jobs/"}],"corporateWebsite": "http://www.heart.org"} -
companyCeo
Object describing CEO (name, photo, etc.):{"name": "Nancy A. Brown","photoUrl": "https://...","startDate": null}
๐ Location & Geodata
Most of these fields will be under a location object, for instance:
- countryCode (e.g.,
"US") - country (e.g.,
"United States") - city (e.g.,
"Dallas") - postalCode (e.g.,
"75231") - latitude (e.g.,
32.814034) - longitude (e.g.,
-96.815) - streetAddress (e.g.,
"7272 Greenville Ave.") - formattedAddressShort (e.g.,
"Dallas, TX") - formattedAddressLong (e.g.,
"Dallas, Texas 75231-4596, US") - fullAddress (combined street, city, state, postal code, etc.)
๐ฐ Compensation & Benefits
- salary
An object containing detailed pay data:{"salaryText": "$20 - $22 an hour","salaryType": "hourly","salaryMax": 350,"salaryMin": 250,"salarySource": "EXTRACTION","salaryCurrency": "USD"} - benefits
Example:["Health insurance", "Paid time off", "Retirement plan"] - socialInsurance
Example:["Health insurance"]
๐ Description & Requirements
- descriptionText
Plain-text version of the job description - descriptionHtml
HTML-rich version of the job description - occupation
Example:["Customer Support & Client Services Occupations"] - attributes
E.g.,["Bilingual", "Microsoft Word", "Wellness program"] - requirements
Array withlabel+requirementSeverity:[{ "label": "Engineering", "requirementSeverity": "REQUIRED" },{ "label": "Ability to lift 50 pounds", "requirementSeverity": "PREFERRED" }] - shiftAndSchedule
Example:["Monday to Friday"] - workingSystem
Example:["Remote", "On-site", "Hybrid"]
๐ Application & Hiring Details
-
jobUrl
Indeed listing link (e.g.,"https://www.indeed.com/viewjob?jk=... ") -
applyUrl
Direct link for applying to the job (when available) -
hiringDemand
Indicates urgency or volume:{"isUrgentHire": true,"isHighVolumeHiring": false} -
organicApplyStarts
Number of users who initiated an application -
numOfCandidates
Approximate number of applicants -
expired
Boolean indicating if the job is no longer active
๐ Language & Locale
- language (e.g.,
"en") - locale (e.g.,
"en_US")
๐ Scraping Metadata
- jobKey
Unique identifier for the job post (e.g.,"1e6e49448374145b") - source
Where the listing originated (e.g.,"American Heart Association") - scrapingInfo
Object containing:{"page": 12, // Page number of the scraped listing"index": 3 // Position of the job in that page}
๐ค Why Use This Scraper?
- ๐ต๏ธ Market Research: Analyze job trends, salaries, and skills in demand.
- ๐ Analytics: Build custom dashboards for hiring trends.
- ๐ Database Creation: Organize and store job listings for internal use.
- ๐ธ Salary Benchmarking: Compare wages across regions and industries.
- ๐ฉ Job Search Automation: Streamline your job hunting process with tailored searches.
- ๐ Competitive Insights: Track competitor hiring practices.
๐ Output Options:
Once scraping is complete, you can download results in multiple formats:
- JSON
- CSV
- Excel
- XML
- HTML
๐ Key Features
- ๐จ Fast Performance: Handles large datasets efficiently.
- ๐ Flexible Outputs: Multiple formats for seamless integration.
- ๐ Up-to-Date Results: Ensures the freshest job listings.
- โ๏ธ API Integration: Programmatically manage scrapes with the Apify API.
- ๐ Customizable Filters: Tailor searches to your exact needs.
๐ Integration Options
- Zapier & Make: Automate workflows with tools like Google Sheets or Slack.
- Webhooks: Get notified when a scrape is complete.
- Apify API: Manage scrapes, fetch results, and monitor performance with RESTful API endpoints.
๐ฐ Cost and Limitations
- Pricing: Costs depend on the size of your scrape. Start with small batches to estimate.
- Limits: The scraper can typically return over 1,000 results per run but may vary depending on input complexity and Indeedโs restrictions.
๐ Start Scraping Today!
Unleash the power of job data! ๐ฏ Click here to begin.
For detailed documentation and tutorials, visit our Apify Docs.