Glassdoor Reviews Scraper | Filters, Sub-Ratings & Monitoring
Pricing
from $1.00 / 1,000 results
Glassdoor Reviews Scraper | Filters, Sub-Ratings & Monitoring
Scrape Glassdoor employee reviews by company link or name: pros, cons, advice, overall + 6 sub-ratings, job title, location and employer replies. Filter by language, stars, current staff, job title, location, keyword and date. New-review monitoring, alerts and a free company summary.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Corvuslab
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
What does Glassdoor Reviews Scraper do?
Glassdoor Reviews Scraper pulls Glassdoor employee reviews for any company into clean, flat, spreadsheet-ready rows: pros, cons and advice, the overall rating plus all six sub-ratings, the reviewer's job title, location, employment type and tenure, and the employer's reply. Give it Glassdoor company links or plain company names, narrow each company to exactly the reviews you need with filters that Glassdoor applies itself, and schedule a monitoring mode that returns only new reviews and flags the moment an employer replies. Every company also gets a free company summary.
Run it with no input at all and it returns Nucor's 20 newest reviews, so you can see the output before you configure anything. No login, no cookies, no code; export to JSON, CSV or Excel, or pull it from the API or an AI agent.
New to Apify? Sign up free and use the included monthly platform credit to try this Actor — no credit card needed.
Need the jobs too? Our Glassdoor Job Scraper pulls Glassdoor job listings across 22 countries with salary ranges and company ratings, so you can see who is hiring and then read what their staff say here.
What data can you extract from Glassdoor reviews?
Every review row has 50+ fields, one column per value:
| Group | Fields |
|---|---|
| Review | reviewId, reviewUrl, postedAt + postedDate, title, pros, cons, advice, language, isLanguageMismatch |
| Ratings | ratingOverall plus six sub-ratings — work-life balance, culture & values, senior leadership, compensation & benefits, career opportunities, diversity & inclusion — and ceoApproval, businessOutlook, recommendToFriend |
| Reviewer | isCurrentEmployee, employeeType (CURRENT / FORMER), employmentStatus (full-time, part-time, contract, intern…), employmentLength ("More than 3 years") + yearsAtCompany (3), jobEndingYear, jobTitle + jobTitleId, location + locationId + locationType |
| Employer reply | hasEmployerResponse, employerResponse, employerResponseDate, employerResponderTitle, plus every reply in employerResponses[] |
| Company & engagement | employerId, employerName, employerShortName, employerLogoUrl, companyReviewsUrl, helpfulCount, unhelpfulCount, isFeatured, isLegal, isCovid19, topLevelDomainId |
| Monitoring | changeType (NEW / UPDATED / UNCHANGED), firstSeenAt, responseAdded, contentHash, scrapedAt, source |
The free company summary (one per company, saved to the run's COMPANIES record) adds:
| Group | Fields |
|---|---|
| Rating breakdown | Overall and category ratings, the number of reviews for each star (1–5) in every category, and the recommend split |
| Demographic ratings | Ratings by gender, race & ethnicity, disability, sexual orientation, veteran status and parent / caregiver, where Glassdoor shows them |
| Leadership | CEO name, title, photo and approval rating with its vote count |
| Profile | Industry, sector, size, revenue band, headquarters, year founded, website, overview, parent, siblings, subsidiaries |
| Reputation | Awards, best-places-to-work and best-led-company entries, office locations with their own ratings, up to 100 photos with captions |
| Volume & completeness | Total and filtered review counts, counts by language, reviews in the last 7 and 30 days, last review date, and a completeness report for the run |
Key features
- 🎚️ Filters that save money — review language (English, Spanish, Portuguese, French, German, Dutch, Italian, or all of them), overall star rating, current employees only, employment type, job title, location and keyword. Glassdoor applies them itself, so you never pay for reviews you would have thrown away.
- 📅 Posted-date range that stops early — ask for "the last 30 days" or a fixed window and reading stops the moment older reviews start, so a recent window on a 90,000-review employer reads only the pages it needs.
- 🔀 Several stars or languages, one ordered list — pick 1★ and 2★, or English and Spanish, and the reviews come back merged in your sort order, with the review limit shared across them.
- ♻️ Only new reviews on every scheduled run — incremental mode returns NEW and UPDATED reviews only, flags reviews the employer has just replied to, and stops reading once it reaches reviews you already have.
- 🔤 Look up companies by name — type
StarbucksorDeloitteinstead of hunting down links; any Glassdoor company link from any country site works too. - 📈 Every employment type by default — interns, contractors, freelancers, temporary and seasonal staff are included unless you filter. On Starbucks' English reviews that is about 2% more reviews than a full-time/part-time-only view.
- 📊 Unrated means null, not 0 — a sub-rating the reviewer skipped stays empty, so averages, medians and charts are right without clean-up.
- 🧾 Flat rows, ready-made views — four table views (overview, ratings, employer replies, changes) and a compact mode for AI agents.
- 🧹 No duplicates — each company is read once even if you list it twice, and repeated reviews are dropped.
- 🔔 Alerts — Telegram, Slack, Discord or any webhook.
🚀 How to scrape Glassdoor reviews
- Paste Glassdoor company links (e.g.
https://www.glassdoor.com/Reviews/Nucor-Reviews-E489.htm) or type company names (e.g.Starbucks). - Set Max reviews per company (0 = every matching review) and a sort order.
- Pick any filters — language, stars, current employees, employment type, job title, location, keyword or a posted-date range.
- (Optional) Turn on incremental mode and an alert channel, then Schedule it.
- Click Start — reviews stream into the Output tab.
Quick-start example input
{"companyNames": ["Starbucks"],"maxReviews": 200,"starRatings": ["1", "2"],"onlyCurrentEmployees": true,"dateFrom": "6 months"}
This returns up to 200 one- and two-star reviews by current Starbucks employees from the last six months, newest first — the complaints that matter right now, without paying for the thousands of other reviews — plus a free Starbucks company summary.
Input
Configure it in the visual editor or pass JSON via the API. Every field is optional.
| Field | What it does |
|---|---|
urls | Glassdoor company links — any company page (Reviews, Overview, Salaries, Jobs) on any Glassdoor country site — or a bare company id (489). |
companyNames | Company names to look up, e.g. Starbucks. The best match is used and logged. |
maxReviews | Maximum reviews per company. Default 20; 0 = every review that matches. |
sort | DATE (newest first, default), DATE_ASC, RATING, RATING_ASC, RELEVANCE. A date range always reads newest first. |
languages | eng (default), spa, por, fra, deu, nld, ita, or all for every language the company has. |
starRatings | Keep only these overall ratings: 5, 4, 3, 2, 1. |
onlyCurrentEmployees | Keep only reviews by people who still work there. |
employmentStatuses | REGULAR (full-time), PART_TIME, CONTRACT, INTERN, FREELANCE, SEASONAL, TEMPORARY, APPRENTICE, RESERVE. |
jobTitle / location / keyword | A job title (Barista), a city, state or country (Texas), and a word or phrase the review must mention (overtime). |
dateFrom / dateTo | Posted on or after / before a date (2026-01-31); dateFrom also takes a span like 30 days or 6 months. |
includeCompanyData | The free company summary (default on). |
textMaxLength / compact / excludeEmptyFields | Cut long texts, keep only core fields, drop empty fields — handy for AI agents. |
incrementalMode, stateKey, emitUnchanged | Monitoring — see the incremental mode section below. |
| Alert fields | Telegram, Slack, Discord and webhook — see the alerts section below. |
proxyConfiguration, maxRequestRetries | Advanced. Keep the default Apify Proxy setting. |
Several values inside one filter widen it (OR); different filters narrow it (AND). Another example — part-time Walmart reviews from Texas that mention scheduling:
{"companyNames": ["Walmart"],"maxReviews": 100,"employmentStatuses": ["PART_TIME"],"location": "Texas","keyword": "schedule"}
Output
Each dataset item is one Glassdoor review. A real record (Starbucks, trimmed of a few identifiers):
{"reviewId": 105946714,"reviewUrl": "https://www.glassdoor.com/Reviews/Employee-Review-Starbucks-E2202-RVW105946714.htm","postedDate": "2026-10-13","title": "Good staff and free coffee, but poor management","pros": "Good staff and free coffee","cons": "poor management, high stress and inflexible","advice": "Communicate and be more accomodating","language": "eng","ratingOverall": 3,"ratingWorkLifeBalance": 3,"ratingCultureAndValues": 2,"ratingSeniorLeadership": 3,"ratingCompensationAndBenefits": 2,"ratingCareerOpportunities": 2,"ratingDiversityAndInclusion": 4,"ceoApproval": "DISAPPROVE","businessOutlook": "NEGATIVE","recommendToFriend": "NEGATIVE","isCurrentEmployee": false,"employeeType": "FORMER","employmentStatus": "PART_TIME","employmentLength": "Less than 1 year","yearsAtCompany": 0,"jobEndingYear": 2022,"jobTitle": "Barista","location": "Gatwick, England","locationType": "CITY","helpfulCount": 0,"employerId": 2202,"employerName": "Starbucks Corporation","companyReviewsUrl": "https://www.glassdoor.com/Reviews/Starbucks-Reviews-E2202.htm","hasEmployerResponse": true,"employerResponse": "Thank you for sharing your feedback. We value your input and will take it into consideration as we strive to grow and provide the best experience for our partners.","employerResponseDate": "2026-10-15T07:24:49.537","employerResponderTitle": "Content Specialist","source": "glassdoor.com","scrapedAt": "2026-10-18T22:27:30.453Z"}
Every field is present in standard mode, with null for missing values; excludeEmptyFields drops empties instead. employmentLength is the tenure exactly as Glassdoor shows it, and yearsAtCompany is its lower bound in full years (0 = less than a year; null when the reviewer didn't say). The Output tab has four views — Overview, Ratings, Employer replies and Changes (incremental) — plus a Company summaries link to the COMPANIES record.
♻️ How to monitor Glassdoor reviews with incremental mode
Turn on Only new and changed reviews, give the watch list a Monitor name (stateKey), run it once to seed the baseline, then add a schedule (daily or weekly) on the Schedules tab. Each later run emits only NEW reviews and UPDATED ones — edited, or with a new employer reply (responseAdded: true) — each tagged with changeType and firstSeenAt. With the default newest-first sort, reading stops as soon as it reaches reviews you already have, so a quiet week costs almost nothing: after the baseline you pay for new and changed reviews only, not for everything you track. Set emitUnchanged to get the full list every time.
The company summary's reviewsLast7Days and reviewsLast30Days show how busy each company is, so you can pick a sensible schedule.
🔔 How to set up Glassdoor review alerts
Get pinged when matching reviews appear. Fill in only the channels you want:
| Channel | What to configure |
|---|---|
| ✈️ Telegram | telegramToken (from @BotFather) + telegramChatId |
| 💬 Slack | slackWebhookUrl (Incoming Webhook URL) |
| 🎮 Discord | discordWebhookUrl (channel webhook URL) |
| 🪝 Webhook | webhookUrl (+ optional webhookHeaders) receives the reviews as JSON — ideal for n8n, Make or Zapier |
Each alert lists the company, rating, title, job title, change type and a link; notificationLimit (1–20, default 5) sets how many reviews each message shows. Channels fire independently and a failed alert never breaks the run. Credentials are secret inputs — encrypted, masked in the UI and never logged. Pair alerts with incremental mode to hear only about genuinely new reviews.
💡 What can you do with Glassdoor review data?
- Employer branding — track new reviews and replies across your brand and locations; the Employer replies view shows which negative reviews are still unanswered.
- Competitive talent intelligence — compare culture, pay, leadership and work-life ratings across competitors, filtered to the job titles you hire for.
- HR analytics and attrition research — filter to current employees, a location or a date window and load clean rows into your BI tool.
- Investment and ESG research — employee sentiment, CEO approval and business outlook are early signals; review velocity shows when a company suddenly gets louder.
- Recruiting and sales prospecting — find companies whose staff complain about pay, overtime or remote policy with the keyword filter.
- AI agents and LLM pipelines — feed compact review JSON into theme extraction, summaries or sentiment scoring, or use the Actor as an MCP tool.
💰 How much does it cost to scrape Glassdoor reviews?
This Actor uses Apify's pay-per-event model: a small fee when a run starts plus a fee for each review row saved — see the Pricing tab for current numbers. The company summary is never charged. Filters, date ranges and incremental mode all cut the bill, because reviews you exclude are never billed.
🔌 Integrations & export
Export to JSON, CSV, Excel or an HTML table, or pull from the REST API and the JavaScript / Python clients. Runs on a schedule, connects to Google Sheets, Slack, Make, Zapier and n8n, and works as an MCP tool for AI agents.
Hiring research too? Our Glassdoor Job Scraper covers Glassdoor job listings across 22 countries with salaries and company ratings.
🔗 Using the Glassdoor Reviews API
Run this Actor from your own code. Example with the Apify Python client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run_input = {"companyNames": ["Starbucks"],"maxReviews": 100,"starRatings": ["1", "2"],"dateFrom": "90 days",}run = client.actor("corvuslab/glassdoor-reviews-scraper").call(run_input=run_input)for review in client.dataset(run["defaultDatasetId"]).iterate_items():print(review["postedDate"], review["ratingOverall"], review["title"])companies = client.key_value_store(run["defaultKeyValueStoreId"]).get_record("COMPANIES")
It also works with the JavaScript/TypeScript client, the Apify CLI and the REST API.
❓ FAQ
Do I need a Glassdoor account? No. The Actor reads publicly visible reviews — no account, cookies or setup.
How many reviews can I get per company? The full history: set maxReviews to 0 and you get every review that matches your filters (a complete pull of an 883-review employer returned all 883). A run stops at 250,000 reviews in total; split larger jobs by language or date range.
Why are some sub-ratings, job titles or locations empty? The reviewer skipped them. Skipped ratings are null, never 0, so averages stay correct. Recent reviews rate each category about nine times in ten; older ones skip more often (diversity & inclusion is a newer category). Most reviews carry a job title and about two in three or more a location.
Does the keyword filter work in every language? It works best in English. For non-English monitoring, combine a language filter with a date range instead.
Are translated originals, benefits or the review-location tree included? No. Glassdoor does not show them to logged-out readers. Everything else on the company summary, including offices with their own ratings, is included.
What if a company name matches the wrong company? The match is written to the log. For ambiguous names, paste the company's Glassdoor link or numeric id instead.
⚖️ Is it legal to scrape Glassdoor reviews?
This Actor collects only publicly available review data. You're responsible for how you use it — in particular any personal information such as a reviewer's job title and location — and for complying with Glassdoor's terms and applicable law (including the GDPR/LGPD where they apply). Not affiliated with, endorsed by or sponsored by Glassdoor, Inc.
Keywords: glassdoor scraper · glassdoor reviews scraper · glassdoor api · glassdoor.com scraper · scrape glassdoor reviews · glassdoor employee reviews · company reviews scraper · employer reviews · glassdoor ratings · pros and cons · employer replies · glassdoor review monitoring · employer branding · HR analytics · export to CSV · export to Excel · no-code scraper · MCP tool for AI agents