Glassdoor Jobs Scraper - Most Comprehensive avatar

Glassdoor Jobs Scraper - Most Comprehensive

Pricing

from $0.09 / 1,000 jobs

Go to Apify Store
Glassdoor Jobs Scraper - Most Comprehensive

Glassdoor Jobs Scraper - Most Comprehensive

๐Ÿ”ฅ ~$0.1/1K jobs ๐Ÿ”ฅ Scrape Glassdoor job listings with title, description, salary, location, and company details.

Pricing

from $0.09 / 1,000 jobs

Rating

4.7

(2)

Developer

Kai

Kai

Maintained by Community

Actor stats

2

Bookmarked

105

Total users

51

Monthly active users

2 days ago

Last modified

Share

Glassdoor Jobs Scraper

Scrape job listings from Glassdoor by keyword and location, or from an employer page or search URL. Results include listing data plus available job-detail, salary, employer, location, skill, and education fields.

Why use this scraper?

  • Full HTML job description when available
  • Salary range (min/median/max), currency, period, and source (employer-provided vs Glassdoor estimate)
  • Employer profile: size, revenue, HQ, industry, CEO, year founded, website
  • 8 employer rating categories: overall, career opportunities, comp & benefits, culture, management, work-life balance, CEO approval, recommend to friend
  • Geo coordinates (lat/lng), city, state, and country when available
  • Extracted skills, education requirements, years of experience
  • Job type, remote work type, easy apply flag, expired status
  • Search by keyword and location, or use supported Glassdoor employer and search URLs
  • Filter by date posted, job type, seniority, remote work, salary, radius, company size, posting source, and Easy Apply

Use cases

  • Build a job board or aggregator with rich structured data
  • Track open positions at specific companies over time
  • Analyze salary ranges by role, location, or company
  • Feed job descriptions into NLP pipelines for skill extraction
  • Compare employer profiles and ratings across companies

How to use

Search by keyword + location

{
"keyword": "Software Engineer",
"location": "San Francisco, CA"
}

Search with filters

{
"keyword": "Software Engineer",
"location": "San Francisco, CA",
"fromAge": "7",
"jobType": ["fulltime"],
"remoteWorkType": ["1"],
"seniorityType": ["midseniorlevel"],
"minSalary": 100000,
"maxJobs": 50
}

Search by keyword only (all locations)

{
"keyword": "Data Scientist",
"maxJobs": 50
}

Scrape a specific company

{
"urls": ["https://www.glassdoor.com/Jobs/Google-Jobs-E9079.htm"]
}

Scrape multiple companies

{
"urls": [
"https://www.glassdoor.com/Jobs/Google-Jobs-E9079.htm",
"https://www.glassdoor.com/Jobs/Meta-Jobs-E40772.htm"
],
"maxJobs": 50
}

Scrape a search results URL

{
"urls": [
"https://www.glassdoor.com/Job/san-francisco-software-engineer-jobs-SRCH_IL.0,13_IC1147401_KO14,31.htm"
]
}

Combine keyword + URL targets

{
"keyword": "Product Manager",
"location": "New York",
"urls": ["https://www.glassdoor.com/Jobs/Google-Jobs-E9079.htm"],
"maxJobs": 30
}

Input

ParameterTypeDefaultDescription
keywordstringโ€”Job title, skill, or company name
locationstringโ€”City, state, or country

Filters

ParameterTypeDefaultDescription
maxJobsinteger20Maximum results per target. Set to 0 for no limit.
fromAgestringNo filterPosted within "1", "3", "7", "14", or "30" days
jobTypestring[]No filterfulltime, parttime, contract, internship, temporary
seniorityTypestring[]No filterentrylevel, midseniorlevel, director, executive
remoteWorkTypestring[]No filter1 (Remote), 2 (Hybrid), 3 (On-site)
easyApplybooleanfalseOnly Easy Apply jobs
minSalaryintegerโ€”Minimum annual salary (local currency)
maxSalaryintegerโ€”Maximum annual salary (local currency)
radiusstringโ€”Search radius in miles: "5", "10", "15", "25", "50", "100"
employerSizesstring[]No filter1to50, 51to200, 201to500, 501to1000, 1001to5000, 5001to10000, 10001+
postedBystring[]No filterjobPoster (Employer), staffingAgency (Staffing Agency)

Filters apply to all targets (keyword search and URLs).

URL lookup

ParameterTypeDefaultDescription
urlsstring[]โ€”HTTPS Glassdoor employer pages (/Jobs/...-E<ID>) or search pages under /Job/. Optional if keyword is provided.

Advanced

ParameterTypeDefaultDescription
proxyConfigurationobject{"useApifyProxy":true}Uses Apify Proxy by default; supply settings to customize or disable it

Provide a nonblank keyword or at least one URL. location requires keyword, and minSalary must be less than or equal to maxSalary. Unknown input fields are rejected.

Supported URLs use HTTPS on glassdoor.com or glassdoor.co.uk. Employer URLs contain /Jobs/...-E<ID>; SEO-path and query-style search URLs under /Job/ are supported. Pasted search URLs supply their keyword and encoded location when present; set other filters with the input fields above. An unsupported URL is skipped if another valid target remains, but the run fails when no valid target remains.

Output

The Actor writes one job object per item in the default dataset. The Actor output's jobs link points to those dataset items. Each object contains:

  • jobId and the canonical job url
  • profile: title, description, age, status, job type, remote type, skills, education, and experience
  • location: display name, type, city, state, country, latitude, and longitude
  • compensation: salary range, median, currency, period, and source
  • employer: identity, profile, industry, leadership, and ratings
  • meta: canonical link, collection time, and detail status

Unavailable optional values are null; unavailable lists are []. A complete detail status means job-detail information was available, not that every optional field is populated. A partial status means the item contains listing-level information only.

The following selected fields come from one verified live result collected on July 29, 2026. Long descriptions, images, and contact-bearing fields are omitted; the shown values are unchanged.

{
"jobId": 1010195521007,
"url": "https://www.glassdoor.com/job-listing/administrative-business-partner-iii-cloud-ai-google-JV_IC1147442_KO0,44_KE45,51.htm?jl=1010195521007",
"profile": {
"title": "Administrative Business Partner III, Cloud AI",
"normalizedTitle": "hr business partner",
"ageInDays": 19,
"expired": false,
"easyApply": false,
"jobType": ["Full-time"],
"remoteWorkTypes": []
},
"location": {
"name": "Sunnyvale, CA",
"type": "C",
"city": "Sunnyvale, CA",
"state": "California",
"country": "United States",
"lat": 37.36889,
"lng": -122.03528
},
"compensation": {
"salaryMin": 96000,
"salaryMax": 138000,
"salaryMedian": 117000,
"currency": "USD",
"period": "ANNUAL",
"source": "EMPLOYER_PROVIDED"
},
"employer": {
"id": 9079,
"name": "Google Inc.",
"shortName": "Google",
"size": "10000+ Employees",
"headquarters": "Mountain View, CA",
"industry": "Internet & Web Services",
"ratings": {
"overall": 4.4,
"careerOpportunities": 4.2,
"compensationAndBenefits": 4.5,
"cultureAndValues": 4.3,
"seniorManagement": 3.9,
"workLifeBalance": 4.2,
"ceoRating": 0.83,
"recommendToFriend": 0.87
}
},
"meta": {
"seoJobLink": "https://www.glassdoor.com/job-listing/administrative-business-partner-iii-cloud-ai-google-JV_IC1147442_KO0,44_KE45,51.htm?jl=1010195521007",
"scrapedAt": "2026-07-29T20:09:13.687Z",
"detailStatus": "complete"
}
}

Result behavior

  • A valid search with no matches succeeds with an empty dataset.
  • URL targets run in input order; a combined keyword target runs last.
  • Duplicate job IDs are stored once, at their first occurrence. Ordering within a target can change between runs.
  • Missing job-detail information produces a partial item and does not fail the run.
  • If scraping a target fails, the Actor attempts the remaining targets, keeps items already written, and then marks the run as failed.
  • Input validation and an unresolved keyword location fail before target scraping begins.

Limitations

  • Employer fields describe the company; detail-derived fields may be absent on partial items.
  • maxJobs is per target, not total across all targets.
  • salaryMin, salaryMedian, and salaryMax map to the source's P10, P50, and P90 values and are not guaranteed offer bounds.
  • A requested location that cannot be resolved fails the run instead of silently widening it to all locations.
  • Job descriptions and employer data can contain publicly available personal information. Collect only the fields you need, limit access, choose an appropriate retention period, and delete data when it is no longer needed.