Glassdoor Jobs Scraper
Pricing
from $5.00 / 1,000 results
Glassdoor Jobs Scraper
Scrape job listings from Glassdoor by keyword, location, or company URL. Extracts job title, company, salary estimates, location, skills, and more.
Pricing
from $5.00 / 1,000 results
Rating
5.0
(17)
Developer
Crawler Bros
Actor stats
18
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape job listings from Glassdoor by keyword, location, or company page URL. Get job titles, companies, salary estimates, locations, skills, and more.
What is Glassdoor Jobs Scraper?
Glassdoor Jobs Scraper is an Apify actor that extracts job listings from Glassdoor's job search. Enter a keyword, optional location, or a direct company jobs URL, and get structured job data including salary estimates, company ratings, skills, and application details.
Features
- Search by keyword — Find jobs matching any title, skill, or role
- Location filtering — Narrow results to a specific city, state, or country
- Company page support — Scrape jobs directly from a company's Glassdoor page
- Salary estimates — Get min, median, and max salary data with currency and period
- Company ratings — Overall employer rating included with each listing
- Skills extraction — Key skills required for each position
- Pagination — Automatically scrape multiple pages of results
- Easy Apply flag — Identify jobs with Glassdoor Easy Apply
Use Cases
- Job market research — Analyze hiring trends, salary ranges, and in-demand skills
- Salary benchmarking — Compare compensation across companies, roles, and locations
- Competitive analysis — Monitor competitor hiring patterns and open positions
- Lead generation — Find companies actively hiring in your target industry
- Career monitoring — Track new job postings matching your criteria
- Recruitment intelligence — Identify expanding companies in specific locations
Input
| Field | Type | Default | Description |
|---|---|---|---|
| Search Keyword | String | — | Job search keyword (e.g., "software engineer", "data scientist"). Required unless Company Jobs URL is provided. |
| Location | String | — | Location to search in (e.g., "New York, NY", "London"). Leave empty for worldwide results. |
| Company Jobs URL | String | — | Direct Glassdoor company jobs page URL. If provided, keyword and location are ignored. |
| Maximum Items | Integer | 50 | Max job listings to scrape (1–500). |
Note: At least one of Search Keyword or Company Jobs URL must be provided.
Example input — Keyword search
{"keyword": "software engineer","location": "New York, NY","maxItems": 50}
Example input — Company page
{"companyUrl": "https://www.glassdoor.com/Jobs/Google-Jobs-E9079.htm","maxItems": 100}
Output
Each job listing produces one item in the output dataset:
| Field | Type | Description |
|---|---|---|
| jobListingId | Integer | Glassdoor's unique job listing ID |
| jobTitle | String | Job position title |
| companyName | String | Hiring company name |
| companyId | Integer | Glassdoor company ID |
| companyRating | Number | Overall employer rating (1.0–5.0) |
| companyLogo | String | URL to the company logo image |
| location | String | Job location |
| ageInDays | Integer | Days since the job was posted |
| easyApply | Boolean | Whether Glassdoor Easy Apply is available |
| isSponsored | Boolean | Whether the listing is a sponsored/promoted result |
| salary_min | Integer | Estimated minimum annual salary |
| salary_median | Integer | Estimated median annual salary |
| salary_max | Integer | Estimated maximum annual salary |
| salaryCurrency | String | Salary currency code (e.g., "USD") |
| salaryPeriod | String | Pay period (e.g., "ANNUAL", "HOURLY") |
| salarySource | String | Source of salary data (e.g., "ESTIMATED", "EMPLOYER") |
| description | String | Job description snippet |
| jobUrl | String | Direct link to the job listing on Glassdoor |
| skills | Array | List of required skills extracted from the listing |
Sample output
{"jobListingId": 1234567890,"jobTitle": "Senior Software Engineer","companyName": "Google","companyId": 9079,"companyRating": 4.3,"companyLogo": "https://media.glassdoor.com/sql/9079/google-squarelogo.png","location": "Mountain View, CA","ageInDays": 3,"easyApply": false,"isSponsored": false,"salary_min": 150000,"salary_median": 185000,"salary_max": 220000,"salaryCurrency": "USD","salaryPeriod": "ANNUAL","salarySource": "ESTIMATED","description": "We are looking for a Senior Software Engineer to join our team...","jobUrl": "https://www.glassdoor.com/job-listing/senior-software-engineer-google-JV_IC1234.htm","skills": ["Python", "Java", "Distributed Systems", "Cloud Computing"]}
How to use
Quick start
- Enter a job title or keyword in the Search Keyword field
- Optionally enter a Location to narrow results
- Set Maximum Items to control how many listings to scrape
- Click Start and wait for results
Scrape a specific company's jobs
- Go to a company's Glassdoor page (e.g., glassdoor.com/Jobs/Google-Jobs-E9079.htm)
- Copy the URL from your browser
- Paste it into the Company Jobs URL field
- Click Start
How many jobs can I scrape?
Glassdoor typically shows 30 jobs per page and up to ~30 pages. With pagination, you can scrape up to approximately 500–900 jobs per search query. To get more results:
- Use different keyword variations
- Search different locations separately
- Use specific company page URLs
Tips
- Start small — Use
maxItems: 5for your first run to verify the output - Keyword-only is fastest — Location adds an extra resolution step
- Company URLs are most reliable — Direct company page URLs bypass search entirely
- Salary data is estimated — Most salary figures are Glassdoor estimates, not employer-provided
FAQ
Do I need a Glassdoor account? No. The scraper works without any login or cookies.
Why does the scraper use residential proxy? Glassdoor uses DataDome anti-bot protection. Residential proxy is required to bypass this on Apify's data center IPs. The proxy is automatically configured.
How fast is the scraper? Approximately 30 jobs per 30–60 seconds. The first page takes longer due to browser startup and anti-bot challenge resolution.
Why are some salary fields zero? Not all job listings have salary data. Glassdoor provides salary estimates for many but not all positions.
Why did I get fewer jobs than maxItems? The search may have fewer matching results, or some pages may be blocked by anti-bot measures. The scraper retries with new sessions automatically.
Can I search without a location? Yes. Leave the Location field empty to get worldwide results.
What if the scraper fails? Glassdoor's anti-bot protection means some sessions will be blocked. The scraper automatically retries with new browser sessions (up to 5 attempts). If it consistently fails, try again later — the IP rotation provides fresh sessions each run.