VOOZH about

URL: https://apify.com/gio21/google-jobs-scraper

โ‡ฑ Google Jobs Scraper - Listings, Salaries, Apply Links ยท Apify


Pricing

$3.00 / 1,000 job scrapeds

Go to Apify Store

Scrape Google for Jobs. 22+ fields per posting (title, company, salary, apply links, remote flag). US/BR/MX/CA/UK/IN/AU/JP/SG. Pay $0.003 per job.

Pricing

$3.00 / 1,000 job scrapeds

Rating

5.0

(3)

Developer

๐Ÿ‘ Gio

Gio

Maintained by Community

Actor stats

0

Bookmarked

152

Total users

77

Monthly active users

11 days ago

Last modified

Categories

Share

Scrape Google for Jobs at scale with full salary data and apply links. 22 structured fields per job, multi-network apply tracking, automatic matrix expansion for large runs.

๐Ÿ‘ Apify


Highlights

  • โœ… 22 fields per job including salaryMin / salaryMax / salaryCurrency / salaryPeriod
  • โœ… Apply links per network (LinkedIn, Indeed, Glassdoor, Workday, Greenhouse, Lever, company ATS)
  • โœ… Matrix expansion for runs > 500 jobs โ€” automatically rotates date filters + employment types to escape Google's pagination ceiling
  • โœ… Hard cost ceiling (maxCost, default $2) so runs never blow past your budget
  • โœ… Brightdata Scraping Browser under the hood โ€” no cookies, no manual auth, just results
  • โœ… Self-healing: detects soft-consent redirects and Brightdata exit-IP burns, auto-reconnects for a fresh session

Table of Contents


Pricing

EventPriceDescription
job-scraped$0.008Charged once per job pushed to the dataset
  • $0.05 minimum charge per run (prevents tiny abandoned runs from bypassing cost)
  • No actor-start fee
  • You only pay for jobs we successfully extract โ€” empty runs cost $0

Coverage

Google's Jobs widget is region-restricted (disabled in the EU since 2023). Supported regions:

Country codeRegion
us๐Ÿ‡บ๐Ÿ‡ธ United States
br๐Ÿ‡ง๐Ÿ‡ท Brazil
mx๐Ÿ‡ฒ๐Ÿ‡ฝ Mexico
ca๐Ÿ‡จ๐Ÿ‡ฆ Canada
gb๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom
in๐Ÿ‡ฎ๐Ÿ‡ณ India
au๐Ÿ‡ฆ๐Ÿ‡บ Australia
jp๐Ÿ‡ฏ๐Ÿ‡ต Japan
sg๐Ÿ‡ธ๐Ÿ‡ฌ Singapore

EU countries (DE, FR, IT, ES, NL, etc.) are not supported โ€” Google disabled the Jobs widget in the EEA after antitrust regulations.


Input

Required

FieldTypeDescription
queriesstring[]Array of search keywords (e.g. ["software engineer", "data scientist"])

Optional

FieldTypeDefaultDescription
locationstringcountry defaultCity, region or full address (e.g. "San Francisco, CA")
countryCodestring"us"Two-letter country code
languageCodestring"en"Two-letter language code
maxItemsinteger500Hard cap on total jobs scraped (min 50)
datePostedstringโ€”today / 3days / week / month / all
jobTypestring[]โ€”["FULLTIME","PARTTIME","CONTRACTOR","INTERN"]
workFromHomebooleanfalseFilter for remote roles only
maxCostnumber2Hard cost ceiling in USD โ€” actor stops expanding once spent estimate reaches this
proxyConfigurationobjectRESIDENTIALStandard Apify proxy config

Example input

{
"queries":["software engineer","data scientist"],
"location":"San Francisco, CA",
"countryCode":"us",
"languageCode":"en",
"maxItems":500,
"datePosted":"week",
"jobType":["FULLTIME"],
"workFromHome":false,
"maxCost":4
}

Output

Each row in the dataset is one job with the schema below:

{
"jobId":"eyJhbGciOi...",
"title":"Senior Software Engineer",
"companyName":"Acme Inc",
"companyLogo":"https://encrypted-tbn0.gstatic.com/images?q=...",
"location":"San Francisco, CA, US",
"latitude":37.7749,
"longitude":-122.4194,
"description":"We're hiring senior engineers for our infrastructure team...",
"descriptionHtml":"<p>We're hiring senior engineers for our infrastructure team...</p>",
"postedAt":"5 days ago",
"postedAtIso":"2026-04-10T00:00:00.000Z",
"jobType":"FULLTIME",
"workFromHome":false,
"salaryMin":180000,
"salaryMax":240000,
"salaryCurrency":"USD",
"salaryPeriod":"YEAR",
"benefits":["Health insurance","401(k)","Stock options"],
"qualifications":["5+ years experience","Go or Rust proficiency"],
"responsibilities":["Design distributed systems","Mentor junior engineers"],
"applyOptions":[
{"network":"linkedin","url":"https://www.linkedin.com/jobs/view/...","directApply":false},
{"network":"greenhouse","url":"https://boards.greenhouse.io/acme/jobs/...","directApply":false}
],
"postedVia":"LinkedIn",
"sourceQuery":"software engineer",
"scrapedAt":"2026-05-24T12:00:00.000Z"
}

Field reference

FieldTypeNotes
jobIdstringGoogle's internal identifier (or synthesized from title|company|location for dedup)
titlestringJob title
companyNamestringHiring company
companyLogostringURL of company logo image (Google CDN)
locationstringHuman-readable location string
latitude, longitudenumberGPS coordinates when Google provides them
description, descriptionHtmlstringPlain text + HTML versions of job description
postedAtstringRelative date string from Google (e.g. "5 days ago")
postedAtIsostringISO 8601 โ€” parsed from postedAt
jobTypestringFULLTIME / PARTTIME / CONTRACTOR / INTERN
workFromHomebooleanTrue for fully remote
salaryMin, salaryMaxnumberSalary range when disclosed
salaryCurrencystringISO currency code
salaryPeriodstringHOUR / MONTH / YEAR
benefits, qualifications, responsibilitiesstring[]Bullet lists extracted from job posting
applyOptionsobject[]{network, url, directApply} per apply destination
postedViastringThe job board that posted it on Google
sourceQuerystringWhich input queries[] produced this row
scrapedAtstringISO 8601 timestamp of extraction

Example use cases

Recruiter โ€” track competitor hiring

{"queries":["senior backend engineer"],"location":"Austin, TX","datePosted":"week","maxItems":100}

Returns this week's senior backend roles in Austin with salary, company, and one-click apply.

Salary benchmarking โ€” by role and city

{"queries":["product manager"],"location":"Seattle, WA","datePosted":"month","maxItems":300,"maxCost":3}

Combine with simple aggregation to get median / p90 salary for PMs in Seattle this month.

Remote-only sourcing

{"queries":["devops engineer"],"countryCode":"us","workFromHome":true,"maxItems":200}

Filter for fully remote roles across the US.

Multi-role digest for a job board

{"queries":["data scientist","ml engineer","data engineer"],"location":"London","countryCode":"gb","maxItems":500,"maxCost":5}

Aggregate three related roles in one run for a daily digest.


Cost calculator

Jobs scrapedCost
50$0.40
100$0.80
250$2.00
500$4.00
1,000$8.00
2,000$16.00

Costs are deterministic โ€” you're charged per successfully extracted job, not per API call.


FAQ

Q: Why does Google Jobs scraping need Brightdata? A: Google's Jobs vertical (udm=8) ships a different consent flow than regular search and frequently rejects datacenter IPs with a "before you continue" redirect. Brightdata Scraping Browser carries the CF / consent cookies needed to render the Jobs widget.

Q: My run returned 0 jobs but succeeded โ€” why? A: Google occasionally serves a soft-consent redirect (page title becomes the URL itself, 0 cards render). The actor detects this and (1) reloads the page, (2) reconnects to Brightdata for a fresh exit IP, retrying up to 3 times. If it still fails after that, you weren't charged for the empty run.

Q: Can I scrape EU jobs? A: No โ€” Google disabled the Jobs vertical in the EEA in 2023 due to antitrust action. The widget simply isn't there. If you set countryCode: "de" the actor will fail gracefully.

Q: How does maxItems > 500 actually find more? A: Google caps visible results per single filter slice to ~100. To unlock more, the actor automatically expands the search matrix by iterating over datePosted (today โ†’ 3days โ†’ week โ†’ month) and jobType filters, deduplicating by jobId. Costs scale with successful extractions, not slices attempted.

Q: How fresh is the data? A: Real-time from Google's index. Jobs are typically posted to Google within hours of being added to the source job board (LinkedIn, Indeed, etc.).

Q: Can I get the full apply URL on LinkedIn / Greenhouse without a Google redirect? A: Yes โ€” applyOptions[].url is the canonical destination URL (we decode Google's redirect wrapper).


Notes & limits

  • EU countries are not supported (Google disabled the widget there in 2023).
  • Pagination ceiling: Google caps visible results to ~100 per filter slice. maxItems > 500 triggers matrix expansion automatically.
  • jobId is sourced from Google's internal identifier when available; otherwise synthesized from title|company|location for cross-run dedup.
  • Apply networks detected: LinkedIn, Indeed, Glassdoor, Workday, Greenhouse, Lever, Ashby, BambooHR, plus direct company career pages.
  • Empty runs ($0 charged) typically mean Google flagged the IP โ€” re-running usually succeeds.

Related actors


If this actor saved you time, please leave a โญโญโญโญโญ review on the Apify Store โ€” it helps a lot ๐Ÿ™

You might also like

Google Jobs Scraper

igview-owner/google-jobs-scraper

Search and scrape job listings from Google Jobs. Find jobs by query, location, and various filters with structured JSON output.

๐Ÿ‘ User avatar

Sachin Kumar Yadav

289

1.0

Google Jobs Scraper โ€” Salary, Apply Links & MCP-Ready

khadinakbar/google-jobs-scraper

Extract job listings from Google Jobs. Returns title, company, location, salary (parsed min/max), full description, apply link, employment type & more.

137

ZipRecruiter Jobs Scraper Pro

crawlerbros/ziprecruiter-scraper-pro

Extract job postings from ZipRecruiter.com with FULL job descriptions. Returns title, company, location, salary, skills, and the full job description body per listing. Walks paginated search results.

141

Google Jobs Scraper

johnvc/Google-Jobs-Scraper

The most advanced Google Jobs Scraper available! Built with enterprise-grade flexibility, lightning-fast performance, and comprehensive customization options. Extract detailed job data, application links, company information, and full job descriptions. Unlimited usage, no monthly rental fees.

Google Jobs Scraper - Aggregated Job Listings

thirdwatch/google-jobs-scraper

Scrape Google Jobs (Google for Jobs) aggregated listings: title, company, salary, description, job type, source (Indeed/LinkedIn/Glassdoor), and apply URLs. Searches across 20+ job boards at once. Any country, any query.

LinkedIn Jobs Scraper โ€” Salary, Skills, Seniority & Easy Apply

khadinakbar/linkedin-jobs-scraper

Extract LinkedIn jobs by keyword and location. Returns title, company, salary, skills, seniority, easy-apply flag, and company data. No login required. $1/1K.

86

5.0

Google Jobs Scraper

epctex/google-jobs-scraper

The most comprehensive Google Jobs Scraper ever! Extremely configurable, highly customizable, and blazing fast. Retrieve salary, social links, apply links, and all detailed sections. Both for data retrieval and API Integration. Easy use without any limits!

ZipRecruiter Scraper | $1 / 1k | Fast & Reliable

fatihtahta/ziprecruiter-scraper

Extract structured ZipRecruiter job listings with companies, locations, compensation ranges, employment types, contacts and full descriptions. Built for hiring intelligence, labor-market research, and automated recruiting or analytics pipelines.

TotalJobs Scraper ๐ŸŽฏ

easyapi/totaljobs-scraper

Scrape job listings from TotalJobs.com. Extract detailed job information including titles, companies, locations, salaries, and more. Perfect for job market analysis, recruitment research, and tracking employment trends.

Google Jobs Scraper

orgupdate/google-jobs-scraper

The latest and most advanced Google Job Scraper. Our Indeed, LinkedIn, and Google Jobs Scraper rolled into one. This scraper extracts real-time job postings at scale from any active Google Jobs search results from all over the world. A new research tool built for recruitment, insights and HR.