ZipRecruiter Jobs Scraper avatar

ZipRecruiter Jobs Scraper

Pricing

from $4.10 / 1,000 results

Go to Apify Store
ZipRecruiter Jobs Scraper

ZipRecruiter Jobs Scraper

Scrape ZipRecruiter job listings in the United States and Canada with keyword, location, distance, remote, date, and job type filters. Returns job, company, salary, location, and posting metadata.

Pricing

from $4.10 / 1,000 results

Rating

0.0

(0)

Developer

AgentX

AgentX

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

ZipRecruiter Jobs Scraper - US and Canada Job Listings API With Detail Enrichment

ZipRecruiter Jobs Scraper is a US and Canada job listings API that extracts structured ZipRecruiter postings with keyword, location, distance, remote, posted-date, and job-type filters. It collects ZipRecruiter search links, fetches detail pages when accessible, and returns normalized job records with title, company, location, salary range, currency, pay interval, description, posting date, employment type, remote signal, and source URL. This actor supports United States and Canada because the current ZipRecruiter implementation is optimized for those markets. Use location text such as city, state, province, metro area, or remote-related location strings to narrow the search. Up to 10,000 job records can be requested per run, with pay-per-result pricing and no monthly minimum.

ZipRecruiter Hiring Intelligence Pay Per Result


Why Choose This API

ZipRecruiter Data With Search Filters And Detail Enrichment

Structured job records Get one normalized dataset item per job posting with consistent fields for title, company, location, salary, job description, posting date, and source URL. This makes the output ready for dashboards, databases, CRMs, and AI pipelines.

Platform-specific extraction This actor focuses on ZipRecruiter only. Inputs and documentation are scoped to what the platform implementation supports, avoiding misleading filters that do not affect the upstream request.

Salary and compensation signals When the source exposes salary data, the actor maps salary minimum, maximum, currency, and interval into structured fields. The currency input can normalize salary values for easier cross-market comparison.

Location and remote intelligence Use country and location inputs to target the right market. Output includes the platform location text, and remote signals are mapped when the source data exposes or implies remote work.

Scalable Apify workflow Results are stored in the default dataset and can be exported as JSON, CSV, Excel, XML, RSS, or consumed with the Apify REST API and client SDKs.

Transparent pricing The actor uses a pay-per-result model. You pay a small start event plus a flat result event for each job saved to the dataset.


Quick Start Guide

How to Extract ZipRecruiter Job Data in 3 Steps

Step 1: Define Your Search Parameters

Enter a keyword such as Full Stack Engineer, Warehouse Associate, or Marketing Manager. Choose United States or Canada, add a location, and configure optional filters such as distance, remote-only, posted date, or job type.

Step 2: Configure and Run the Actor

Open Actor Input

Set the parameters, then click Start. For broad market scans, use a general keyword and a country-level location. For precise sourcing, use a role title plus a city or metro area.

Step 3: Download Your Data

Run the actor and export enriched ZipRecruiter results from the Apify dataset. Each result is available in the default dataset and can be pulled by API for downstream automation.


Input Parameters

Required Configuration Fields

ParameterTypeRequiredDescriptionExample
keywordstringYesJob title, skill, company, or search keyword"Full Stack Engineer"
countryselectYesSupported country"United States"
max_resultsintegerYesMaximum job records to extract, from 10 to 10,000100
remote_onlybooleanNoRestrict results to remote listingsfalse
distanceintegerNoSearch radius in miles around the location50
locationstringNoCity, state, province, or region"Los Angeles, CA"
posted_sincedatepickerNoRelative or absolute posting date filter"30 days"
job_typeselectNoEmployment type filter"fulltime"
currencyselectNoTarget currency for salary normalization"USD"

Example Input Configuration

{
"keyword": "Full Stack Engineer",
"country": "United States",
"location": "Los Angeles, CA",
"max_results": 100,
"remote_only": false,
"distance": 50,
"posted_since": "30 days",
"job_type": "fulltime",
"currency": "USD"
}

Date Format Options

When posted_since is available for this actor, it accepts relative values such as 1 day, 7 days, 2 weeks, 3 months, or an absolute date such as 2026-05-01. If the parameter is not present in the input schema, the platform implementation does not expose a reliable date filter and the actor relies on source ordering or source-provided posted-date fields.

Location Formatting Best Practices

  • Use city and region names when you need local results, such as New York, Bengaluru, or Toronto.
  • Use broader country-level searches when you want maximum coverage for a keyword.
  • For remote searches, use the dedicated remote_only parameter only when the actor exposes it. Otherwise, remote status is returned as an output signal when available.
  • Keep keywords specific enough to avoid unrelated aggregator matches, but broad enough to return enough results for analysis.

Supported Countries for Job Scraping

This actor supports United States and Canada because the current ZipRecruiter implementation is optimized for those markets. Use location text such as city, state, province, metro area, or remote-related location strings to narrow the search.

Country-Aware Platform Routing

This is a single-platform actor. It does not route requests to other job boards. If you need automatic routing across multiple sources, use All Jobs Scraper.


Output Data Schema

Complete Job Listing Data Structure

Each extracted ZipRecruiter job is stored as one dataset item. Field availability depends on what the source listing exposes, but the actor maps source data into a consistent job schema.

Job Metadata Fields

FieldDescription
platformSource platform label, usually ZipRecruiter
platform_urlZipRecruiter job URL
titleJob position title
company_nameHiring company name
company_urlCompany URL when exposed
locationJob location text
posted_dateDate posted
descriptionFull job description when detail page data is accessible
job_typeEmployment type
is_remoteRemote-work signal
salary_minimumMinimum salary when available
salary_maximumMaximum salary when available
salary_currencySalary currency
salary_periodSalary interval such as yearly or hourly

Employment Details

Employment fields can include job_type, is_remote, experience, experience_range, job_level, job_function, requirements, skills, and screening_questions when the platform exposes those values. Empty fields usually mean the source listing did not publish that value.

Salary Information

Salary fields include salary_minimum, salary_maximum, salary_currency, and salary_period. Salary extraction is source-dependent. Many job boards do not require employers to publish salary ranges, so salary fields can be empty for otherwise valid jobs.

Company Data

Company fields can include company_name, company_url, company_logo, company_website, company_industry, company_rating, review_count, and related metadata when the platform returns those values. The actor avoids fabricating unavailable company data.

Example JSON Output

{
"platform": "ZipRecruiter",
"platform_url": "https://www.ziprecruiter.com/c/example/Job/example",
"title": "Full Stack Engineer",
"company_name": "Example Software",
"location": "Los Angeles, CA",
"posted_date": "2026-05-20",
"description": "Build web applications and APIs.",
"job_type": "FULL_TIME",
"is_remote": false,
"salary_minimum": 120000,
"salary_maximum": 150000,
"salary_currency": "USD"
}

Export Formats

  • JSON - Full structured records with nested objects and arrays preserved.
  • CSV - Spreadsheet-compatible exports for BI and reporting workflows.
  • Excel - Download-ready tabular files for analysts and recruiters.
  • XML / RSS - Feed-style exports where supported by Apify datasets.
  • API Access - Pull items programmatically via the Apify REST API or official SDKs.

Integration Examples

Actor ID for Platform Integration

agentx/ziprecruiter-jobs-scraper

Make.com Setup

  1. Open Make and add the Apify Run an Actor module.
  2. Set Actor to agentx/ziprecruiter-jobs-scraper.
  3. Paste your input JSON into the module.
  4. Enable synchronous run when you want the workflow to wait for completion.
  5. Add Get dataset items and use the returned defaultDatasetId.

N8N.io Setup

  1. Add the Apify node.
  2. Choose Run an Actor and get dataset.
  3. Use Actor ID agentx/ziprecruiter-jobs-scraper.
  4. Map your input fields from previous workflow steps.
  5. Send the resulting dataset items to your CRM, database, spreadsheet, or AI pipeline.

Python Integration Example

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run_input = {
"keyword": "Full Stack Engineer",
"country": "United States",
"location": "Los Angeles, CA",
"max_results": 100,
"remote_only": false,
"distance": 50,
"posted_since": "30 days",
"job_type": "fulltime",
"currency": "USD"
}
run = client.actor("agentx/ziprecruiter-jobs-scraper").call(run_input=run_input)
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
print(f"Fetched {len(items)} jobs")

JavaScript/Node.js Integration

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const input = {
"keyword": "Full Stack Engineer",
"country": "United States",
"location": "Los Angeles, CA",
"max_results": 100,
"remote_only": false,
"distance": 50,
"posted_since": "30 days",
"job_type": "fulltime",
"currency": "USD"
};
const run = await client.actor('agentx/ziprecruiter-jobs-scraper').call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Fetched ${items.length} jobs`);

JSON-LD Metadata

{
"@context": "https://schema.org",
"@graph": [
{
"@type": "SoftwareApplication",
"name": "ZipRecruiter Jobs Scraper",
"applicationCategory": "BusinessApplication",
"operatingSystem": "Cloud API",
"url": "https://apify.com/agentx/ziprecruiter-jobs-scraper?fpr=aiagentapi",
"description": "Extract structured ZipRecruiter job listings for recruiting analytics, market research, salary benchmarking, and job board automation.",
"offers": {
"@type": "Offer",
"price": "0.0041",
"priceCurrency": "USD",
"description": "Pay per job result saved to the Apify dataset."
},
"featureList": [
"Keyword-based job search",
"Country and location targeting",
"Structured job listing output",
"Salary and company metadata when available",
"JSON, CSV, Excel, XML, and API exports"
],
"provider": {
"@type": "Organization",
"name": "AgentX",
"url": "https://apify.com/agentx?fpr=aiagentapi"
}
},
{
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "How do I scrape ZipRecruiter jobs?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Configure keyword, country, max_results, and optional supported filters, then run the actor. Results are saved to the Apify dataset and can be exported or pulled by API."
}
},
{
"@type": "Question",
"name": "What data fields does this actor return?",
"acceptedAnswer": {
"@type": "Answer",
"text": "The actor returns structured job records including title, company, location, job URL, description, salary fields, posting date, and platform-specific metadata when available."
}
},
{
"@type": "Question",
"name": "How much does this actor cost?",
"acceptedAnswer": {
"@type": "Answer",
"text": "The actor charges $0.01 per run plus $0.0041 per saved job result. 1,000 jobs cost about $4.11 including the start event."
}
}
]
}
]
}

Pricing & Cost Calculator

Transparent Pay-Per-Use Model

Event TypePriceDescription
Actor Start$0.01One-time charge per Actor run
result$0.0041Charged for each ZipRecruiter job posting saved to the default dataset

Cost Examples

Small Scale (100 jobs):

  • Job Data: 100 × $0.0041 = $0.41
  • Actor Start: $0.01
  • Total: $0.42

Medium Scale (1,000 jobs):

  • Job Data: 1,000 × $0.0041 = $4.10
  • Actor Start: $0.01
  • Total: $4.11

Large Scale (10,000 jobs):

  • Job Data: 10,000 × $0.0041 = $41.00
  • Actor Start: $0.01
  • Total: $41.01

Competitive Pricing Comparison

FeatureZipRecruiter Jobs ScraperManual CollectionGeneric Browser ScraperEnterprise Data Vendor
Cost modelPay per resultLabor hoursCompute + maintenanceContract pricing
API accessYesNoCustom work requiredUsually yes
Output schemaStructured job dataInconsistentCustom parsing requiredVaries
MaintenanceManaged actorManualUser-ownedVendor-owned
Best forFast job data extractionSmall one-off checksCustom internal crawlersLarge procurement workflows

Use Cases & Applications

Recruitment & Talent Acquisition

Hiring pipeline monitoring Track new jobs by title, company, location, and posting date to understand employer demand and recruitment velocity.

Candidate matching workflows Feed structured job descriptions, requirements, skills, and locations into candidate matching systems or internal search tools.

Competitor hiring analysis Monitor which companies are expanding, what roles they hire for, and how job requirements shift across locations.

Market Research & Business Intelligence

Labor market dashboards Build dashboards that show role demand, location density, remote-work trends, salary availability, and company-level hiring patterns.

Salary benchmarking Analyze published salary ranges where available and normalize values into the selected currency.

Regional market entry analysis Compare job volume and role mix across countries, cities, or metro areas before hiring or expansion decisions.

AI & Machine Learning Applications

Training data for job matching Use job descriptions and requirements as training or evaluation data for semantic search, matching, classification, and recommendation systems.

Skill extraction and taxonomy mapping Map job descriptions into standardized skills, roles, departments, and seniority levels for workforce intelligence.

Automated alerts Trigger notifications when new jobs matching a keyword, company, salary, or location appear in the dataset.

Workforce Planning & HR Analytics

Skills gap analysis Identify commonly requested skills and qualifications in job postings to guide training plans and workforce planning.

Hiring trend reports Build weekly or monthly reports that summarize job volume, salary ranges, and demand by role or location.

Talent market benchmarking Compare hiring signals across companies and geographies for recruiting strategy and compensation planning.

Career Services & Education

Career guidance Use live job market data to inform career advice, resume coaching, and learning path recommendations.

Curriculum alignment Analyze job requirements and skills to keep courses aligned with employer demand.

Student job feeds Power filtered job feeds for students, alumni, or workforce development programs.


FAQ

How do I scrape ZipRecruiter jobs with this actor?

Open the actor input page, set keyword, country, and max_results, add optional supported filters, and run the actor. Results are saved in the default Apify dataset.

What is included in each ZipRecruiter job record?

Typical records include title, company, location, platform URL, description, posting date, salary fields, remote signal, job type, and platform-specific metadata when available.

How many jobs can I extract per run?

The input schema allows up to 10,000 requested results. Actual output depends on source availability, keyword breadth, selected location, pagination, and source-side blocking behavior.

Which countries are supported?

This actor supports United States and Canada because the current ZipRecruiter implementation is optimized for those markets. Use location text such as city, state, province, metro area, or remote-related location strings to narrow the search.

How fresh is the data?

The actor fetches live source results at run time. When a date filter is supported, use posted_since to target recent listings. Otherwise, use source-provided posted-date output fields for freshness analysis.

Why are some salary fields empty?

Salary fields are populated only when the source listing publishes salary information. Many employers do not include salary ranges in every job post.

Why are some company fields empty?

Company metadata depends on what the source returns for a listing. The actor maps available values and leaves unavailable fields empty instead of fabricating data.

Can I integrate this with Make, N8N, Zapier, or my own backend?

Yes. Use the Apify API, official Python and JavaScript clients, Make's Apify modules, N8N's Apify node, or dataset export URLs.

What if no jobs are found?

Try a broader keyword, remove narrow location filters, increase max_results, or use a country-level search. Some platforms may have limited inventory for niche keywords.

Is this compatible with AI frameworks?

Yes. The JSON output can be used with LangChain, vector databases, custom ranking systems, enrichment workflows, and internal recruitment agents.


SEO Keywords & Search Terms

Primary Keywords

ZipRecruiter scraper API, ZipRecruiter jobs scraper, ZipRecruiter job listings API, US job data API, Canada job data API

Long-Tail Keywords

how to scrape ZipRecruiter jobs, extract ZipRecruiter job descriptions, ZipRecruiter salary data scraper, ZipRecruiter remote jobs API, North America hiring intelligence dataset

Industry Terms

job scraping API, job board scraper, job data extraction, hiring intelligence API, recruitment analytics, labor market data, salary benchmarking, job listing dataset, workforce analytics, talent intelligence.

Location-Based Keywords

country job data API, city job scraper, remote jobs dataset, regional hiring trends, local job market intelligence, international job listings API.

Use Case Keywords

competitor hiring monitoring, job board enrichment, talent market research, salary range extraction, skills demand tracking, recruitment automation, AI job matching dataset.


Trust & Certifications

  • Public data workflow - Designed for publicly available job listing data.
  • Transparent billing - Pay-per-result pricing with clear start and result events.
  • API-first delivery - Works with Apify datasets, REST API, Python, JavaScript, Make, and N8N.
  • Structured output - Normalized fields reduce cleanup work for analysts and engineers.
  • Maintenance-oriented design - Platform-specific parsing can be updated as source pages evolve.

Data Rights & Usage

This actor extracts publicly available job listing data. Users are responsible for ensuring their use of output data complies with applicable laws, contractual requirements, and internal policies.

Privacy Compliance

The actor is intended for job listing and employer-side market intelligence workflows, not for collecting private candidate data. Users should apply GDPR, CCPA, and other privacy requirements to downstream storage and processing.

Platform Terms of Service

Users must review and comply with ZipRecruiter terms and any applicable policies before using extracted data in production workflows.

Enterprise Support

For enterprise usage, compliance questions, private deployments, or custom data workflows, contact AgentX support.


Jobs & Hiring

Social Media

Video & Transcript

E-Commerce & Retail

Classifieds & Automotive

Real Estate

Business Intelligence & Reviews

Other


Support & Community


Last Updated: May 25, 2026