Salary Data Methodology
SalaryScope uses a 6-layer intelligence pipeline — not self-reported surveys, not simple cost-of-living adjustments. Every figure is derived from official government data and updated automatically.
This page explains each layer so you can verify any number yourself.
The 6-Layer Pipeline
Layer 1 — Official Data Archive
Government salary data is stored permanently and never overwritten. Each update adds a new year entry alongside the previous ones. This lets us show historical trends and clearly distinguish official figures from current estimates.
Why most salary sites get international figures wrong
Most sites calculate international salaries as:US salary × cost-of-living indexThis is wrong. A German engineer does not earn "US salary × Germany cost-of-living." They earn a salary set by German labor market conditions.
SalaryScope uses each country's actual average wage from OECD/ILO, then applies how much that occupation earns above the national average in that country's labor market.
| Tier | Source | Countries | Confidence |
|---|---|---|---|
| BLS OEWS | BLS May 2025 (latest) Employer-reported, 1.1M payrolls, released May 2026 | United States — all metro areas | 96% Official |
| OECD | OECD AV_AN_WAGE 2024 PPP-adjusted USD, annual averages, released late 2025 | 38 OECD members | 96% Official |
| ILO | ILO ILOSTAT 2024 Mean wages, PPP-converted | Singapore, India, Brazil, UAE, China… | 89% Adjusted |
| World Bank | World Bank GNI/cap 2024 GNI × labor income share (0.40–0.60) | Nigeria, Bangladesh, Ethiopia… | 74% Estimated |
Layer 2 — Economic Signals (Daily)
Government data is published annually. Economic conditions change constantly. Layer 2 fetches current macroeconomic signals daily and stores them per country:
When the FRED API key is configured, US signals use live data. Other countries use calibrated fallback values updated quarterly from OECD Economic Outlook and ECB Statistical Warehouse.
Layer 3 — SalaryScope Estimate
The SalaryScope Estimate adjusts official salary data forward to current market conditions. It is computed per country per occupation and shown alongside the official figure:
The Full Salary Formula
Layer 4 — Enhanced Confidence Score
Every salary figure shows a confidence score that reflects how reliable the underlying data is. The formula has four components:
Layer 5 — Data Versioning
Old data is never deleted. Each update adds a new year entry. This lets SalaryScope show: the official published salary, the current market estimate, and historical trends — all distinguished clearly on every page.
The 6-year trend is displayed on every salary city page. CAGR (compound annual growth rate) is computed automatically and shown on the Top Movers page.
Layer 6 — Smart ISR Regeneration
Rather than rebuilding the entire site on every data update, SalaryScope uses Next.js Incremental Static Regeneration (ISR) with staggered revalidation periods. Only affected pages are rebuilt when data changes — saving compute and improving deploy reliability.
| Data source | Cron schedule | Rationale |
|---|---|---|
| Economic signals (inflation, FX, demand) | Every 4 hours | FX and macro move frequently |
| BLS OEWS job salaries | Monthly | BLS publishes annually — monthly is sufficient |
| OECD / ILO international wages | Monthly | Annual releases; monthly catch updates |
| Government occupation data | Monthly | Stable data, infrequent revisions |
| H-1B employer wages | Weekly | New DOL disclosure filings weekly |
| Auto job expansion | Weekly | Discover new SOC codes weekly |
| City cost-of-living data | Weekly | CoStar / MIT Living Wage updates |
Supporting Algorithms
Occupation Premium Ratio (OPR)
How much more does this job pay than the average of all jobs?
Skill Elasticity
In lower-income countries, skilled workers earn a disproportionately larger premium above national average due to scarcity and international demand.
Log-Normal Percentile Bands
Salary distributions follow a log-normal model validated by BLS, NBER, and Federal Reserve research.
Fair Pay Score™
SalaryScope's signature feature — answers "Is my salary fair?" by computing where a given salary sits in the market distribution (0–100). Score of 50 = exactly at median; 75+ = top earner; <30 = underpaid.
Questions? data@salaryscope.co · About SalaryScope · Top Movers