Google Jobs Scraper ($4/1k): Salaries & Direct Apply Links avatar

Google Jobs Scraper ($4/1k): Salaries & Direct Apply Links

Deprecated

Pricing

from $4.00 / 1,000 job scrapeds

Go to Apify Store
Google Jobs Scraper ($4/1k): Salaries & Direct Apply Links

Google Jobs Scraper ($4/1k): Salaries & Direct Apply Links

Deprecated

Extract Google Jobs listings across 80+ countries. Get job titles, companies, logos, parsed salary ranges, remote/hybrid tags, full descriptions, qualifications, benefits, and direct employer apply links (LinkedIn, Indeed, Greenhouse, Workday, Lever). $4.00 / 1,000 jobs.

Pricing

from $4.00 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

UnitBytes | Enterprise Web Data

UnitBytes | Enterprise Web Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 hours ago

Last modified

Share

๐Ÿ’ผ Google Jobs Scraper & Hiring Signal Monitor: Salaries, Direct ATS Apply Links & Multi-Board Job API


Google Jobs Scraper & Hiring Signal API by UnitBytes

Try it for Free


๐Ÿ“– Overview

Google Jobs (Google for Jobs) is the world's largest real-time meta-aggregator of employment listings. Instead of scraping dozens of separate job boards and applicant tracking systems (ATS) one by one, a single Google Jobs query captures live postings indexed from LinkedIn, Indeed, Glassdoor, ZipRecruiter, Monster, Built In, Wellfound, Greenhouse, Workday, Lever, Ashby, SmartRecruiters, iCIMS, and direct company career portals across 80+ countries.

However, extracting structured job data from Google Jobs at scale has historically been a major challenge for engineering and recruiting teams:

  • Legacy scrapers fail with 0 results due to Google's modern verification checks or only return the first 10 results without working pagination.
  • Broken or missing company logos (returning 1ร—1 transparent pixels or generic gray building icons instead of the real employer logo URL).
  • Unparsed compensation badges ("$165Kโ€“$210K a year", "$45โ€“$60 an hour") that require complex regex normalizers before loading into SQL, Clay, or Excel.
  • Aggregator redirect traps instead of direct ATS application URLs (Greenhouse, Workday, Lever).
  • High per-request API fees ($15โ€“$25 per 1,000 jobs on SerpApi) that charge you even when a search returns zero jobs.

Google Jobs Scraper by UnitBytes eliminates every one of these bottlenecks. It streams paginated Google Jobs results in seconds (~30 jobs in under 10 seconds) with transparent Pay-Per-Event billing (from $0.004/job, and $0.00 for empty searches or duplicates) โ€” delivering clean, spreadsheet-ready and AI-ready job intelligence into Excel, CSV, Google Sheets, Clay, n8n, Make, or your database with zero login or cookie setup required.

โšก UnitBytes ยท Google Search, Jobs, Trends & Local Business Intelligence Ecosystem
๐Ÿ’ผ Google Jobs Scraper
๐Ÿ“ You are here
Multi-board jobs, parsed salaries, logos & direct ATS links
๐Ÿ“ˆ Google Trends Scraper
Search Demand & Keywords
5 real-time endpoints, viral curves & geo breakdowns
๐Ÿ“ Google Maps Tracker
Reputation Audit
Detect deleted, removed & edited reviews
๐Ÿ—บ๏ธ Google Maps Contributors
Reviewer Profiles
Reverse lookup Local Guide badges & full review histories
๐Ÿ“ธ Google Maps Photos
High-Res Media
Original =s0 storefront images & view counts
๐Ÿ’ฌ Reddit Scraper
Community Sentiment
Subreddit discussions, keyword mentions & trends
๐Ÿ“ฆ UnitBytes ยท Global Marketplaces, Classifieds & B2B Sourcing Ecosystem
๐Ÿ‡จ๐Ÿ‡ณ 1688 Factory Direct
China Wholesale & FBA
Direct factory prices, SKU matrices & Amazon FBA specs
๐Ÿ“ธ 1688 Reverse Image Search
โœจ Photo-to-Factory
Upload any product photo or URL to find the exact 1688 factory
๐ŸŒ Alibaba Wholesale
Global B2B & MOQ
Verified suppliers, inspection audits & tiered pricing
๐Ÿ›๏ธ FB Marketplace
Bypass 1k Limit
40+ data fields, vehicles, real estate & local listings
๐Ÿš— OfferUp Scraper
Local Deals & Items
Bargain finding from $0.80 per run
๐Ÿ“‹ Craigslist Scraper
Worldwide Leads
All cities, subareas, categories & lead contacts

๐ŸŒŸ Why Recruiting, RevOps & Data Teams Choose UnitBytes

Capability / MetricUnitBytes Google Jobs ScraperSerpApi (Google Jobs API)Other Store Scrapers
โšก Extraction Speed (30 Jobs)~8โ€“10 Seconds (Multi-Page)โš ๏ธ Requires sequential paginated callsโŒ Slow (60โ€“180s browser overhead) or broken (0 jobs)
๐Ÿ’ฐ Price per 1,000 JobsFrom $4.00 ($0.004/job)$15.00 โ€“ $25.00 per 1K (~$0.015โ€“$0.025/page)$10.00 โ€“ $30.00 per 1K + high compute fees
๐Ÿ”„ True Deep Paginationโœ… Full Multi-Page Cursor Pagination (Up to ~185/query)โœ… Supported (10 jobs per paid request)โŒ Many stop at Page 1 (10 jobs) or fake queries
๐Ÿ–ผ๏ธ Company Logos (companyLogo)โœ… 100% Working gstatic.com Image URLsโš ๏ธ Often missing or raw thumbnailsโŒ Broken data:image base64 icons or 1ร—1 GIFs
๐Ÿ’ต Parsed Salary Numbersโœ… Numeric salaryMin, salaryMax, salaryCurrency, salaryIntervalโŒ Raw text snippet onlyโš ๏ธ Unparsed strings
๐Ÿ“‹ Structured Highlightsโœ… Separate qualifications, responsibilities, benefits arraysโš ๏ธ Nested raw arraysโŒ Merged into unstructured text
๐Ÿ”— Direct Employer Apply Linksโœ… Prioritized ATS (directApplyUrl) + full applyOptionsโš ๏ธ Google redirect URLsโš ๏ธ Single link or broken redirects
๐Ÿงฎ Multi-Query ร— Location Batchingโœ… Built-in Cartesian Batching + jobId DeduplicationโŒ Requires custom loop & dedup codeโŒ Single search per run
๐Ÿ›ก๏ธ Empty Search & Duplicate Billingโœ… $0.00 (Free โ€” Pay Only for Unique Jobs)โŒ Charged per API call even on 0 resultsโŒ Charged for browser startup & compute time
๐Ÿ“Š Export FormatsExcel (.xlsx), CSV, Google Sheets, JSON, Clay, n8nJSON onlyJSON / CSV

Try it for Free


๐Ÿ’ฐ Transparent Pay-Per-Event Pricing (From $4.00 / 1,000 Jobs)

This Actor uses Pay-Per-Event (PPE) billing with automatic plan-based volume discounts so you only pay for unique, verified job listings delivered to your dataset โ€” never for empty searches, duplicate listings, or pagination overhead.

Apify Plan TierEvent NamePrice per JobPrice per 1,000 JobsVolume Discount
Free Plan (FREE)job-scraped$0.0100$10.00 / 1,000 jobsBase rate (500 jobs/mo free with $5 credit)
Starter Plan (BRONZE)job-scraped$0.0050$5.00 / 1,000 jobs50% OFF
Scale Plan (SILVER)job-scraped$0.0045$4.50 / 1,000 jobs55% OFF
Business & Enterprise (GOLD+)job-scraped$0.0040$4.00 / 1,000 jobs60% OFF
Actor Run Startapify-actor-start$0.00005$0.05 / 1,000 runsMinimal one-time startup event per GB RAM
Empty Searches / Duplicatesโ€”$0.00$0.00 (Free)Zero charge on 0 results or deduplicated jobs

๐ŸŽ Apify Free Tier Included (500 Jobs / Month Free): Every Apify account receives $5.00 in free monthly platform usage credits, which covers 500 unique Google Jobs listings every month at $0.00 cost on the Free Plan (or up to 1,000โ€“1,250 jobs per $5 on paid plans).


โœจ Key Features

  • โšก Lightning-Fast Multi-Page Extraction: Collect 30+ full job postings across multiple pages in ~8โ€“10 seconds with minimal memory footprint.
  • ๐ŸŒ One Scraper for Every Major Job Board & ATS: Simultaneously capture listings indexed from LinkedIn, Indeed, Glassdoor, ZipRecruiter, Monster, Built In, Wellfound, Greenhouse, Workday, Lever, Ashby, SmartRecruiters, and corporate career portals across 80+ countries.
  • ๐Ÿ–ผ๏ธ Verified Public Company Logos (companyLogo): Automatically resolves deferred employer logos to clean, public https://encrypted-tbn0.gstatic.com/... URLs and filters out generic placeholder icons so your job board UI, Airtable, or Clay table looks crisp.
  • ๐Ÿ’ต Normalized Compensation Intelligence: Parses raw salary badges ("$160Kโ€“$210K a year", "$45โ€“$60 an hour", "ยฃ65,000โ€“ยฃ85,000 a year") into numeric salaryMin, salaryMax, ISO salaryCurrency (USD, EUR, GBP, CAD, AUD), and standardized salaryInterval (YEAR, HOUR, MONTH, WEEK, DAY).
  • ๐Ÿ“‹ Complete Descriptions & Structured Highlights: Extracts the full, untruncated plain-text job description alongside structured bullet arrays for qualifications, responsibilities, and benefits.
  • ๐Ÿ”— Direct Employer & ATS Application Links: Captures every portal link in applyOptions and automatically prioritizes direct ATS/employer URLs (directApplyUrl โ€” e.g., boards.greenhouse.io, myworkdayjobs.com, jobs.lever.co) ahead of third-party aggregators.
  • ๐ŸŽฏ Precision Native Filters: Filter server-side by datePosted (today, 3days, week, month), employmentTypes (FULLTIME, PARTTIME, CONTRACTOR, INTERN), remoteOnly (true/false), and 80+ country markets (country).
  • ๐Ÿง  Cross-Search Deduplication Engine: Batch dozens of queries and locations in a single run โ€” overlapping jobs are automatically deduplicated by Google's unique jobId so you never pay twice for the same posting.

๐Ÿ’ก Practical Business Use Cases

1. ๐ŸŽฏ B2B Sales Intent & Hiring Signal Lead Generation (Clay / Apollo / Outbound)

When a company posts a job for a "Snowflake Data Engineer", "HubSpot Administrator", "SOC 2 Compliance Manager", or "VP of Sales", they are publicly broadcasting their tech stack, budget approval, and immediate pain points. Feed daily Google Jobs postings directly into Clay, n8n, or Make to trigger high-converting outbound campaigns within hours of a job going live.

2. ๐ŸŒ Niche & Vertical Job Board Aggregation

Power specialized job boards (AI & Machine Learning Jobs, Remote FinTech Careers, Climate Tech Jobs, Healthcare Staffing, Web3 Engineering) with fresh daily job listings, verified employer logos, structured bullet highlights, and direct ATS application links.

3. ๐Ÿ“Š Real-Time Compensation & Salary Benchmarking

Analyze live salaryMin, salaryMax, salaryCurrency, and salaryInterval distributions across US states, European tech hubs, seniority tiers, and remote vs. on-site arrangements for HR compensation studies and market intelligence.

4. ๐Ÿค– AI Recruiting Co-Pilots & Automated Candidate Matching

Connect this Actor via MCP, LangChain, CrewAI, or n8n to automatically discover newly posted roles (datePosted: "today"), score job qualifications against candidate resumes, and deliver tailored application packages.

5. ๐Ÿข Competitor Headcount & Expansion Tracking

Monitor competitor company names in queries to track which departments, regional offices, and R&D initiatives your competitors are actively scaling.


๐Ÿšจ 24/7 Hiring Signal & Job Alert Watchdog (Automated Daily Schedules)

Turn manual job searching into an automated 24/7 hiring intelligence pipeline running on a background schedule.

โฐ Ready-to-Use Scheduled Automation Templates

ObjectiveFrequency / CronTarget InputAutomated Action / Destination
๐Ÿ”ฅ Daily B2B Buying Intent RadarDaily at 07:00 AM UTC
0 7 * * *
queries: ["Snowflake Engineer", "HubSpot Admin", "Datadog"], datePosted: "today"Auto-enriches hiring companies in Clay / HubSpot / Apollo and alerts sales reps in Slack.
๐ŸŒ Automated Niche Job Board SyncEvery 6 hours
0 */6 * * *
queries: ["AI Engineer", "LLM Engineer", "MLOps"], remoteOnly: true, datePosted: "today"Appends new verified jobs with logos & ATS links to Airtable / Supabase / Webflow CMS.
๐Ÿ’ผ Executive & Competitor Hiring WatchEvery Monday at 08:00 AM UTC
0 8 * * 1
queries: ["VP of Engineering", "Head of AI"], locations: ["San Francisco, CA", "New York, NY"], datePosted: "week"Delivers weekly executive hiring digest to Google Sheets or email.

๐Ÿš€ How to Set Up an Automated Daily Schedule in 3 Clicks (No Coding Required)

  1. Step 1: Save Your Search Input as a Task
  2. Step 2: Add a Schedule
    • In the left sidebar of the Apify Console, go to Schedules โž” click Create schedule.
    • Select your saved Google Jobs Task and pick your schedule (e.g., Daily at 7:00 AM or 0 7 * * *).
  3. Step 3: Connect to Google Sheets, Clay, n8n, Make, or Slack
    • In your Task settings, navigate to the Integrations tab:
      • Google Sheets: Automatically append newly posted jobs, salaries, and apply links daily.
      • Webhook (Clay / n8n / Make / Zapier / Slack): Trigger an instant workflow as soon as the run finishes (RUN.SUCCEEDED).

๐Ÿ”— No-Code Integrations: Clay, n8n, Make, Zapier & Google Sheets

DestinationIntegration MethodUse Case
Clay.comApify Actor Integration / WebhookEnrich hiring companies with decision-maker emails and trigger automated outbound sequences based on tech-stack job postings.
n8n / Make / ZapierApify Node / RUN.SUCCEEDED WebhookFilter jobs by salaryMin >= 150000, summarize with OpenAI/Claude, and post instant alerts to Slack or Discord.
Google SheetsApify Google Sheets IntegrationMaintain a live, collaborative spreadsheet of open roles, salary benchmarks, and direct ATS links.
Airtable / Webflow / SupabaseWebhook / REST APIAuto-publish fresh daily roles to your niche job board with working companyLogo URLs and directApplyUrl buttons.

๐Ÿ”“ How to Bypass Google's ~185-Job Per-Search Cap (Collect 1,000โ€“5,000+ Jobs)

Google Jobs enforces a hard upstream server-side limit of ~150 to 190 jobs for any single query + location search stream. No scraper or API can retrieve beyond ~185 listings for a single query because Google Jobs caps each individual search feed at that depth.

To collect 500, 1,000, or 5,000+ unique jobs in a single run, use this Actor's built-in Multi-Query ร— Multi-Location Batching and Time-Window Slicing. The scraper automatically iterates through every combination and deduplicates overlapping results by jobId so you never pay twice for the same job:

Strategy 1: Expand Role Synonyms & Seniority Levels (queries)

Split a broad role into specific job title variations, tech stacks, or seniority tiers:

{
"queries": [
"Software Engineer",
"Senior Software Engineer",
"Backend Developer",
"Full Stack Engineer",
"Python Developer",
"Go Engineer",
"Platform Engineer",
"Distributed Systems Engineer"
],
"locations": ["United States"],
"country": "us",
"maxJobs": 1200
}

(8 queries ร— ~180 jobs/query = up to 1,440 unique jobs in one run)

Strategy 2: Slice by Metro Area or State (locations)

Instead of searching an entire country with one location string, pass major hiring hubs in locations:

{
"queries": ["Data Scientist", "Machine Learning Engineer"],
"locations": [
"New York, NY",
"San Francisco, CA",
"Seattle, WA",
"Austin, TX",
"Boston, MA",
"Chicago, IL",
"Los Angeles, CA",
"Remote"
],
"country": "us",
"maxJobs": 2000
}

(2 queries ร— 8 locations = 16 search streams = up to 2,800+ unique jobs in one run)

Strategy 3: High-Frequency Daily Delta Runs (datePosted: "today")

For continuous job board ingestion or recruiting alerts, schedule the Actor to run daily with "datePosted": "today" (or every 3 days with "datePosted": "3days"). Because daily volume per city/role stays well below the ~185-job ceiling, you capture 100% of newly published jobs with zero pagination truncation.


๐Ÿ› ๏ธ How to Use via API (Python, Node.js & cURL)

You can trigger runs directly in the Apify Console or integrate programmatically into your Python, Node.js, or cURL pipeline.

๐Ÿ Python Example

$pip install apify-client
from apify_client import ApifyClient
# Initialize the client with your Apify API token
client = ApifyClient("YOUR_APIFY_API_TOKEN")
# Configure search parameters
run_input = {
"queries": ["Software Engineer", "Backend Engineer"],
"locations": ["New York, NY", "San Francisco, CA"],
"country": "us",
"datePosted": "week",
"employmentTypes": ["FULLTIME"],
"remoteOnly": False,
"maxJobs": 100,
}
# Run the Actor and wait for completion
print("๐Ÿš€ Launching Google Jobs Scraper...")
run = client.actor("unitbytes/google-jobs-scraper").call(run_input=run_input)
# Fetch scraped job postings from the dataset
dataset_items = client.dataset(run["defaultDatasetId"]).list_items().items
print(f"โœ… Successfully extracted {len(dataset_items)} unique jobs from Google Jobs!")
for job in dataset_items[:3]:
print(f"\nTitle: {job.get('title')} at {job.get('company')}")
print(f"Location: {job.get('location')} ({job.get('workplaceType')})")
print(f"Salary: {job.get('salary') or 'Unlisted'} (Min: {job.get('salaryMin')}, Max: {job.get('salaryMax')} {job.get('salaryCurrency')})")
print(f"Logo: {job.get('companyLogo')}")
print(f"Direct Apply URL: {job.get('directApplyUrl')}")

๐ŸŸจ JavaScript / Node.js Example

$npm install apify-client
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: 'YOUR_APIFY_API_TOKEN',
});
const runInput = {
queries: ['DevOps Engineer', 'Site Reliability Engineer'],
locations: ['Remote'],
country: 'us',
datePosted: '3days',
remoteOnly: true,
maxJobs: 100,
};
console.log('๐Ÿš€ Starting Google Jobs Scraper...');
const run = await client.actor('unitbytes/google-jobs-scraper').call(runInput);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`โœ… Extracted ${items.length} unique jobs!`);
items.slice(0, 3).forEach((job) => {
console.log(`โ€ข ${job.title} at ${job.company} (${job.salary || 'N/A'}) โ€” ${job.directApplyUrl}`);
});

๐ŸŒ cURL Example

curl -X POST "https://api.apify.com/v2/acts/unitbytes~google-jobs-scraper/runs?token=YOUR_APIFY_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"queries": ["Product Manager"],
"locations": ["New York, NY"],
"country": "us",
"datePosted": "week",
"maxJobs": 50
}'

๐Ÿ“ค Sample Output Data & Complete Schema

Each item in the output dataset is a flat, structured JSON object containing all 29 extracted job attributes ready for immediate use in databases, spreadsheets, or AI agents.

Realistic JSON Output Example

{
"jobId": "gjobs_fplVD6NzqcGb_8U",
"title": "Senior Backend Software Engineer",
"company": "Stripe",
"companyLogo": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR9_stripe_logo&s",
"location": "New York, NY",
"via": "via Greenhouse",
"description": "Stripe is looking for a Senior Backend Software Engineer to help design, build, and scale our global financial infrastructure...",
"postedAt": "1 day ago",
"postedDate": "2026-10-18",
"employmentType": "Full-time",
"workplaceType": "Hybrid",
"degreeRequirement": "Bachelor's degree",
"salary": "$175Kโ€“$235K a year",
"salaryMin": 175000.0,
"salaryMax": 235000.0,
"salaryCurrency": "USD",
"salaryInterval": "YEAR",
"isRemote": false,
"benefits": [
"Health insurance",
"Dental insurance",
"Vision insurance",
"401(k) matching",
"Paid time off"
],
"qualifications": [
"5+ years of production backend engineering experience in Java, Go, Ruby, or Python",
"Experience designing distributed systems with strict reliability and latency requirements",
"BS/MS in Computer Science or equivalent practical experience"
],
"responsibilities": [
"Design, build, and maintain core payment APIs serving millions of businesses globally",
"Collaborate across product and infrastructure teams to improve latency and uptime",
"Mentor junior engineers and lead architectural reviews"
],
"extensions": [
"1 day ago",
"$175Kโ€“$235K a year",
"Full-time",
"Hybrid"
],
"applyUrl": "https://boards.greenhouse.io/stripe/jobs/6192837",
"directApplyUrl": "https://boards.greenhouse.io/stripe/jobs/6192837",
"applyOptions": [
{
"title": "Apply on Greenhouse",
"link": "https://boards.greenhouse.io/stripe/jobs/6192837"
},
{
"title": "Apply on LinkedIn",
"link": "https://www.linkedin.com/jobs/view/senior-backend-software-engineer-at-stripe-398172635"
}
],
"googleJobsUrl": "https://www.google.com/search?q=Software+Engineer+New+York,+NY&ibp=htl;jobs",
"searchQuery": "Software Engineer",
"searchLocation": "New York, NY",
"country": "us",
"scrapedAt": "2026-10-19T12:00:00+00:00"
}

Complete Output Fields Reference

FieldTypeDescription
jobIdstringUnique Google Jobs posting identifier used for cross-search deduplication.
titlestringJob posting title (e.g., "Senior Backend Software Engineer").
companystringHiring employer / company name (e.g., "Stripe").
companyLogostring | nullPublic https://encrypted-tbn0.gstatic.com/... URL to the employer's logo image, if available.
locationstringJob location string as listed on Google Jobs (e.g., "New York, NY", "Anywhere").
viastringSource job board or ATS where the listing was indexed from (e.g., "via Greenhouse", "via LinkedIn", "via Indeed").
postedAtstringRelative publication timestamp reported by Google (e.g., "13 hours ago", "2 days ago").
postedDatestring | nullNormalized ISO 8601 publication date (YYYY-MM-DD, e.g., "2026-10-18").
employmentTypestring | nullSchedule / contract classification ("Full-time", "Part-time", "Contractor", "Internship").
workplaceTypestringWorkplace arrangement classification ("Remote", "Hybrid", or "On-site").
isRemotebooleanWork-from-home boolean flag (true if remote/telecommute, otherwise false).
degreeRequirementstring | nullExtracted education or degree requirement badge, if specified (e.g., "Bachelor's degree").
salarystring | nullRaw formatted compensation text (e.g., "$175Kโ€“$235K a year", "$45โ€“$60 an hour").
salaryMinnumber | nullParsed minimum numeric salary value (e.g., 175000.0).
salaryMaxnumber | nullParsed maximum numeric salary value (e.g., 235000.0).
salaryCurrencystring | nullISO currency code parsed from the salary string (e.g., "USD", "EUR", "GBP", "CAD").
salaryIntervalstring | nullCompensation period ("YEAR", "MONTH", "WEEK", "DAY", "HOUR").
descriptionstringComplete, untruncated plain-text job description.
qualificationsarray (string)Bullet list of required skills, experience, and qualifications extracted from Google Jobs highlights.
responsibilitiesarray (string)Bullet list of core role duties and day-to-day responsibilities.
benefitsarray (string)Extracted compensation perks and benefits (e.g., "Health insurance", "401(k)", "Paid time off").
extensionsarray (string)Raw metadata badges displayed on the Google Jobs card (posting age, salary badge, schedule, workplace type).
applyUrlstring | nullPrimary application URL for the job listing.
directApplyUrlstring | nullBest direct employer career page or ATS link (Greenhouse, Workday, Lever, Ashby, etc.), prioritized over third-party aggregators.
applyOptionsarray (object)Complete list of all available application portals ([{"title": "Apply on ...", "link": "https://..."}]).
googleJobsUrlstringDirect shareable URL to open the specific job inside the Google Jobs viewer.
searchQuerystringExact search query from queries that discovered this job.
searchLocationstringExact location string from locations that discovered this job.
countrystringTwo-letter ISO country code used for the search ("us", "gb", "de", etc.).
scrapedAtstringUTC ISO 8601 timestamp indicating when the job listing was extracted.

โš™๏ธ Input Parameters Reference

ParameterTypeDefaultDescription
queriesarray["Software Engineer"]Job titles, roles, skills, or company keywords to search for (e.g., ["Software Engineer", "Data Scientist", "Account Executive"]). Supports multi-query batching in a single run with automatic cross-search deduplication.
locationsarray["New York, NY"]Cities, states, regions, or "Remote" to search within (e.g., ["New York, NY", "San Francisco, CA", "London", "Berlin"]). Runs every queries ร— locations combination.
countrystring"us"Two-letter ISO country code for Google Jobs localization (us, gb, ca, de, nl, fr, es, it, in, sg, ae, sa, br, mx, za, etc.). Common aliases like "USA" or "UK" are auto-normalized.
languagestring""Optional interface language code (en, de, es, fr). Recommended: leave empty so Google uses the native language of the selected country for maximum local listing coverage.
datePostedstring"any"Filter listings by publication recency: "any" (any time), "today" (past 24 hours), "3days" (past 3 days), "week" (past 7 days), or "month" (past 30 days).
employmentTypesarray[]Filter by schedule type. Accepted values: "FULLTIME", "PARTTIME", "CONTRACTOR", "INTERN". Leave empty to include all schedule types.
remoteOnlybooleanfalseWhen true, restricts results strictly to remote / work-from-home positions.
maxJobsinteger50Maximum number of unique job listings to collect across the entire run (1 โ€“ 5000). Scraping stops immediately once this budget cap is reached.
resolveApplyLinksbooleanfalseWhen true, resolves redirect links to their final destination employer or ATS URL (Greenhouse, Workday, Lever, LinkedIn, Indeed).

๐Ÿ“‹ Copy-and-Paste Directive for AI Coding Assistants (Cursor, Windsurf & Claude Code)

Give this direct prompt instruction to your AI assistant:

"Use the unitbytes/google-jobs-scraper Actor on Apify to extract Google Jobs listings, parsed salaries (salaryMin, salaryMax), company logos, qualifications, and direct ATS apply links (directApplyUrl). Example call: client.actor('unitbytes/google-jobs-scraper').call(run_input={'queries': ['Software Engineer'], 'locations': ['New York, NY'], 'country': 'us', 'maxJobs': 50})"


๐Ÿ”Œ MCP Server Setup: Claude Code, Cursor & AI Agents

Connect this scraper directly to Claude Code, Claude Desktop, Cursor, or any MCP-compatible AI agent via the hosted Apify MCP server:

{
"mcpServers": {
"apify": {
"type": "http",
"url": "https://mcp.apify.com/?tools=actors,docs,unitbytes/google-jobs-scraper"
}
}
}

No manual API token required in configuration if your client supports Apify OAuth sign-in. Alternatively, pass your Apify API Token in the authorization header.


๐Ÿค– Ask an AI Assistant About This Scraper

Open a ready-to-run prompt about Google Jobs Scraper in your favorite AI assistant:


๐ŸŒ The Complete UnitBytes Scraping Portfolio

Power your entire data intelligence stack with UnitBytes production-grade scrapers โ€” engineered for maximum speed, 99.9% uptime, and the best value on the Apify Store:

ActorPurpose & SuperpowersPricing
Google Jobs ScraperMulti-board job postings (LinkedIn, Indeed, Glassdoor, Greenhouse, Workday), parsed salaries, logos & direct apply linksFrom $0.004 / job
Google Trends ScraperAll-in-one search demand, viral keywords, related queries & geographic breakdowns across 5 endpointsPay-Per-Event
Google Trends APIProgrammatic search curves, real-time interest spikes & multi-year historical trend dataPay-Per-Event
Google Maps Reviews TrackerMonitor reputation changes: detect deleted, removed, or edited customer reviewsPay-Per-Event
Google Maps Photos ScraperHigh-resolution visual storefront audits & Local Guide photo feedsPay-Per-Event
Google Maps Reviewer Profile ScraperContributor credibility audit, reviewer badges & full review historiesPay-Per-Event

๐Ÿ‡จ๐Ÿ‡ณ Chinese E-Commerce, Sourcing & Social Commerce

ActorPurpose & SuperpowersPricing
1688 Factory Direct ScraperDirect manufacturer sourcing, true factory prices, full SKU matrices & Amazon FBA packaging specsFrom $0.0015 / item
1688 Reverse Image Search (Photo-to-Factory)Visual product search (ไปฅๅ›พๆœๆฌพ / ๆ‹็ซ‹ๆท˜): upload any product photo or URL to find the exact 1688 factoryFrom $0.0015 / item
Alibaba Wholesale ScraperGlobal B2B product catalog, MOQ brackets, volume tiers & verified factory audit reportsFrom $0.0015 / item
Taobao & Tmall ScraperChina's premier consumer marketplace, retail trends, flagship brand stores & pricingPay-Per-Event
RedNote / Xiaohongshu Search & TrendsChina's Instagram/Pinterest: viral lifestyle trends, consumer search intent & watermark-free HD mediaPay-Per-Event
RedNote / Xiaohongshu Creators & PostsInfluencer portfolios, KOL engagement metrics, bio contact info & viral note feedsPay-Per-Event
RedNote / Xiaohongshu Comments ScraperAuthentic buyer feedback, customer sentiment, product reviews & full reply threadsPay-Per-Event
Goofish / Xianyu Products & DealsAlibaba's C2C resale market: liquidation deals, secondhand arbitrage & price comparisonsPay-Per-Event
Goofish / Xianyu Sellers & ReputationMerchant due diligence, Zhima credit ratings, transaction histories & buyer feedbackPay-Per-Event

๐Ÿท๏ธ Global Classifieds, Resale & Community Intelligence

ActorPurpose & SuperpowersPricing
Facebook Marketplace ScraperBypass the 1,000-item limit. Extract cars, real estate, electronics & 40+ structured attributesUltra-fast & cheap
OfferUp ScraperLocal pickup deals, nationwide shipping listings, vehicle specs & seller profilesFrom $0.80 / run
Craigslist Worldwide ScraperWorldwide cities, subareas, categories, direct contact leads & localized postingsFrom $0.50 / run
Reddit Posts & Search ScraperSubreddit discussions, keyword mentions, sentiment analysis & viral thread discoveryFrom $0.50 / run

โ“ Frequently Asked Questions (FAQ)

Do I need a Google account, proxies, or cookies to use this scraper?

No. The Actor works out of the box with zero configuration, zero login accounts, and zero external proxy setup required.

Why did a single query stop around 150โ€“190 jobs?

Google Jobs enforces a server-side ceiling of ~150โ€“190 listings per individual query + location stream. When any single search reaches Google's ceiling before your maxJobs cap, the Actor's terminal status message clearly reports which search stream was exhausted. To collect 500 to 5,000+ jobs in a single run, pass multiple role variations in queries or multiple cities in locations (see How to Bypass Google's ~185-Job Per-Search Cap).

How does cross-search deduplication work?

When you batch multiple queries and locations, overlapping listings are automatically deduplicated in memory using Google's unique jobId. Each unique job is pushed to your dataset only once and billed only once.

Why should I leave language empty for non-English countries?

In markets like Germany (de), the Netherlands (nl), France (fr), or Spain (es), forcing language: "en" causes Google Search to filter out local-language job postings. Leaving language empty ("") lets Google serve full localized results for the target country.

What happens if my search matches 0 jobs or my budget cap is reached?

If a query returns zero matching jobs, the run finishes cleanly with exit code 0 and $0.00 in job-scraped charges. If your Apify run spending limit (maxTotalChargeUsd) or maxJobs limit is reached mid-run, the Actor immediately halts pagination and saves all charged jobs cleanly.


โญ Love This Scraper? Support Us with a 5-Star Review!

We work tirelessly to keep Google Jobs Scraper the fastest, most accurate, and best-value job intelligence tool on Apify.

  • โšก Automated your B2B hiring intent pipeline in Clay or n8n?
  • ๐Ÿš€ Saved hundreds of dollars switching from expensive legacy SERP APIs?
  • ๐Ÿ’Ž Loving the clean parsed salaries, working gstatic.com company logos, and direct ATS apply links?

Please take 10 seconds to click the โญ Reviews tab at the top of the Apify Store page and leave a 5-star rating! Your feedback helps us ship more features, keep prices low, and maintain sub-10-second scraping speeds.


This Actor extracts publicly available job postings indexed by Google Jobs. It does not access private user accounts, candidate profiles, resumes, or personally identifiable information (PII). All data is collected strictly from public employer job advertisements in compliance with GDPR and CCPA data minimization principles. Users are responsible for complying with applicable local laws and terms of service when using extracted job data.


๐Ÿ” Keywords & Search Tags

google-jobs-scraper โ€ข google-for-jobs-api โ€ข google-jobs-api โ€ข scrape-google-jobs โ€ข job-board-scraper โ€ข linkedin-jobs-alternative โ€ข indeed-scraper-alternative โ€ข glassdoor-jobs-scraper โ€ข ziprecruiter-scraper โ€ข greenhouse-jobs-scraper โ€ข workday-jobs-scraper โ€ข lever-jobs-scraper โ€ข ashby-jobs-scraper โ€ข b2b-hiring-signals โ€ข clay-hiring-intent โ€ข salary-benchmarking-api โ€ข recruitment-automation โ€ข ats-job-aggregator โ€ข remote-jobs-scraper โ€ข apify-actor


๐Ÿ’ฌ Support & Custom Recruiting Pipelines

Need custom job feeds, ATS enrichment pipelines, or high-volume enterprise crawls?