πŸš€ Indeed jobs scraper [PPR]

πŸš€ Indeed jobs scraper [PPR]

by borderline

Tired of manually checking Indeed for job postings? I built this scraper because I needed a better way to gather job market data without getting block...

157,347 runs
2,925 users
Try This Actor

Opens on Apify.com

About πŸš€ Indeed jobs scraper [PPR]

Tired of manually checking Indeed for job postings? I built this scraper because I needed a better way to gather job market data without getting blocked or wasting time. This is a pay-per-result Indeed Jobs Scraper that just works. You tell it what to search forβ€”by title, location, salary, or companyβ€”and it quietly fetches the listings for you. It pulls all the important details: job title, company, location, salary estimates, job descriptions, and posting dates. The real win is its reliability; it handles the technical stuff to avoid detection, so you get the data you need without headaches. I use it mainly for two things. First, for competitive research and salary benchmarkingβ€”seeing what skills companies are hiring for and what they're paying in different cities. Second, for building job alert dashboards or feeding fresh listings into my own applications. The output is clean JSON or CSV, ready to analyze in a spreadsheet or your code. If you're recruiting, doing market research, or just tired of copy-pasting from job boards, give this a try. The first few results are free, so you can test it with your specific search and see if it fits your workflow.

What does this actor do?

πŸš€ Indeed jobs scraper [PPR] is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.

Key Features

  • Cloud-based execution - no local setup required
  • Scalable infrastructure for large-scale operations
  • API access for integration with your applications
  • Built-in proxy rotation and anti-blocking measures
  • Scheduled runs and webhooks for automation

How to Use

  1. Click "Try This Actor" to open it on Apify
  2. Create a free Apify account if you don't have one
  3. Configure the input parameters as needed
  4. Run the actor and download your results

Documentation

πŸ“„ 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: 1. πŸš€ Job Essentials 2. 🏒 Company Info 3. πŸ“ Location & Geodata 4. πŸ’° Compensation & Benefits 5. πŸ“ƒ Description & Requirements 6. πŸ“ Application & Hiring Details 7. 🌐 Language & Locale 8. πŸ”Ž 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, "ru", "sa", "sg", "za", "kr", "es", "se", "ch", "tw", "tr", "ua", "ae", "uk", "us", "ve" ,"vn" | Yes | location | Search location. | "San Francisco, CA" | - | No | | radius | Search radius in miles. | "10" | "5", "10", "15", "25", "50", "100" | No | | jobType | Type of job (e.g., fulltime, parttime). | "fulltime" | "fulltime", "parttime", "contract", "internship", "temporary", "commission" | No | | level | Experience level (e.g., entry_level, senior_level). | "entry_level" | "entry_level", "mid_level", "senior_level" | 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 | | postedBy | Select 'employer' for direct company postings or 'staffing_agency' for agency listings. Leave empty for both. | "employer" | "employer", "staffing_agency" | No | | maxRows | Maximum number of jobs to scrape. | 100 | - | No | #### Input Example (URL-based): json { "urls": [ "https://indeed.com/jobs?q=developer", "https://indeed.com/cmp/Google/jobs" ], "maxRowsPerUrl": 50 } #### Input Example (Traditional parameters & filters): json { "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: 1. Sign up on Apify. 2. Add the scraper to your Apify account. 3. Configure your input JSON. 4. Click "Start" to begin scraping. --- ### 3️⃣ Output : Jump directly to the fields you need: 1. πŸš€ Job Essentials 2. 🏒 Company Info 3. πŸ“ Location & Geodata 4. πŸ’° Compensation & Benefits 5. πŸ“ƒ Description & Requirements 6. πŸ“ Application & Hiring Details 7. 🌐 Language & Locale 8. πŸ”Ž Scraping Metadata ### πŸ›  Sample Output Data: json { "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.: json { "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: json { "year": 1924 } - companyBriefDescription Shorter summary of the company - companyLinks Social media links, official site, custom links, e.g.: json { "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.): json { "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: json { "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 with label + requirementSeverity: json [ { "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: json { "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: json { "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.

Common Use Cases

Market Research

Gather competitive intelligence and market data

Lead Generation

Extract contact information for sales outreach

Price Monitoring

Track competitor pricing and product changes

Content Aggregation

Collect and organize content from multiple sources

Ready to Get Started?

Try πŸš€ Indeed jobs scraper [PPR] now on Apify. Free tier available with no credit card required.

Start Free Trial

Actor Information

Developer
borderline
Pricing
Paid
Total Runs
157,347
Active Users
2,925
Apify Platform

Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.

Learn more about Apify

Need Professional Help?

Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.

Find a Specialist

Trusted by millions | Money-back guarantee | 24/7 Support