Glassdoor Jobs Scraper - Salaries & Employer Ratings
Pricing
from $4.00 / 1,000 results
Glassdoor Jobs Scraper - Salaries & Employer Ratings
Scrape Glassdoor job listings with salary ranges parsed into numbers (min/median/max), employer names and Glassdoor company ratings. Filter by job title and location. Returns posting age, extracted skills and direct apply links as JSON or CSV.
Pricing
from $4.00 / 1,000 results
Rating
0.0
(0)
Developer
Vaulted
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Glassdoor Jobs Scraper — Salaries & Employer Ratings
Scrape Glassdoor job listings with salary ranges, employer names and company ratings. Search any job title in any location and get structured JSON or CSV.
Most Glassdoor scrapers hand back a salary string like $213K - $288K and leave
you to parse it. This one returns salaryMin: 213000, salaryMax: 288000 and
salaryPeriod: "year" alongside the original text, so you can filter and sort
without post-processing.
What you get
| Field | Example |
|---|---|
title / normalizedTitle | Registered Dental Hygienist / dental hygienist |
employer | North Austin Dental |
employerId, employerRating | 1061951, 3.5 |
location, locationType | Austin, TX / CITY |
payMin, payMedian, payMax | 55, 56.5, 58 |
payPeriod, payCurrency | HOURLY, USD |
payIsEstimate | false when the employer published the figure |
ageInDays, postedAt | 1, 2026-08-29 |
attributes | Oral hygiene, Continuing education credits, Part-time... |
snippet | first lines of the description |
easyApply, isSponsored, expired | true / true / false |
url, jobId | direct link, 1010244761866 |
Pay arrives as numbers, not a "$213K - $288K" string - so you can filter and
sort without post-processing. payIsEstimate tells you whether the figure came
from the employer or from Glassdoor's model. attributes are the extracted
skills and benefits, which most Glassdoor scrapers drop entirely.
Listings are deduplicated by jobId across pages and across search terms, so
you are never charged twice for the same row.
Input
{"searchTerms": ["software engineer", "data analyst"],"location": "New York, NY","maxItemsPerTerm": 300,"maxPages": 20}
- searchTerms — one or more job titles or keywords; each is searched separately
- location — city, state or country; leave empty for the whole United States
- maxItemsPerTerm — stop each term after this many unique listings
- maxPages — safety cap; Glassdoor returns 30 listings per page
Use cases
- Glassdoor salary data for compensation benchmarking
- Job market research and hiring-trend analysis
- Recruiting pipelines and job board aggregation
- Tracking which companies are hiring for a role
- Competitor headcount and hiring signals
- Feeding job data into an LLM or RAG pipeline
Proxies
Residential proxies are required. Glassdoor returns 403 to datacenter IPs —
measured at 0 successes out of 8 requests from a datacenter host, versus 18 out
of 18 from a residential connection. The default input uses Apify's residential
proxy group; leaving it off will produce nothing but blocks.
At roughly 4.3 KB of traffic per listing, a residential GB is worth about 240,000 listings, so proxy cost per record is negligible.
Notes
- Reads Glassdoor's own search backend rather than parsing HTML, which is why pagination works: the public HTML pages return the same ~30 listings reshuffled no matter which page you request
- Deep pagination stops at roughly 500-600 listings per search term - that is
Glassdoor's own limit, not the actor's. To go wider, split the search by
location; a
locationsearch returns the whole metro (an Austin search includes Round Rock, Pflugerville and Cedar Park) employerRatingisnullwhere the company has no Glassdoor rating, and pay isnullwhere the listing publishes none (roughly 1 in 6)- Where Glassdoor holds a single pay estimate,
payMin,payMedianandpayMaxare equal - that means one data point, not a flat band - Public search data only; no login is used
Related
Part of Vaulted — reputation and hiring data APIs.