Glassdoor Company Overview Universal Scraper avatar

Glassdoor Company Overview Universal Scraper

Pricing

from $3.40 / 1,000 results

Go to Apify Store
Glassdoor Company Overview Universal Scraper

Glassdoor Company Overview Universal Scraper

๐Ÿข Get the full Glassdoor profile of any company from its name or URL: rating & 6 sub-ratings, CEO approval, recommend-to-friend, business outlook, review/salary/benefit/job counts, size, HQ, industry, revenue, website, founding year, CEO, competitors, awards. No login, no proxy.

Pricing

from $3.40 / 1,000 results

Rating

0.0

(0)

Developer

Scrapifier

Scrapifier

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 hours ago

Last modified

Share

Glassdoor Company Overview Scraper

Scrape the full company profile from Glassdoor by company name or Glassdoor URL and export it as JSON, CSV or Excel, or pull it straight from the API.

โšก For every company you get the overall rating and all six sub-ratings (career opportunities, compensation and benefits, culture and values, diversity and inclusion, senior management, work-life balance), CEO approval, recommend-to-friend and positive business outlook percentages, the review, salary, benefit, photo and job counts, size, headquarters, industry and sector, revenue bucket, stock ticker, website, founding year, CEO name, description, mission, competitors, Best Places to Work awards, the links to every Glassdoor section of the company and, optionally, ratings by demographic group. One row per company, with no login, no cookies and no proxy. You pay per company.

Apify Actor

๐ŸŽฏ Why scrape Glassdoor company profiles?

  • Lead enrichment: turn 500 company names into rating, headcount, headquarters, industry, revenue bucket and website, joined back to your CRM with matchedInput.
  • Employer branding: schedule a weekly run on your company and its competitors and chart rating, ceoApprovalPercent and recommendToFriendPercent over time.
  • Due diligence and investing: employee rating, CEO approval and business outlook for a whole portfolio or target list, one input per company.
  • Recruiting and job search: size, HQ, culture ratings and open job count of a future employer in one row before you apply.
  • Data pipelines: the links block hands you the reviews, salaries, interviews and jobs URLs for the other Glassdoor scrapers.

๐Ÿ“Š What data does Glassdoor Company Overview Scraper extract?

FieldDescription
employerIdGlassdoor employer id
nameCompany name
urlGlassdoor overview page of the company
logoUrlSquare logo
websiteCompany website
headquartersHeadquarters (city, state or country)
yearFoundedFounding year
companyTypeCompany - Public, Company - Private, Nonprofit...
size, sizeCategoryEmployee count bucket (for example 10000+ Employees) and its category (SMALL to GIANT)
revenueRevenue bucket (for example $10+ billion (USD))
stockSymbolTicker when the company is public
industry, industryId, sector, sectorIdPrimary industry and sector with their Glassdoor ids
ceoNameCEO name
description, missionCompany description and mission statement
ratingOverall rating (1 to 5)
ratings.*The six sub-ratings: careerOpportunities, compensationAndBenefits, cultureAndValues, diversityAndInclusion, seniorManagement, workLifeBalance
recommendToFriendPercentPercentage of employees who would recommend the company to a friend
ceoApprovalPercentPercentage of CEO approval
positiveBusinessOutlookPercentPercentage of positive business outlook
reviewCount, salaryCount, benefitCount, photoCount, jobCountNumber of reviews, salary reports, benefit reviews, photos and open jobs
competitors[]Competitors as { employerId, name }
awards.*bestPlacesToWork years, bestLedCompanies years, topCeo boolean
links.*reviews, salaries, interviews, jobs, benefits, photos, faq pages of the company
demographicRatings.*Ratings by gender, race/ethnicity, sexual orientation, disability, parent/caregiver and veteran status, when includeDemographicRatings is on
matchedInputThe name or URL of your input that produced this row

With flatten enabled, the sub-ratings become rating_* columns, the links url_* columns, the awards award_bestPlacesToWork, award_bestLedCompanies and award_topCeo, competitors a | separated string, and demographic ratings are dropped so the CSV stays flat.

๐Ÿš€ How to scrape Glassdoor company profiles

  1. Open the Actor and type company names in companyNames (Google, Deloitte, Airbnb; exact spelling is not required), or paste Glassdoor company URLs in startUrls (Overview, Reviews, Salaries, Interviews, Jobs or Benefits page).
  2. Tick Include demographic ratings if you want the average rating given by each demographic group.
  3. Tick Flatten output if you plan to open the result in Excel or Google Sheets.
  4. Click Start. The Actor passes Glassdoor's Cloudflare check once, resolves each name to its employer id, then reads every profile from Glassdoor's own company API.
  5. Open the Storage tab to preview the companies and export them as JSON, CSV, Excel or XML, or read them from the dataset API.

The same run can be started from the Apify API, the Python or JavaScript client, or put on a schedule for weekly monitoring.

๐Ÿ“ฅ Input parameters

FieldKeyTypeDefaultDescription
Glassdoor company URLsstartUrlsarray of URLsnoneAny Glassdoor page of a company (Overview, Reviews, Salaries, Interviews, Jobs or Benefits URL). One company profile per URL.
Company namescompanyNamesarray of strings["Google", "Microsoft", "Airbnb"]Company names, resolved with Glassdoor's own search. Exact spelling is not required.
Include demographic ratingsincludeDemographicRatingsbooleanfalseAdd the average rating given by each demographic group (gender, race/ethnicity, sexual orientation, disability, parent/caregiver, veteran status) when Glassdoor publishes them.
Flatten output (CSV / Excel friendly)flattenbooleanfalseOne flat row per company: rating_*, url_* and award_* columns, competitors as a | separated string. Demographic ratings are dropped.
Report input statusemitInputStatusbooleantrueWrite an input_status report to the OUTPUT record (which company returned nothing, and why).
Max Cloudflare retriesmaxChallengeRetriesinteger8How many times to reload the page while waiting for Glassdoor's Cloudflare check to clear (1 to 20).
Proxy (not recommended)proxyConfigurationobjectnoneLeave empty: Glassdoor blocks proxy IP ranges but accepts Apify's own egress IP. Only set it if you need a specific country egress.

Example input:

{
"companyNames": ["Google", "Microsoft", "Airbnb"],
"startUrls": [{ "url": "https://www.glassdoor.com/Overview/Working-at-Deloitte-EI_IE2763.11,19.htm" }]
}

Each input produces exactly one company, and a company given both by name and by URL is returned once. A pasted URL must contain the Glassdoor employer id (E9079 or EI_IE9079 in the path); Overview, Reviews, Salaries, Interviews, Jobs, Benefits, Photos and FAQ pages all work. To discover companies by location, industry, rating or size instead, use the sibling Glassdoor Company Search Scraper.

๐Ÿ“ค Output example

Each company is one dataset item, exportable as JSON, CSV, Excel or via the API.

{
"employerId": 9079,
"name": "Google",
"url": "https://www.glassdoor.com/Overview/Working-at-Google-EI_IE9079.11,17.htm",
"website": "https://goo.gle/4ehVuXi",
"headquarters": "Mountain View, CA",
"yearFounded": 1998,
"companyType": "Company - Public",
"size": "10000+ Employees",
"sizeCategory": "GIANT",
"revenue": "$10+ billion (USD)",
"stockSymbol": "GOOG",
"industry": "Internet & Web Services",
"sector": "Information Technology",
"ceoName": "Sundar Pichai",
"mission": "Organize the world's information and make it universally accessible and useful.",
"rating": 4.4,
"ratings": {
"careerOpportunities": 4.2,
"compensationAndBenefits": 4.5,
"cultureAndValues": 4.2,
"diversityAndInclusion": 4.4,
"seniorManagement": 3.9,
"workLifeBalance": 4.2
},
"recommendToFriendPercent": 87,
"ceoApprovalPercent": 83,
"positiveBusinessOutlookPercent": 82,
"reviewCount": 70954,
"salaryCount": 191450,
"benefitCount": 30289,
"photoCount": 621,
"jobCount": 5419,
"competitors": [
{ "employerId": 1651, "name": "Microsoft" },
{ "employerId": 1138, "name": "Apple" },
{ "employerId": 40772, "name": "Meta" }
],
"awards": { "bestPlacesToWork": ["2026"], "bestLedCompanies": [], "topCeo": false },
"links": {
"reviews": "https://www.glassdoor.com/Reviews/Google-Reviews-E9079.htm",
"salaries": "https://www.glassdoor.com/Salary/Google-Salaries-E9079.htm",
"interviews": "https://www.glassdoor.com/Interview/Google-Interview-Questions-E9079.htm",
"jobs": "https://www.glassdoor.com/Jobs/Google-Jobs-E9079.htm"
},
"matchedInput": "Google"
}

With includeDemographicRatings set to true, each item also carries a demographicRatings block:

{
"demographicRatings": {
"gender": { "man": 4.3, "woman": 4.2, "nonBinary": 4 },
"raceEthnicity": { "asian": 4.4, "white": 4.1, "blackOrAfricanAmerican": 4.3, "hispanicOrLatinx": 4.3 },
"sexualOrientation": { "yes": 4, "no": 4.3 },
"disability": { "yes": 3.8, "no": 4.3 },
"parentOrCaregiver": { "parentOrGuardian": 4.1, "caregiver": 4.2, "no": 4.3 },
"veteranStatus": { "yes": 4.1, "no": 4.3 }
}
}

The run's OUTPUT record also holds the run statistics (companies, duplicates, requests, errors) and, per input, an input_status entry with the resolved employer id and a status: ok, ok_best_match, duplicate, not_found, error or no_employer_id.

๐Ÿ’ก Ready-to-run examples

Big Tech snapshot (tested)

{ "companyNames": ["Google", "Microsoft", "Apple", "Meta", "Amazon", "Netflix"] }

Big Four and MBB consulting firms compared, flat CSV (tested)

{ "companyNames": ["Deloitte", "PwC", "EY", "KPMG", "McKinsey & Company", "Boston Consulting Group", "Bain & Company", "Accenture"], "flatten": true }

Company profiles from Glassdoor URLs, any section works (tested)

{ "startUrls": [
{ "url": "https://www.glassdoor.com/Overview/Working-at-Airbnb-EI_IE391850.11,17.htm" },
{ "url": "https://www.glassdoor.com/Reviews/Stripe-Reviews-E671932.htm" },
{ "url": "https://www.glassdoor.com/Salary/Spotify-Salaries-E408251.htm" }
] }

Profiles with ratings by demographic group

{ "companyNames": ["Google", "Microsoft", "Airbnb"], "includeDemographicRatings": true }

๐Ÿ’ฐ Pricing: how much does it cost to scrape Glassdoor company profiles?

From $5.00 per 1,000 companies on the free plan, with automatic volume discounts down to $3.40 per 1,000 on higher Apify plans. You pay only for the results you receive, there is no subscription and no start fee. New Apify accounts get free monthly platform credits to try it.

Cost is driven purely by the number of companies returned, and each name or URL produces exactly one company, so the size of your input list is your cap. A company that is not found, or given twice, is not charged twice.

โš™๏ธ Performance, proxies and limits

  • No proxy needed, and not recommended. Glassdoor sits behind Cloudflare and blocks proxy IP ranges (residential and datacenter), but accepts Apify's own egress IP. The Actor opens a real browser, clears the check once, then calls Glassdoor's own company API from the page. Leave proxyConfiguration empty unless you need a specific country egress; if set, one sticky IP is kept for the whole run because Cloudflare binds its clearance to the IP.
  • Speed: about 1 company per 2 seconds after the roughly 10 second start-up (a 1.5 second pause between companies respects Glassdoor's rate limits). 100 companies take about 3.5 minutes.
  • Memory: the default run option is 2048 MB, with a 3600 second timeout.
  • Name resolution: names go through Glassdoor's autocomplete, the exact ("direct hit") company wins, otherwise the first suggestion. The Actor then scans up to 3 pages of Glassdoor's company search for that employer id; if the index disagrees (rare, merged profiles), it returns the best name match with the status ok_best_match.
  • Deduplication: companies are deduplicated by employerId within a run, so a company given by name and by URL is returned once. Results are pushed to the dataset in batches of 100.
  • Empty input: if neither names nor URLs are given, the Actor falls back to an unfiltered Glassdoor company search and returns the first 100 companies.
  • Blocked runs: the Cloudflare check is reloaded up to maxChallengeRetries times (default 8). If it never clears, the run ends with cloudflare_blocked in the OUTPUT record; retry later. A transient 401 or 403 triggers one re-check and up to 3 retries per call.
  • Not found: an unknown name or a URL without an employer id produces no item, only an input_status entry (not_found, no_employer_id), and the run goes on.

๐Ÿ”Œ Integrations and API

Run Glassdoor Company Overview Scraper from the Apify API, the Python or JavaScript client, or on a schedule. Connect it to Make, Zapier, n8n, Google Sheets, Slack or any webhook through Apify integrations. Every run's dataset is available as JSON, CSV, Excel or XML from the dataset API.

curl -X POST "https://api.apify.com/v2/acts/scrapifier~glassdoor-company-overview-universal-scraper/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-d '{ "companyNames": ["Google", "Microsoft", "Airbnb"] }'

โ“ FAQ

Is it legal to scrape Glassdoor company profiles?

The Actor only reads company data that Glassdoor publishes to anyone without logging in. Profiles hold little personal data (the CEO's name), but process the output in line with GDPR and other privacy laws, respect Glassdoor's terms of use, and stay responsible for how you use the data. This is not legal advice.

Do I need a Glassdoor account, login or cookies?

No. Nothing to log in to, no cookies to paste, no proxy to configure.

Can I export Glassdoor company data to Excel or Google Sheets?

Yes. Every run's dataset downloads as CSV, XLSX, JSON or XML from the Storage tab, and the Google Sheets integration can push new rows to a sheet automatically. Turn on flatten so sub-ratings, links and awards become plain columns.

How many companies can I scrape in one run?

One company per name or URL you give: the length of your input list is the only limit, and cost scales with it. At about 1 company per 2 seconds, 500 companies fit comfortably in the default 3600 second timeout.

What happens if a company name is ambiguous or not found?

Glassdoor's autocomplete picks the exact match first, then its first suggestion, and matchedInput tells you which input produced each row. An unknown name gets a not_found entry in input_status. For ambiguous names, add a distinguishing word (Orange France) or paste the Glassdoor URL.

Does it also return the reviews, salaries or interviews themselves?

Not this Actor: it returns the counts and the links to those pages. Feed links.reviews, links.salaries or links.interviews into the sibling scrapers below.

Why does the Actor refuse a proxy and what if a run is blocked?

Glassdoor blocks known proxy and hosting IP ranges but accepts Apify's egress IP, so the Actor runs without a proxy. If a run ends with cloudflare_blocked, retry later or raise maxChallengeRetries; input_status shows which inputs were processed.

๐Ÿ’ฌ Support

Questions, bugs or a feature request? Open an issue in the Issues tab of this Actor, I answer quickly. If Glassdoor Company Overview Scraper saves you time, a rating on the Store helps others find it.