Google Jobs Scraper: Salaries, Apply Links & API avatar

Google Jobs Scraper: Salaries, Apply Links & API

Pricing

$1.50 / 1,000 jobs

Go to Apify Store
Google Jobs Scraper: Salaries, Apply Links & API

Google Jobs Scraper: Salaries, Apply Links & API

Google Jobs scraper and API: every job Google shows for your searches, up to 200 per search, with full description, all apply links, salary normalised to yearly and hourly, posting date and remote flag. Failed searches are free.

Pricing

$1.50 / 1,000 jobs

Rating

0.0

(0)

Developer

Meridian Labs

Meridian Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Google Jobs Scraper gets every job Google Jobs shows for your searches, up to 200 per search, with the full description, every apply link (LinkedIn, Indeed, Glassdoor, the employer's own site...), salary turned into yearly and hourly figures, the posting date as a real date, and a remote flag. $1.50 per 1,000 jobs, no start fee. Searches that fail or find nothing are free. The form is pre-filled, so click Start to try it: 20 jobs cost $0.03.

What does Google Jobs Scraper do?

You give it job searches (like "registered nurse" or "python developer") and places (like "Austin, TX", "Manchester, UK" or "Germany"). For every search in every place it returns one row per job with:

  • title, company, company logo, location, country
  • the full job description, plus Google's "Job highlights": qualifications, benefits and responsibilities
  • every apply link Google lists (up to 8 per job), with the site name and whether it is the employer's own page, plus apply_url, the best one to use
  • salary as Google shows it, plus min, max, currency, period and yearly and hourly equivalents, so an hourly warehouse job and a salaried office job can be compared in one column
  • posted_at as a real date (2026-10-30T12:19:51Z), not "3 days ago"
  • employment type (full time, part time, contract, internship), remote flag, benefit labels (health insurance, dental, paid time off) and "no degree mentioned"
  • Google's job ID (the same job keeps the same ID across runs, so you can spot new jobs) and a link that opens the job on Google Jobs

A job found by two of your searches is saved and charged once.

Who uses it?

  • Job boards and aggregators filling listings for a city or a niche
  • Recruiters and staffing agencies watching who is hiring for a role
  • Salary and labour-market research: pay ranges by role and city, normalised to yearly and hourly
  • AI agents and automations that need fresh jobs as clean JSON (Apify API, MCP, Make, Zapier, n8n)

How much does it cost?

$1.50 per 1,000 jobs (job event, $0.0015 each), charged only for jobs saved to your dataset. No start fee.

RunJobsCost
The pre-filled run (1 search, 20 jobs)20$0.03
5 searches x 100 jobs500$0.75
20 searches x 200 jobs4,000$6.00

Free: one status row per search, searches that find nothing or fail, jobs removed by your filters, duplicates across your searches, and anything past your spending limit. Free Apify accounts get up to 300 jobs per run.

Input

FieldWhat it does
queriesJob searches, one per line
locationsCities, states or countries, one per line (default United States). Every search runs in every location
maxJobsPerQuery1 to 200 (default 100). Google Jobs shows at most about 200 jobs per search
datePostedany, today, 3days, week or month
employmentTypesfulltime, parttime, contractor, intern (empty = all)
remoteOnlyAdds "remote" to each search and keeps only jobs Google marks as work from home
radiusKmHow far around a city to search (optional)
languageLanguage code for Google's page (default en)
includeDescriptionTurn off for smaller rows
dedupeSave a job found by several searches once (default on)
failOnErrorsFor schedules: mark the run failed (so Apify alerts you) if a search fails
{
"queries": ["registered nurse", "data analyst"],
"locations": ["Chicago, IL", "Manchester, UK"],
"maxJobsPerQuery": 100,
"datePosted": "week"
}

Output example

{
"record_type": "job",
"id": "TbAvbEmF5A4XwqteAAAAAA==",
"title": "Senior Mission Management Software Engineer (Onsite)",
"company": "RTX",
"location": "Aurora, CO",
"country": "US",
"remote": false,
"posted_at": "2026-10-31T12:43:31Z",
"posted_ago": "2 days ago",
"employment_type": "full_time",
"salary": null,
"via": "RTX Careers",
"apply_url": "https://careers.rtx.com/global/en/job/01885979/Senior-Mission-Management-Software-Engineer-Onsite",
"apply_links": [
{"publisher": "RTX Careers", "url": "https://careers.rtx.com/global/en/job/01885979/...", "direct": false},
{"publisher": "LinkedIn", "url": "https://www.linkedin.com/jobs/view/...-4485252798", "direct": false},
{"publisher": "Glassdoor", "url": "https://www.glassdoor.com/job-listing/jv?jl=1010311228362", "direct": false}
],
"apply_link_count": 8,
"description_text": "Date Posted:\n2026-10-29\n\nCountry:\nUnited States of America ...",
"highlights": {
"qualifications": ["Active and existing security clearance required on day 1", "..."],
"benefits": ["... medical, dental, vision, life insurance ... 401(k) match ...", "..."],
"responsibilities": ["Design, develop, test, deliver, and maintain software for satellite ground systems", "..."]
},
"benefits": ["Health insurance", "Dental insurance", "Paid time off"],
"query": "software engineer",
"search_location": "United States",
"rank": 1
}

A salary looks like this:

{"min": 100000, "max": 115000, "currency": "USD", "period": "year", "yearly_min": 100000, "yearly_max": 115000, "hourly_min": 48.08, "hourly_max": 55.29, "raw_text": "100K–115K a year"}
.

Each search also gets one free status row (record_type: "search") saying how many jobs were found, saved, charged, skipped as duplicates or removed by your filters. The Jobs and Searches tabs show them as tables.

Where does it work?

Google Jobs runs in 76 countries, including the United States, United Kingdom, Canada, India, Germany, France, the Netherlands, Spain, Italy, Singapore, the UAE and South Africa. Google does not run it in Australia, New Zealand or Ireland; locations there get a free row saying so.

Limitations

  • Google shows at most about 200 jobs per search. For more, split a broad search into narrower ones (by city, or by adding words like "senior" or "night shift").
  • Salary appears only when Google shows it (about 40% of jobs in our tests). Google shows a posting date on most jobs but not all; with a date filter on, jobs without a date are left out.
  • Results usually arrive within 20 seconds to 2 minutes. A search Google has nothing for can sit in the queue; after 5 minutes it gets a free "skipped" row.

FAQ

The jobs come from Google's public job search results, collected through a licensed search-data provider, not by logging in or getting past any protection. Job ads are business listings, not personal profiles, and personal emails and phone numbers inside descriptions are removed. You are responsible for how you use the data; if in doubt, check with a lawyer for your use case.

How is this different from other Google Jobs scrapers?

Up to 200 jobs per search, every apply link, salary normalised to yearly and hourly, real posting dates and Google's own job IDs, at $1.50 per 1,000 jobs with no start fee. Runs don't open a browser, so they don't time out on slow pages.

What happens if a run times out or restarts?

Searches that finished are not run or charged again, and a search already sent to the data provider is collected, not bought twice. Searches not finished get free skipped rows.

More from Meridian Labs

  • AI Visibility Tracker: whether ChatGPT, Perplexity, Gemini and Claude name your brand, with share of voice vs competitors. From $0.008 per answer.
  • Greenhouse, Lever & Ashby Jobs: jobs straight from company job boards (Greenhouse, Lever, Ashby, Workable, Recruitee, Teamtailor) with normalised salary, using the same field names as this Actor. $2 per 1,000 jobs.
  • Google Trends Scraper & API: Google Trends for hundreds of keywords at once, with a plain-English summary per keyword. $5 per 1,000 keyword lookups.
  • Keyword Search Volume + Google Trends: monthly search volume, CPC, competition and keyword difficulty plus a Google Trends summary for every keyword. From $5 per 1,000 keywords.
  • Backlink Checker: Referring Domains & Spam Score: domain rank, backlinks, referring domains and spam score for up to 1,000 domains per run. $0.03 per domain, $6 per 1,000 backlink rows.
  • Instagram Transcript Scraper: Reels Transcript API: what is said in each Instagram Reel, as text with timestamps and SRT subtitles, in its original language. $3 per 1,000 reels; music-only reels free.

Support

Found a job that looks wrong? Open an issue on the Issues tab with the search and location. We read every one.

If this saved you time, a rating helps others find it; if something's off, open an issue and we'll fix it fast.