Job Market Analyzer — Multi-Platform Salary & Demand
Pricing
Pay per usage
Job Market Analyzer — Multi-Platform Salary & Demand
Meta-actor that searches 5 job platforms simultaneously. Provides unified listings with normalized salaries, skills extraction, remote/hybrid/onsite classification, experience level detection, and comprehensive market analytics including salary distributions and top hiring companies.
Pricing
Pay per usage
Rating
0.0
(0)
Developer

Ricardo Akiyoshi
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
Job Market Analyzer — Multi-Platform Salary & Demand Intelligence
Analyze job markets across 5 major platforms in a single run. Get unified listings, salary benchmarks, skill demand rankings, and hiring trends — no manual searching required.
Platforms Covered
| Platform | Data Collected |
|---|---|
| Indeed | Job title, company, salary, location, description snippets |
| LinkedIn Jobs | Job title, company, salary ranges, location, seniority level |
| Glassdoor | Job title, company, salary estimates, location, ratings context |
| Wellfound | Startup jobs, equity info, salary, remote-first roles |
| Upwork | Freelance rates, budget ranges, required skills, proposals |
Use Cases
- Job seekers — Compare salaries across platforms for the same role. Find which platform has the most openings for your skills. Filter by remote, experience level, and minimum salary.
- Recruiters & HR — Benchmark compensation packages against market data. Identify which skills are most in demand for specific roles. Track hiring trends by location and work type.
- Salary benchmarking — Get median, mean, P10-P90 salary data broken down by platform, experience level, and location. See salary distributions in $25K buckets.
- Market research — Discover top hiring companies, most requested skill combinations, remote vs onsite ratios, and job freshness metrics across the entire market.
- Freelancers — Compare full-time salaries against Upwork freelance rates. Identify the highest-paying skill combinations.
What You Get
Unified Job Listings
Every job is normalized into a consistent format:
- Title — Job title as posted
- Company — Hiring company name
- Salary — Raw + normalized annual USD equivalent (handles hourly/monthly/yearly)
- Location — City/state/country
- Work type — Remote / Hybrid / Onsite (auto-classified from text)
- Experience level — Entry / Mid / Senior (detected from title + description)
- Skills — Extracted from description (100+ known tech and business skills)
- Posted date — Normalized from relative time strings
- URL — Direct link to the original listing
- Platform — Source platform
Market Analytics Dashboard
The summary output includes:
- Salary statistics — Mean, median, min, max, P10/P25/P75/P90 (overall + by platform + by experience)
- Salary distribution — Histogram buckets for visualization
- Top 30 skills in demand — With count and percentage
- Top skill pairs — Most common skill co-occurrences
- Top 20 hiring companies — Ranked by number of openings
- Work type breakdown — Remote vs hybrid vs onsite percentages
- Experience level breakdown — Entry vs mid vs senior distribution
- Top 15 locations — Where the jobs are concentrated
- Freshness report — Jobs posted in last 24h, 7d, 30d
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
jobTitle | String | Yes | — | Job title or keywords (e.g., "Data Engineer") |
location | String | No | Any | City, state, country, or "Remote" |
remoteOnly | Boolean | No | false | Only return remote positions |
experienceLevel | Enum | No | any | Filter: entry, mid, senior, or any |
salaryMin | Integer | No | — | Minimum annual salary in USD |
maxResults | Integer | No | 200 | Max results per platform (total up to 5x) |
proxyConfiguration | Object | No | — | Proxy settings (residential recommended) |
Example Input
{"jobTitle": "Data Engineer","location": "Remote","remoteOnly": true,"experienceLevel": "mid","salaryMin": 100000,"maxResults": 100,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Example Output
Summary Record
{"type": "summary","query": {"jobTitle": "Data Engineer","location": "Remote","remoteOnly": true,"experienceLevel": "mid","salaryMin": 100000},"results": {"totalRaw": 847,"afterDedup": 623,"afterFiltering": 412},"analytics": {"totalJobs": 412,"salary": {"overall": {"mean": 142000,"median": 135000,"min": 100000,"max": 285000,"p10": 105000,"p90": 195000}},"topSkills": [{ "skill": "SQL", "count": 328, "percentage": 79.6 },{ "skill": "Python", "count": 301, "percentage": 73.1 },{ "skill": "AWS", "count": 245, "percentage": 59.5 }],"workType": {"remote": { "count": 412, "percentage": 100.0 }}}}
Job Record
{"type": "job","title": "Senior Data Engineer","company": "Stripe","location": "Remote, US","salaryRaw": "$160K - $210K/year","salary": { "min": 160000, "max": 210000, "currency": "USD", "period": "year" },"annualized": { "annualMin": 160000, "annualMax": 210000, "annualMid": 185000 },"workType": "remote","experienceLevel": "senior","skills": ["Python", "SQL", "Spark", "AWS", "Kafka", "Airflow", "dbt"],"postedDate": "2026-02-28","url": "https://www.indeed.com/viewjob?jk=abc123","platform": "Indeed"}
Pricing
Pay Per Event — $0.008 per job analyzed.
| Jobs Analyzed | Cost |
|---|---|
| 100 jobs | $0.80 |
| 500 jobs | $4.00 |
| 1,000 jobs | $8.00 |
You only pay for jobs that are successfully parsed and returned. No charge for failed requests or empty pages.
Tips for Best Results
- Use residential proxies — Job sites aggressively block datacenter IPs. Residential proxies dramatically improve success rates.
- Start with 50-100 max results — Test your query first, then scale up.
- Be specific with job titles — "Senior React Developer" yields better results than "developer".
- Combine with location — Even for remote searches, specifying a country helps platforms return relevant results.
- Run weekly — Job markets shift fast. Schedule weekly runs to track trends over time.
Data Processing
- Salary normalization — Hourly, daily, weekly, monthly, and yearly rates are all converted to annual USD equivalents for apples-to-apples comparison.
- Skill extraction — 100+ tech and business skills are detected using pattern matching against job titles and descriptions.
- De-duplication — Cross-platform duplicates (same job posted on multiple sites) are merged, keeping the version with the most data.
- Work-type classification — Remote, hybrid, and onsite labels are inferred from title, description, and location keywords.
- Experience detection — Entry, mid, and senior levels are detected from title keywords, years-of-experience mentions, and seniority indicators.
Limitations
- Salary data is only available when platforms display it (roughly 30-50% of listings).
- Some platforms may block requests even with proxies. The actor retries failed pages automatically.
- Upwork listings are freelance/contract roles — salary normalization assumes full-time equivalent for comparison.
- LinkedIn public search has limited results without authentication.
Support
Found a bug or have a feature request? Open an issue on the actor's page or contact the developer.