Glassdoor Company Reviews Scraper avatar

Glassdoor Company Reviews Scraper

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Glassdoor Company Reviews Scraper

Glassdoor Company Reviews Scraper

Scrape employee reviews from Glassdoor company pages. Extracts ratings, pros, cons, advice to management, job titles, dates, locations, and helpful counts.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

Joren Maurissen

Joren Maurissen

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Scrape employee reviews from Glassdoor — ratings, pros, cons, advice to management, job titles, locations, dates, and helpful counts.

Overview

This Apify Actor scrapes publicly visible company reviews from Glassdoor. Given a Glassdoor company reviews URL, it paginates through review pages and extracts structured data for each review, including:

  • Overall rating (1–5 scale)
  • 📝 Review title
  • 👍 Pros
  • 👎 Cons
  • 💬 Advice to Management
  • 👤 Employee status (Current / Former Employee)
  • 💼 Job title
  • 📅 Date
  • 📍 Location
  • 🔢 Helpful count (number of upvotes)

Features

  • Multi-strategy parsing — uses data-test attributes first, then falls back to legacy CSS class names, so the scraper keeps working even when Glassdoor changes its obfuscated class names
  • Pagination support — automatically navigates through review pages (?p=2, ?p=3, …)
  • Rate-limit friendly — configurable random delays between page requests
  • Graceful blocking handling — detects Cloudflare bot protection and logs a clear warning instead of crashing, preserving any reviews already collected
  • Apify residential proxy ready — designed to work with Apify's residential proxy pool for reliable access on the platform

Use Cases

  • Employer brand monitoring — track sentiment trends for your company over time
  • Competitive intelligence — compare review ratings and themes across competitors
  • HR analytics — aggregate pros/cons text for qualitative analysis of workplace culture
  • Job search research — collect reviews for companies you're considering
  • Market research — analyze industry-wide employee satisfaction trends
  • NLP / sentiment analysis — build datasets of employee review text for ML models

Input

The actor accepts the following input fields:

FieldTypeRequiredDefaultDescription
companyUrlstringFull Glassdoor reviews URL, e.g. https://www.glassdoor.com/Reviews/Google-Reviews-E9049.htm
maxReviewsinteger100Maximum number of reviews to collect
maxPagesinteger10Maximum pages to paginate through (≈10 reviews per page)
minDelaynumber2.0Minimum random delay (seconds) between page requests
maxDelaynumber5.0Maximum random delay (seconds) between page requests

Input Example

{
"companyUrl": "https://www.glassdoor.com/Reviews/Google-Reviews-E9049.htm",
"maxReviews": 50,
"maxPages": 5
}

Output

Each review is pushed as a dataset item with the following structure:

{
"companyName": "Google",
"rating": 4.0,
"title": "Great place to work with smart people",
"pros": "Excellent benefits, free food, smart colleagues, great compensation...",
"cons": "Can be competitive, long hours during crunch periods...",
"adviceToManagement": "Continue to invest in employee growth and work-life balance.",
"employeeStatus": "Current Employee",
"jobTitle": "Software Engineer",
"date": "2024-06-15",
"location": "Mountain View, CA",
"helpfulCount": 12,
"reviewPage": 1
}

A summary is also saved to the OUTPUT key-value store:

{
"companyName": "Google",
"overallRating": 4.3,
"totalReviewsAvailable": 5000,
"reviewsCollected": 50,
"pagesScraped": 5,
"wasBlocked": false,
"reviews": [...]
}

How to Use

On the Apify Platform

  1. Go to the actor page on Apify Store
  2. Click Try for free or Start with Apify
  3. Enter the company reviews URL and adjust limits
  4. Important: Enable residential proxies in the run settings:
    • Proxy type: Apify Proxy
    • Proxy group: RESIDENTIAL
    • Country: US (recommended for Glassdoor)
  5. Click Start and wait for results
  6. Download data from the Dataset tab (JSON, CSV, Excel, etc.)

Locally

# Install the Apify CLI
npm install -g apify
# Run the actor
apify run -i '{"companyUrl": "https://www.glassdoor.com/Reviews/Google-Reviews-E9049.htm", "maxReviews": 5, "maxPages": 1}'

⚠️ Local runs will likely be blocked by Cloudflare. Glassdoor's bot protection blocks non-browser HTTP clients without residential proxies. For reliable results, run on the Apify platform with residential proxies.

Via API (Python)

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("glassdoor-reviews-scraper").call(run_input={
"companyUrl": "https://www.glassdoor.com/Reviews/Google-Reviews-E9049.htm",
"maxReviews": 50,
"maxPages": 5,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

Pricing

This actor uses Pay Per Result pricing on the Apify platform.

ResourceCost
Per review scraped$0.005
Minimum run cost$0.05

Example costs:

  • 50 reviews → $0.25
  • 100 reviews → $0.50
  • 500 reviews → $2.50
  • 1,000 reviews → $5.00

Proxy costs (residential proxies) are included in the per-result price.

Limitations & Important Notes

Bot Protection

Glassdoor uses Cloudflare bot detection with IP reputation scoring and rate limiting. This means:

  • Local runs will likely get 403 blocked — this is expected behavior
  • Apify platform runs with residential proxies are required for reliable access
  • The actor detects blocking and exits gracefully, preserving any data collected before the block

Review Cap

Glassdoor typically shows a maximum of ~2,000 reviews per company in pagination. The maxReviews parameter caps at 5,000 but actual results may be lower depending on the company.

Selectors May Change

Glassdoor periodically changes its HTML class names (obfuscated CSS). This actor uses multiple fallback selector strategies, but if all fail, the parser may need updating. The data-test attribute approach is the most stable.

  • Only scrape publicly visible review data — do not bypass Glassdoor's login wall
  • Respect Glassdoor's Terms of Service and robots.txt
  • Do not store or republish reviewer personal data
  • Use the data for legitimate research and analysis purposes
  • Consider using Glassdoor's official API if available for your use case

Technical Details

  • Runtime: Python 3.14 on apify/actor-python:3.14
  • HTTP client: httpx with realistic Chrome browser headers
  • HTML parser: BeautifulSoup with lxml
  • Pagination: URL-based (?p={page})
  • Rate limiting: Configurable random delays between requests

Support

If you encounter issues:

  1. Check that your URL is a valid Glassdoor reviews page (must contain /Reviews/ and E{companyId}.htm)
  2. Ensure you're using residential proxies on the Apify platform
  3. If no reviews are found, the page structure may have changed — check logs for selector warnings