Job Listings Scraper for ZipRecruiter avatar

Job Listings Scraper for ZipRecruiter

Pricing

from $4.00 / 1,000 jobs

Go to Apify Store
Job Listings Scraper for ZipRecruiter

Job Listings Scraper for ZipRecruiter

Scrape job listings from ZipRecruiter by keyword and location: title, company, salary, description, and more. Independent tool, not affiliated with or endorsed by ZipRecruiter, Inc. All trademarks are property of their respective owners.

Pricing

from $4.00 / 1,000 jobs

Rating

0.0

(0)

Developer

FalconScrape

FalconScrape

Maintained by Community

Actor stats

1

Bookmarked

153

Total users

3

Monthly active users

4 days ago

Last modified

Share

🚀 ZipRecruiter Jobs Scraper: Job Listings, Salaries and Full Descriptions

Export ZipRecruiter job search results as clean JSON, CSV or Excel. The Job Listings Scraper for ZipRecruiter takes a keyword and a location and returns each job's title, company, location, salary range, job URL and ID, with an option to add the full description, employment type, industry, posting and expiry dates, and the O*NET occupational category. Use it for ZipRecruiter job search at scale, salary data research, or as a simple alternative to a ZipRecruiter API.

🎯 Use Cases

  • ZipRecruiter remote jobs and local job search: pull every listing for "Remote" or any US city into one spreadsheet instead of paging through the site.
  • Companies hiring right now: see which employers are posting for a role in a region, and use the list as recruitment leads for staffing and HR outreach.
  • Salary data research: compare ZipRecruiter salary ranges by role and city, and tell employer-stated pay apart from ZipRecruiter estimates.
  • Job market data: track how many openings a skill or title has over time, and which industries and job types are hiring.
  • Job aggregator and job board feeds: feed fresh ZipRecruiter jobs, with full descriptions, into your own job board or matching app.

✨ Features

  • Job data from search results: title, company, location, salary range, the direct job URL and the job ID.
  • Estimated vs employer pay: isEstimatedSalary tells you whether the range came from the employer or is a ZipRecruiter estimate.
  • Optional full job details: turn on Scrape full job details to add the complete description, employment type, industry, posting date, expiry date, O*NET occupational category, company website and logo, structured city/region/country and a numeric base salary.
  • Pagination: 20 jobs per page, up to 100 pages per search, with a hard Max Jobs cap on top.
  • No duplicates: sponsored jobs that ZipRecruiter repeats on later pages are saved and billed once.
  • Fair billing: you pay per saved job, the detail event fires only when a job was actually enriched, and the run stops cleanly at your max charge.
  • Clear run status: every run ends with "Saved N jobs." plus a note when it stopped at your max charge or near the timeout.

🛠️ How It Works

  1. Enter a search keyword and a location, e.g. "software engineer" in "San Francisco, CA", or "nurse" in "Remote".
  2. Choose the depth: set Max Pages and Max Jobs, and leave Scrape full job details off for a fast, cheap listing sweep, or turn it on when you need descriptions.
  3. Run the scraper and download the jobs as JSON, CSV or Excel, or pull them through the Apify API.

⚙️ Input

FieldWhat it does
Search KeywordJob title or keyword, e.g. "software engineer", "data analyst". Required.
LocationCity and state, or "Remote", e.g. "San Francisco, CA". Required.
Max PagesSearch result pages to read, 20 jobs each (1–100). Default 1.
Max JobsHard cap on jobs returned, whatever Max Pages allows. Default 1,000.
Scrape full job detailsOpens each job page for the description and metadata. Default off.
{
"search": "software engineer",
"location": "San Francisco, CA",
"maxPages": 5,
"maxItems": 100,
"scrapeDetails": false
}

💰 Pricing

Pay only for the jobs you get. No monthly rental.

EventPriceWhat you get
Job$0.004 per job ($4.00 per 1,000)One job with title, company, location, salary range and job URL.
Full job details$0.016 per job ($16.00 per 1,000)Only with Scrape full job details on, and only when the job page was enriched.
Actor start$0.00005 per runCharged once when the run starts.

Examples:

  • 1 search page (20 jobs) = $0.08.
  • 100 jobs from search results = $0.40.
  • 100 jobs with full details = 100 × ($0.004 + $0.016) = $2.00.

If a job page has no extra details, the job is still saved with its search-result fields and only the $0.004 job event is charged.

📊 Sample Output Data

A real job with Scrape full job details on (description trimmed):

{
"listingKey": "dYpQjDhjKuPDGd9EDZRiXA",
"jobId": "921839be6c7a79a6",
"title": "Senior Software Engineer",
"company": "Visa",
"location": "Foster City, CA",
"salary": "$123K/yr",
"isEstimatedSalary": false,
"jobUrl": "https://www.ziprecruiter.com/c/Visa/Job/Senior-Software-Engineer/-in-Foster-City,CA?jid=921839be6c7a79a6",
"searchQuery": "software engineer",
"searchLocation": "San Francisco, CA",
"description": "About Us\n Visa is a world leader in payments technology, facilitating transactions between consumers, merchants, financial institutions…",
"employmentType": "FULL_TIME",
"industry": "Technology",
"datePosted": "2026-10-15T00:54:00Z",
"validThrough": "2026-11-20",
"occupationalCategory": "15-1132.00: Software Developers, Applications",
"companyUrl": "http://www.visa.com",
"companyLogo": "https://www.ziprecruiter.com/svc/fotomat/public-nosensitive-ziprecruiter-logos/company/9af696db.png",
"city": "Foster City",
"region": "CA",
"country": "US",
"baseSalary": 123000
}

With details off, each job has only the first ten fields (listingKey to searchLocation). salary is the range as shown on the search card (e.g. "$145K - $192K/yr" or "$75 - $150/hr"), while baseSalary is the employer's base pay as a number from the job page. occupationalCategory is the O*NET code and title. searchQuery and searchLocation echo your input, so you can merge runs for several searches into one table.

🔁 Schedule and Integrate

For job market tracking or a job board feed, run the same search once a day: each run is a dated snapshot of who is hiring and at what pay. Set it up in Apify Schedules, and use jobId to spot new postings between runs. Send the results to Google Sheets, Zapier, Make, n8n or a webhook with Apify integrations, so new jobs land where your team already works.

🤖 Use with AI Agents (MCP)

This Actor works as a tool in Claude, ChatGPT, Cursor and other MCP clients through the Apify MCP server (https://mcp.apify.com). An agent can call it with:

{ "search": "data analyst", "location": "Remote", "maxItems": 20 }

❓ FAQ

Does ZipRecruiter have an official API? ZipRecruiter's APIs are aimed at employers, applicant tracking systems and job-distribution partners, and need a partner agreement. There is no open public API for searching its job listings. This Actor needs no key or account and returns the public data a job seeker sees: titles, companies, locations, salary ranges and, optionally, full descriptions.

Do I need a ZipRecruiter account? No. The Actor reads public search results and job pages only.

How do I get ZipRecruiter salary data for a role? Search the role and city, then compare the salary field across jobs. Filter on isEstimatedSalary if you want only employer-stated ranges, or turn on full details for the numeric baseSalary.

Why is the salary or a detail field empty? Not every job shows pay, so salary is null on those (about 3–6 of every 20 jobs in our runs). Detail fields such as companyUrl, companyLogo or industry are null when the employer didn't provide them.

How many jobs can I get per search? Up to 100 pages of 20 jobs, so about 2,000 per keyword and location, minus repeated sponsored jobs. For more, split the search by city or by related keywords. With full details on, each job adds a page load, so raise the run timeout for large runs; the Actor stops before the timeout and says so in its status.

Which countries does it cover? US job listings on ZipRecruiter.com, searchable by any US city, state or "Remote".

What are alternatives to ZipRecruiter for job data? Indeed, LinkedIn Jobs and Google Jobs cover overlapping US listings; the related scrapers below export them in a similar format.

⚖️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by ZipRecruiter, Inc. or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.