Levels.fyi Scraper (Tech Salary & Total Compensation) avatar

Levels.fyi Scraper (Tech Salary & Total Compensation)

Pricing

from $14.18 / 1,000 compensation records

Go to Apify Store
Levels.fyi Scraper (Tech Salary & Total Compensation)

Levels.fyi Scraper (Tech Salary & Total Compensation)

Scrape levels.fyi crowdsourced tech compensation by company, role and location. Get total comp, base salary, stock, bonus, level, years of experience and per-level medians. Export to JSON, CSV or Excel.

Pricing

from $14.18 / 1,000 compensation records

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Levels.fyi Scraper (Tech Salary & Total Compensation)

Levels.fyi Scraper (Tech Salary & Total Compensation)

Here is one real result, with every field the actor returns:

{
"uuid": "8b8eec02-082a-4f64-88b2-c236feff29cc",
"company": "Google",
"companySlug": "google",
"title": "Software Engineer",
"jobFamily": "Software Engineer",
"role": "software-engineer",
"level": "L3",
"standardizedLevel": "L3",
"focusTag": "Full Stack",
"location": "New York, NY",
"yearsOfExperience": 1,
"yearsAtCompany": 1,
"totalCompensation": 170000,
"baseSalary": 150000,
"stockGrantValue": 20000,
"bonus": 0,
"currency": "USD",
"gender": null,
"submittedDate": "2026-07-22T18:14:36.336+00:00",
"levelMedianTotalComp": 210772,
"levelMedianBase": 165524,
"levelMedianStock": 34036,
"levelMedianBonus": 11212,
"levelSampleCount": 42,
"companyMedianTotalComp": 287499,
"companyLevelMedians": "L3:208961(1112);L4:289516(835);L5:412916(723);L6:643531(229);L7:954705(64);L8:1105136(11);L9:1786800(5)",
"aiMarketPosition": "below median for this level",
"aiNegotiationTips": [
"Highlight your unique skills and contributions",
"Research comparable offers from other companies",
"Consider negotiating for additional stock options",
"Be prepared to discuss your performance and impact"
],
"aiLevelEquivalents": "Facebook E3, Amazon L4, Microsoft SDE II",
"aiSummary": "The total compensation for this L3 Software Engineer position at Google is below the median for similar roles.",
"pageUrl": "https://www.levels.fyi/companies/google/salaries/software-engineer",
"source": "levels.fyi",
"observedAt": "2026-08-20T10:30:25.993Z"
}

The most complete tech compensation scraper available. It returns every field a crowdsourced salary submission exposes (company, title, level, focus area, location, years of experience, and the full base salary, stock and bonus breakdown behind each total comp figure), plus derived per-level medians, optional company benchmark tables and an optional AI compensation insight, and gives you four filters to target exactly the records you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Platform Coverage Output Billing

Table of contents

What it does

This actor collects crowdsourced tech total-compensation records by company, role and location. Each record is one real submission with the money split out: total compensation, base salary, annual stock grant value and bonus, tied to the company level (for example L5 or SDE II), the focus area (ML / AI, Backend, Mobile), the location, and the submitter's years of experience and years at the company.

Every record also carries the per-level medians for its role (median total comp, base, stock and bonus, plus the sample size behind them), so you can see instantly whether an offer sits above or below the level. Two optional add-ons go further: company benchmarks attach the company-wide median and the full per-level median table, and an AI compensation insight adds a market-position read, negotiation tips, comparable levels at other companies and a one-line summary.

Use it for compensation benchmarking, recruiting and sourcing, offer negotiation, and market research.

Quickstart

Give it at least a company or a role. Example input:

{
"company": "Google",
"role": "Software Engineer",
"location": "New York",
"minTotalComp": 200000,
"maxResults": 25
}
  • Company and role together pull that role at that company (richest, most records).
  • Company only pulls every role at that company.
  • Role only pulls the top-paying companies for that role.

Input reference

NameTypeRequiredDescriptionExample
companystringone of company/roleCompany to pull compensation forGoogle
rolestringone of company/roleJob family to filter bySoftware Engineer
locationstringnoKeep only records whose location contains this textNew York
minTotalCompintegernoKeep only records with total comp at or above this USD amount200000
maxResultsintegernoMax records to collect in the run (free plans capped at 10)25
companyBenchmarksbooleannoPaid add-on, off by default. Attach the company per-level median table and company-wide medianfalse
aiCompInsightbooleannoPaid add-on, off by default. Add AI market position, negotiation tips, level equivalents and summaryfalse

Output reference

NameTypeDescription
uuidstringUnique id of the compensation submission
companystringCompany name
companySlugstringCompany slug
titlestringJob title
jobFamilystringJob family (role track)
rolestringRole slug used for the query
levelstringCompany level name, for example L5 or SDE II
standardizedLevelstringStandardized ladder level name
focusTagstringFocus area, for example ML / AI, Backend, Mobile
locationstringLocation (city, region)
yearsOfExperienceintegerTotal years of experience
yearsAtCompanyintegerYears at the company
totalCompensationintegerTotal compensation in USD
baseSalaryintegerBase salary in USD
stockGrantValueintegerAverage annual stock grant value in USD
bonusintegerAverage annual bonus in USD
currencystringCompensation currency (USD)
genderstringSelf-reported gender when public
submittedDatestringOffer / submission date
levelMedianTotalCompintegerMedian total comp for this level and role
levelMedianBaseintegerMedian base salary for this level and role
levelMedianStockintegerMedian stock grant for this level and role
levelMedianBonusintegerMedian bonus for this level and role
levelSampleCountintegerNumber of samples behind the level medians
companyMedianTotalCompintegerCompany-wide median total comp (benchmarks add-on)
companyLevelMediansstringPer-level median comp table for this role (benchmarks add-on)
aiMarketPositionstringAI market-position read (AI add-on)
aiNegotiationTipsarrayAI negotiation tips (AI add-on)
aiLevelEquivalentsstringAI comparable-level equivalents at other companies (AI add-on)
aiSummarystringAI one-line summary (AI add-on)
pageUrlstringSource page URL
sourcestringData source
observedAtstringISO timestamp collected

Example output record

See the record at the top of this page, which shows every field populated (including both optional add-ons).

Run via API and CLI

Start a run with the Apify API:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~levels-fyi-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"company":"Google","role":"Software Engineer","maxResults":25}'

Run with the Apify CLI:

apify call scrapers_lat/levels-fyi-scraper \
--input '{"company":"Google","role":"Software Engineer","maxResults":25}'

Fetch results

Download the dataset items once the run finishes:

$curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_TOKEN&format=json"

Swap format=json for format=csv or format=xlsx to export to CSV or Excel.

Billing and limits

  • Pay per result: you are charged for each compensation record returned.
  • Events: an actor-start event, the primary compensation-record event, and two optional add-ons (company benchmarks and AI compensation insight) that are off by default and billed only when they return real data.
  • Empty and failed runs are never billed.
  • Free Apify plans are capped at 10 records per run; the paid add-ons are disabled on free plans.
  • The actor respects your run spend limit and stops returning records once it is reached.

FAQ and troubleshooting

Do I need a company and a role? No, at least one is enough. Company plus role gives the most records; role only fans out across the top-paying companies for that role.

Why are some money fields the same across similar records? The per-level median fields describe the whole level, so records at the same level and role share them.

Can I filter by location or pay? Yes, use location for a location contains match and minTotalComp for a floor on total compensation.

Is a login or cookie needed? No. Anti-bot handling is done for you internally.

What do the add-ons add? Company benchmarks add the company-wide median and the full per-level median table. AI compensation insight adds a market-position read, negotiation tips, comparable levels and a summary.

More scrapers at scrapers.lat

Looking for related data? Browse the full catalog of company, jobs and lead-generation scrapers at scrapers.lat.

This is an independent scraper and is not affiliated with, endorsed by, or sponsored by levels.fyi.