Google Jobs Scraper - Salary, Boards & Descriptions avatar

Google Jobs Scraper - Salary, Boards & Descriptions

Pricing

from $7.00 / 1,000 job scrapeds

Go to Apify Store
Google Jobs Scraper - Salary, Boards & Descriptions

Google Jobs Scraper - Salary, Boards & Descriptions

Scrape the Google Jobs vertical by keyword and location. Returns title, company, location, source board (LinkedIn, Stepstone, XING, company careers), posted date, salary and full description. Monitor mode returns only jobs you haven't seen. Null-honest output. Export CSV/JSON.

Pricing

from $7.00 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

WebDataLabs

WebDataLabs

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Share

Google Jobs Scraper — aggregated postings, salary & source boards

Search Google Jobs by keyword and location and get clean, structured job data — including the job boards each posting came from, the full description, and normalised salary.

Google Jobs aggregates postings from LinkedIn, Indeed, Stepstone, XING, ZipRecruiter, Monster, Wellfound, BeBee and thousands of company career pages. This Actor turns that vertical into a dataset. (Those are boards we have actually seen in live output — sourceBoards tells you which carried each posting.)

What you get

One flat record per job:

FieldExample
titleAssociate Principal Software Engineer
companyNameBecton Dickinson & Company
location / isRemote / workModeBerlin / false / onsite
postedAt / postedAgoLabel2026-07-24 / 3 days ago
salaryMin / salaryMax / salaryCurrency / salaryPeriod72800 / 130000 / USD / year
salaryRaw$72,800 - $130,000 — exactly as Google rendered it
salaryDisclosedtrue — tells you the posting actually stated pay
employmentType / seniorityFull-time / Senior
sourceBoards / primarySource["LinkedIn","Stepstone"] / LinkedIn
descriptionSnippet / descriptionfirst ~300 chars / full posting text
jobUrl / googleJobIdcanonical link / stable id for deduplication

Example output

A real record, unedited apart from truncating the long text:

{
"googleJobId": "9wIVddLFFxuq9d1AAAAAAA==",
"title": "Data Analyst II, Office of Data Analytics",
"companyName": "Optum",
"location": "Chicago, IL",
"isRemote": false,
"workMode": "onsite",
"postedAt": "2026-07-24",
"postedAgoLabel": "3 days ago",
"salaryDisclosed": true,
"salaryMin": 72800,
"salaryMax": 130000,
"salaryCurrency": "USD",
"salaryPeriod": null,
"salaryRaw": "$72,800 - $130,000",
"employmentType": "Full-time",
"seniority": null,
"sourceBoards": ["Built In Chicago"],
"primarySource": "Built In Chicago",
"jobUrl": "https://www.google.com/search?ibp=htl;jobs&q=data+analyst+Chicago&htidocid=…",
"descriptionSnippet": "Requisition Number: 2370192At UnitedHealthcare, we're simplifying the health care experience…",
"description": "Requisition Number: 2370192At UnitedHealthcare, we're simplifying the health care experience…",
"query": "data analyst",
"searchLocation": "Chicago",
"scrapedAt": "2026-07-27T12:33:16.267Z",
"isNew": null
}

Note seniority and salaryPeriod are null here — the title carried no seniority cue and the posting did not state a pay period. That is the null-honest contract, not a parsing failure.

Monitor mode — only get what's new

Turn on "Only return jobs I haven't seen before" and the Actor remembers every posting it has delivered, per search. Schedule it hourly or daily and each run returns only newly posted jobs — so you are never charged twice for the same posting, and you get a working job alert instead of a list you have to diff yourself.

How many jobs can I get?

Google's jobs vertical shows about 10 jobs per search and has no "next page". There is no way around this — it is how the vertical works, and any tool claiming unlimited depth from a single query is not being straight with you.

You get more results by searching more combinations. Every job title is searched in every location, so:

jobs ≈ job titles × locations × 10

Want 100 jobs? Use 2 job titles across 5 cities. The Actor deduplicates across all searches, so the same posting found twice is only returned (and only charged) once.

Honest limits

We would rather tell you up front than have you discover it mid-run:

  • ~10 jobs per search, as above.
  • Filters are applied after fetching. Google ignores its own date/type filter parameters on this vertical, so "Last 24 hours" filters the jobs we retrieved rather than asking Google for more. Because a search only returns ~10 jobs, stacking filters empties a run fast — combining remote-only + full-time + last-week on one city can legitimately return zero. The run log always prints exactly which filter dropped how many jobs, so an empty result is never a mystery. Note that employment type and posted date are excluded when the employer didn't state them.
  • Posted dates are day-accurate, not exact. Google only publishes a relative label ("3 days ago"), which we convert to a date.
  • Salary is often absent — most postings, and nearly all German ones, do not state pay. You get salaryDisclosed: false and null figures, never a fabricated 0.
  • No apply link. Google renders apply buttons in JavaScript, so no outbound URL exists in the results. jobUrl takes you to Google's posting with its apply options. We do not ship an always-empty applyUrl field to pad the schema.

Input

FieldDescription
Job titles or keywords (required)e.g. software engineer, registered nurse
Locationse.g. Berlin, Munich, United States
Maximum jobscap on unique jobs returned
Posted withinAny / 24 hours / 3 days / week / month
Employment typeFull-time / Part-time / Contract / Internship
Only return jobs I haven't seen beforemonitor mode
Advancedcountry, remote-only, include full description, debug

Use cases

  • Recruiters & staffing — track live openings across every board from one search.
  • Job boards & aggregators — bootstrap inventory with source attribution.
  • Labour-market analytics — hiring volume, salary bands and seniority mix by city and role.
  • Sales / GTM teams — hiring is a buying signal; a company opening 5 DevOps roles is scaling.
  • Job seekers — a scheduled monitor-mode run is a personal job alert across all boards at once.

FAQ

Which job boards does it cover? Whatever Google indexes for your query. Boards seen in live runs include LinkedIn, Indeed, Stepstone, XING, ZipRecruiter, Monster, Wellfound, BeBee, JobLeads, Jobvector, Haystack, eFinancial Careers, Built In and many company career sites. sourceBoards tells you which carried each posting. Coverage varies by role and country — it is Google's index, not a fixed list.

Does it work outside the US? Yes. Choose a country in Advanced settings — verified working for the US and Germany, with 14 countries available. Job titles come back in the local language; date and source labels are normalised to English so the output is consistent across markets.

Is the data deduplicated? Google itself collapses a posting carried by several boards into one entry and lists the boards it found it on — we expose that as sourceBoards. On top of that, this Actor deduplicates across your searches by googleJobId, and across runs when monitor mode is on.

Why are some fields null? Because the posting did not state them. Null means "not published", never "we failed to read it".


Built by WebDataLabs. Found it useful? A review genuinely helps.