Do not automate scraping Glassdoor unless you first obtain its express written permission. Glassdoor’s Terms of Use prohibit using software or automated agents to scrape, strip, or mine service data without that permission. Technical ability to read a page is not authorization to collect or reuse its contents.
This guide explains how to establish an authorized route and how to build browser automation for a site you own or are permitted to test. It does not provide Glassdoor-specific selectors, scraper code, or instructions for bypassing access controls.
As an Amazon Associate I earn from qualifying purchases.
What Glassdoor’s terms say about automated scraping
Glassdoor’s UK Terms of Use, revised February 17, 2024, list as a prohibited activity: “Introduce software or automated agents to the services, or access the services to produce multiple accounts, generate automated messages, or to scrape, strip, or mine data from the services without our express written permission;” Read the Glassdoor UK Terms of Use before planning collection. The terms state that use is subject to the version in effect when the service is accessed, so check the applicable live terms for your jurisdiction at the time you intend to act.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →The same terms describe ordinary use as personal and non-commercial unless Glassdoor separately agrees to commercial use. The exact rules that apply can depend on jurisdiction, contract status, and purpose; this is practical information, not legal advice. If your project involves commercial analysis, publication, or redistribution, clarify that scope explicitly with Glassdoor rather than assuming public visibility grants permission.
#1 Best Overall
Can you scrape Glassdoor reviews, salaries, or job listings?
The terms’ restriction applies to automated scraping, stripping, or mining of service data without express written permission; it does not create a general exception for a particular data type. Before collecting reviews, salary information, job listings, ratings, or other fields, ask whether the specific fields and intended use are authorized. Do not infer permission for reviews from permission to access another kind of data.
Glassdoor’s terms also say it does not guarantee that service content is accurate, current, suitable, reliable, or high quality. User-submitted reviews and salary reports should therefore not be presented as verified facts. If you receive authorized data, record its source and collection date, define what each field means, and explain its limits in any analysis.
How to get an authorized data route
- Define the use case. List the companies, data fields, geography, date range, approximate volume, intended analysis, storage period, and whether you will publish or redistribute results or use them commercially.
- Check the current terms for your jurisdiction. Start with the applicable Glassdoor terms page and confirm the version in force when you plan to access the service.
- Request written authorization. Ask Glassdoor whether your proposed access is permitted, specifying fields, purpose, frequency, retention, and downstream use. Ask whether a separate commercial agreement is needed.
- Verify any formal API or data product directly. Glassdoor’s terms refer to APIs or formal embedding features where Glassdoor makes them available. An API Terms of Use document has surfaced, but that alone does not establish that a public API is currently available, that you can obtain credentials, that it includes reviews, or that it covers your intended use. Request current documentation and written confirmation of data coverage and permitted use. Glassdoor API Terms of Use.
- Proceed only within the approved scope. Keep a copy of the authorization and make sure the implementation, collection frequency, retention, and any publication stay within it. If permission is unclear or denied, stop; public visibility is not consent.
When evaluating an authorized route, get answers in writing about field coverage, geography and date coverage, update cadence, volume limits, retention, derived-data and redistribution rights, authentication, maintenance requirements, and total cost. Those terms cannot be assumed from the existence of an API terms document.
Browser automation for a site you are allowed to automate
For a website you own or have explicit permission to test, Playwright recommends locators that reflect how people use and perceive a page—for example, accessible role and name, label, or visible text. Its locator system supports auto-waiting and retries, while selectors tightly coupled to DOM structure can break when the implementation changes. Use a test ID when the site owner provides one. These practices help make permitted browser tests more resilient; they do not authorize access to Glassdoor. See Playwright’s locator documentation and locator best practices.
Minimal permitted example
Here is a Playwright example for a local page or test site you control. Replace the example URL and accessible name with elements on that authorized test page; do not adapt it to collect Glassdoor content without written permission.
import { test, expect } from '@playwright/test';
test('reads a heading on an authorized test page', async ({ page }) => {
await page.goto('http://localhost:3000');
const heading = page.getByRole('heading', { name: 'Example dashboard' });
await expect(heading).toBeVisible();
console.log(await heading.innerText());
});
The test navigates to the local page, finds a heading by its user-facing role and accessible name, waits for it to become visible, and prints its text. Start with a small, known test page and keep the expected content under your control.
Make authorized collection auditable
- Keep the permission record with the project and document which fields and uses it covers.
- Record the source, collection timestamp, geography, field definitions, and any transformation applied to each dataset.
- Validate values and missing fields rather than treating user-generated content as ground truth.
- Respect the agreed request frequency, retention period, and restrictions on storage, publication, and redistribution.
- Stop if the site presents a block, unexpected access restriction, or content outside the authorized scope; do not try to defeat it.
Troubleshooting permitted Playwright automation
- A locator times out: Confirm the target exists on the authorized page and that the role, accessible name, label, or text matches what the page exposes. Check whether navigation completed or the element is intentionally absent before increasing a timeout.
- A selector breaks after a page change: Prefer a user-facing locator or a test ID supplied by the site owner over a CSS or XPath path tied to the page’s DOM structure.
- The page content is incomplete: Check the page’s own loading behavior and wait for the specific element your test needs. Do not assume a successful navigation means all dynamic content has finished rendering.
- You encounter an access restriction: Verify that your permission covers this access and stop if it does not. Do not use CAPTCHA bypasses, proxy rotation, account creation, or other evasion techniques.
Or skip the browser setup
For an authorized page where you need an image or PDF rather than structured data, ScreenshotNeo offers a one-request website screenshot API and an MCP server. A screenshot is not a substitute for permission to access or collect Glassdoor data, and it does not turn page content into a licensed dataset.
Example request for a page you are permitted to capture (replace the URL as needed):
Best Value
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for request options. ScreenshotNeo says it accepts cookie or consent banners like a visitor and removes 60+ known consent platforms, newsletter popups, and chat widgets before capture; each step can be turned off. Bot checks, blank pages, failed loads, timeouts, and cache hits are not billed, with response headers indicating page verdict and billing. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents. The free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000 shots.
Sign up free for 1,000 screenshots a month with no card.
Frequently Asked Questions
Does Glassdoor’s API terms document mean anyone can use a Glassdoor API?
No. The document’s existence does not establish current public availability, eligibility, accessible fields, or permission for a particular use. Confirm those details with Glassdoor directly.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitchesDoes Playwright documentation authorize scraping a website?
No. It explains browser automation techniques. Authorization must come from the site owner or another applicable permission.
Can a ScreenshotNeo capture be used to extract Glassdoor data?
A screenshot is an image or PDF capture, not authorization to access, scrape, or reuse Glassdoor content. Obtain Glassdoor’s express written permission before automating access.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




