Our Methodology
SalaryTruth provides real salary data by role and city using federal wage statistics — not self-reported surveys or job postings. We show what people actually earn, not what employers claim to offer.
Data Sources
Our primary data source is the Bureau of Labor Statistics Occupational Employment and Wage Statistics (OEWS) program. OEWS is a semiannual survey of approximately 1.1 million establishments, producing employment and wage estimates for over 800 occupations across the US, by state, and by metropolitan area.
Unlike self-reported salary surveys (Glassdoor, Levels.fyi), OEWS data is collected directly from employer payroll records, making it the most reliable source of actual compensation data in the United States.
We supplement with BLS Regional Price Parities and BLS Consumer Price Index data for cost-of-living adjustments across cities.
Percentile Breakdowns
For every role-city combination, we show the full wage distribution at five percentiles:
- 10th percentile — Entry level or lowest-paid workers in this role
- 25th percentile — Below-median but established workers
- 50th percentile (median) — The midpoint. Half earn more, half earn less.
- 75th percentile — Experienced workers or those at high-paying employers
- 90th percentile — Top earners, typically senior specialists or high-cost-of-living areas
This distribution is far more useful than a single average, because it shows what you can realistically expect at different career stages.
Cost-of-Living Adjustments
A $100,000 salary in San Francisco is not the same as $100,000 in Austin. We use BLS Regional Price Parities (RPPs) to calculate COL-adjusted salaries, showing what your nominal salary is actually worth in purchasing power. This enables fair comparisons between cities.
Data Collection Process
We download OEWS data files from the BLS, map SOC (Standard Occupational Classification) codes to user-friendly role names, and join with geographic cost-of-living data. All calculations preserve the BLS's original wage estimates without modification.
Update Frequency
BLS publishes updated OEWS data annually, typically in the spring for data collected in the prior year (combining May and November survey rounds). We refresh our dataset within two weeks of each BLS release.
Known Limitations
- OEWS data measures base wages and salary only. It does not include bonuses, stock options, RSUs, commissions, tips, or benefits. For tech roles and executive positions, total compensation may significantly exceed the reported salary.
- OEWS surveys establishments (employers), not individuals. Self-employed workers, gig workers, and independent contractors are excluded.
- Metropolitan area definitions may not match common geographic understanding — BLS metro areas are defined by commuting patterns and may include suburban and exurban communities.
- Occupational categories (SOC codes) are broad. "Software Developer" includes everyone from junior frontend developers to principal engineers, which means the range between 10th and 90th percentile can be very wide.
How to Cite This Data
If you use data from SalaryTruth, please cite:
SalaryTruth. "[Role] Salary Data in [City]." salarytruth.org, 2026. Accessed [date].
Underlying data is sourced from the Bureau of Labor Statistics OEWS program and is in the public domain.