Glassdoor Scraper | Jobs Reviews Salaries API avatar

Glassdoor Scraper | Jobs Reviews Salaries API

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Glassdoor Scraper | Jobs Reviews Salaries API

Glassdoor Scraper | Jobs Reviews Salaries API

Scrape Glassdoor jobs, reviews, salaries, interviews, benefits & company pages. Extract titles, employers, pay, ratings & URLs — Glassdoor API alternative for US, UK, DE, IN.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 hours ago

Last modified

Share

Glassdoor Scraper — Jobs, Reviews, Salaries & Company Data

Scrape Glassdoor job listings, company reviews, salaries, interviews, benefits, and employer pages — then download structured data as Excel, CSV, or JSON.

This Actor is a practical Glassdoor API alternative for job market research, recruiting pipelines, salary benchmarking, and employer intelligence. Enter a job keyword (or an employer ID), pick a channel and market, and get clean Dataset rows with titles, companies, pay, ratings, locations, and direct Glassdoor URLs.

Worker URL is config, not code: the Actor reads WORKER_BASE_URL from Actor environment variables (plus optional per-run workerBaseUrl). If you migrate the worker to a new host, update WORKER_BASE_URL (and WORKER_AUTH if the API key changes) in Apify Console — no Actor code change required. WORKER_PROVIDES_PROXY=1 means the worker supplies its own PROXY_URL.

  • Pull Glassdoor jobs, employee reviews, salaries, interviews, benefits, and company overview from Glassdoor
  • Cover US, UK, Germany, and India hosts (us / uk / de / in)
  • Filter jobs by Easy Apply, remote, seniority, and sort
  • Optionally enrich job search hits with JobPosting detail fields
  • Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or Apify MCP / API
  • Pay per event — Actor start + each Dataset result; platform compute is included (you do not pay separate Apify usage)

What does the Glassdoor Scraper do?

Glassdoor Scraper lets you extract structured job and employer data from Glassdoor without maintaining your own browser farm. Give it a keyword and location for jobs, or an employer ID for reviews / salaries / interviews / benefits, then start a run.

Under the hood, the Actor:

  1. Validates your input (channel, market, keyword or employerId, filters)
  2. Calls a managed Cloud Run worker that fetches Glassdoor pages with residential egress
  3. Parses guest-visible HTML / JSON-LD / RSC payloads into normalized records
  4. Pushes Dataset rows with preview fields (name, type, status, country, authority)
  5. Writes RUN_SUMMARY (and ERROR_SUMMARY on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.


What Glassdoor data can I extract?

DataJobsReviewsSalariesInterviewsBenefitsCompany
Job / review title
Employer name / ID
LocationHQ when shown
Pay / salary band
Easy Apply / employment type
Ratings / review text✅*
Interview difficulty / experience
Benefit categories
Direct Glassdoor URL
Market / authority

*Company rating on job cards when Glassdoor shows it.

Every row includes contentDepth=guest_preview (public / guest-visible content only — no login unlock).


Why scrape Glassdoor?

Glassdoor combines a large job board with employer intelligence (reviews, pay, interviews, benefits). Teams scrape Glassdoor to:

  • Build custom job databases for recruiting or lead gen
  • Benchmark salaries by role, employer, and market
  • Track hiring demand and competitor open roles
  • Analyze company culture via reviews and interview feedback
  • Compare benefits packages across employers
  • Feed AI agents, CRM workflows, or enrichment pipelines

More Actors like this

Looking for another jobs / employer intelligence scraper, or a specialized Actor outside Glassdoor? Use a dedicated Actor when one exists — structured fields, better coverage, usually lower cost. Use this Actor for Glassdoor jobs, reviews, salaries, interviews, benefits, and company pages.

Similar jobs & freelance Actors

Prefer another specialized scraper?

E-commerce

Real Estate

Travel & Stays

Social & Content

Ads Intelligence

Local & Maps

General Tools

→ See the full catalog in Related Actors below, or browse apify.com/lentic_clockss.


How to scrape Glassdoor (no code required)

  1. Create a free Apify account
  2. Open Glassdoor Scraper
  3. Choose a channel (jobs, reviews, salaries, …)
  4. For jobs: enter a keyword and location; for employer tabs: enter employerId + companyName (correct casing, e.g. Google)
  5. Pick a market (us / uk / de / in)
  6. Click Start and download the Dataset as JSON, CSV, Excel, or JSONL

Start with maxResults: 5–10 to verify the query, then scale up.


How much does it cost to scrape Glassdoor?

This Actor uses pay-per-event pricing. You are charged for:

EventPrice
Actor Start (apify-actor-start)$0.005 per start
Result (apify-default-dataset-item)$3.00 / 1,000 results ($0.003 each)

Platform usage costs are included — you do not pay separate Apify compute/proxy usage for this Actor on top of the event prices above.

Example cost estimates

Results collectedApprox. event cost*
100~$0.31
1,000~$3.01
10,000~$30.01

*Assumes one Actor start at default memory billing for start events, plus $0.003 per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one).

Free Apify trial credit can cover a small test run — try maxResults: 5 first.

Free Apify plan limits (set by this Actor's developer)

LimitFree Apify planPaid Apify plan
Runs of this Actor10 runs totalUnlimited
Results per runUp to 200 (schema max)Up to 200

When the run cap is hit, the run finishes with a clear status message (FREE_TIER_LIMIT) — not an Apify platform error. Upgrade to a paid Apify plan for unlimited runs.


Input

Open the Input tab for the full form. Common fields:

FieldDescription
channeljobs / company / reviews / salaries / interviews / benefits / company_jobs
keywordJob search keyword (jobs channel)
locationCity, region, or country label
marketus, uk, de, or in
employerIdGlassdoor employer id (e.g. 9079 for Google)
companyNameEmployer name for URL construction — preserve casing (Google, not google)
companyUrlOptional tab URL instead of employerId
maxResultsCap on Dataset rows (1–200). Free plan: also 10 total runs of this Actor
maxPagesJobs: sort/seniority variants; Reviews: guest ?page=N
easyApply / remote / seniority / sortByJobs SERP filters
enrichDetailsAfter jobs SERP, fetch Job LDP JSON-LD fields
detailUrls / jobListingIdsScrape specific job detail pages
jobTitleOptional salaries filter
failoverWorker retries once with a fresh proxy session on empty/hard failure (default true)
workerBaseUrlOptional per-run override of Actor env WORKER_BASE_URL

Example: scrape Glassdoor jobs

{
"channel": "jobs",
"keyword": "software engineer",
"location": "United States",
"market": "us",
"maxResults": 20,
"maxPages": 2,
"easyApply": false,
"remote": false
}

Example: scrape Glassdoor company reviews

{
"channel": "reviews",
"employerId": "9079",
"companyName": "Google",
"market": "us",
"maxResults": 20
}

Example: scrape Glassdoor salaries

{
"channel": "salaries",
"employerId": "9079",
"companyName": "Google",
"market": "us",
"maxResults": 10
}

Example: job detail URLs

{
"detailUrls": [
"https://www.glassdoor.com/job-listing/software-engineer.htm?jl=1010204489922"
],
"maxResults": 5
}

Output sample

Each Dataset item looks like this (jobs channel):

{
"dataType": "job_serp_item",
"jobListingId": "1010204489922",
"title": "Software Engineer",
"name": "Software Engineer",
"type": "job",
"status": "open",
"country": "United States",
"authority": "glassdoor.com",
"brand": "glassdoor",
"channel": "jobs",
"url": "https://www.glassdoor.com/job-listing/...?jl=1010204489922",
"easyApply": true,
"employer": { "name": "Example Corp", "rating": 4.2 },
"location": { "name": "Austin, TX", "country": "United States" },
"pay": { "display": "$120K - $180K", "source": "estimate" },
"contentDepth": "guest_preview",
"scrapedAt": "2026-07-23T01:22:44.251037+00:00"
}

Reviews, salaries, interviews, and benefits use the same preview fields plus channel-specific attributes (reviewId, salaryCount, interview metrics, benefit categories, etc.).

Diagnostics live in the key-value store as RUN_SUMMARY, INPUT_ECHO, and ERROR_SUMMARY.


How many Glassdoor results can this scraper return?

Throughput depends on channel, market, keyword popularity, and Glassdoor edge behavior.

  • Jobs: guest first HTML batch (typically tens of cards); maxPages > 1 diversifies via sort/seniority variants (Show-more infinite scroll is not clicked)
  • Reviews / interviews / benefits / company jobs: guest-visible samples and aggregates from the first page (and guest ?page=N where applicable)
  • Salaries: employer /Salary/* pages are often blocked at the edge; the worker falls back to salary stats embedded in guest Reviews payloads

Results can vary day to day because Glassdoor pages are dynamic. A short test run is the best way to estimate volume for your query.


Which Glassdoor markets are supported?

MarketHost
uswww.glassdoor.com
ukwww.glassdoor.co.uk
dewww.glassdoor.de
inwww.glassdoor.co.in

Optional domain can override the host when needed.


Glassdoor channels explained

ChannelWhat you get
jobsJobs SERP cards by keyword / location
companyEmployer overview (rating, facts, tab URLs)
reviewsEmployee review samples + aggregate rating
salariesSalary aggregate / bands (guest depth)
interviewsInterview aggregate + detail cards
benefitsBenefit category cards
company_jobsOpen roles on the employer Jobs tab

Can I use this as a Glassdoor API alternative?

Yes — for many job-search and employer-research workflows. Glassdoor does not offer a public bulk jobs/reviews API comparable to Store scrapers, so teams use Actors like this to collect:

  • Searchable Glassdoor job listings as structured data
  • Employer reviews, pay signals, interview feedback, and benefits
  • Multi-market coverage without operating your own unlock stack

Always respect Glassdoor’s terms, robots rules, and applicable laws. Do not use scraped data to spam applicants or bypass apply flows. This Actor does not click Apply or submit reviews.


FAQ

How do I scrape Glassdoor jobs by location?

Set channel to jobs, provide keyword and location, and choose market. Add remote: true or easyApply: true when needed.

How do I scrape Glassdoor reviews for a company?

Set channel to reviews, pass employerId (numeric) and companyName with correct casing (e.g. Google), then start the run.

Why must companyName preserve casing?

Glassdoor employer URLs are case-sensitive (Google-Reviews-E9079.htm works; google-Reviews-… often 404s).

Does this unlock signed-in Glassdoor content?

No. Rows are marked contentDepth=guest_preview. Login-gated “unlock all” depth is out of scope.

What happens if Glassdoor returns Security / 403?

The worker retries with residential session rotation and, for some channels (overview / salaries), falls back to guest-stable pages such as Reviews. Check RUN_SUMMARY.warnings for details. Partial datasets may still be returned.

Can I schedule recurring Glassdoor scrapes?

Yes. Use Apify Schedules or the API/client to run the Actor on a cron and append or replace datasets over time.

What are the free Apify plan limits?

Yes — free Apify plan users get 10 runs of this Actor and up to 200 results per run. These limits are set by the Actor developer (not Apify). When you hit the run cap, the run finishes with a clear status message (FREE_TIER_LIMIT) — it is not a platform bug. Upgrade to a paid Apify plan for unlimited runs.

Why does channel=company use the Reviews page?

Glassdoor’s direct /Overview/ URLs are usually Security-blocked for guest traffic. The worker extracts overview fields from the guest Reviews page instead and marks acquisitionPath accordingly.

Do I need a Glassdoor API key?

No. The Actor scrapes public Glassdoor pages through a managed worker. You only need the Actor’s configured WORKER_API_KEY secret (already set for Store runs).


Integrations

Use the official JavaScript client, Python client, Apify CLI, REST API, or Apify MCP to start runs and read Dataset items from your stack (Make, n8n, Zapier, LangChain, custom backends).


All 77 public Actors from [lentic_clockss]. Click a name to open the Store detail page.

Jobs & Freelance

Real Estate

E-commerce

Travel & Stays

Social & Content

Ads Intelligence

Local & Maps

General Tools

→ Browse the full profile: apify.com/lentic_clockss