Skip to main content
RESEARCH TRANSPARENCY

Methods behind every comparison

Independent calculations from official public datasets—plus the limitations you should know before drawing conclusions.

Data snapshot history

Snapshot assembled dates record when the site dataset was built. Agency vintages record the periods measured by each source; these dates are not interchangeable. This tracker starts with the source snapshot included in the current project. Future reviewed data updates should append a dated record.

Scroll sideways to explore every column →

Snapshot assembled / BLS OEWS
Snapshot assembledBLS OEWSBEA RPPCensus ACSRecord
Oct 23, 2026May 202520242020–2024First recorded entry for the source snapshot included in this project; no earlier snapshot comparison is implied.

Data sources and vintages

The current build contains 5,945 reported occupation–metro median wages, across 80 curated BLS SOC occupations and 75 selected metropolitan areas. It is a curated first release, not a claim of exhaustive U.S. wage coverage.

Separate national occupational outlook: BLS Employment Projections, Table 1.2 (2025–2035) supplies national employment change, annual average occupational openings, and BLS typical entry education, work experience and on-the-job training. Annual openings include growth and replacement needs; they are not local vacancies or an individual probability of employment. The site pins the downloadable BLS workbook offline and joins its detailed line-item rows to our 80 SOC occupations. Because OEWS and projections are different BLS statistical programs, the site never treats their employment figures as an identical sample or time series.

Our metropolitan comparisons use CBSA definitions corresponding to OMB Bulletin 23-01. CBSA codes identify entire metropolitan statistical areas, not municipalities or individual neighborhoods. National occupational outlook projections are presented separately and are not localized to CBSAs.

How the adjusted measure works

Site-calculated national-price equivalent = BLS annual median wage × 100 ÷ BEA 2024 all-items RPP. For instance, an RPP of 110 means the average price level is approximately 10% above the U.S. reference level; it is not a tax or individual expense ratio.

This estimate does not incorporate household size, taxes, deductions, benefit packages or job offers. The RPP basket already includes housing services, so gross rent is displayed separately and is not deducted again from the adjusted wage.

Terms used on this site

OEWS
Occupational Employment and Wage Statistics, the BLS survey that supplies each occupation’s metro wage median, percentiles and employment estimate.
RPP
Regional Price Parity, the BEA measure of an area’s overall price level compared with the U.S. average of 100. The all-items series includes housing.
ACS
American Community Survey, the Census Bureau survey behind our rent, household income and commute figures. “Five-year” estimates pool five years of responses.
MOE
Margin of error, the sampling uncertainty the Census publishes with each ACS estimate. A wide margin means the estimate is less precise.
CBSA
Core-based statistical area, a federally defined metropolitan area built from whole counties. Its code identifies the area, which is larger than the named city.
SOC
Standard Occupational Classification, the federal code system BLS uses to define each occupation.

Missing data, precision and uncertainty

Blank, suppressed or invalid BLS medians remain unavailable: they are never turned into zero or guessed from adjacent metros. Available wage percentiles are tested for nondecreasing order. All calculations use the BEA RPP's released precision, although some interface displays round the number for legibility.

ACS medians are survey estimates with reported margins of error (MOEs). Metro pages disclose rent and household-income MOEs. We flag either median when its MOE is above 30% of the estimate; this is a conservative site editorial threshold, not an ACS agency rule. Commute share counts workers whose one-way trip to work is 45 minutes or longer among those who commute, excluding people who work from home.

Mixed vintages are intentional and visible: 2025 BLS wage levels, 2024 BEA prices, and ACS five-year estimates ending 2024. These are not live job or apartment listings.

How to interpret the wage distribution

The 10th, 25th, 50th (median), 75th and 90th percentile figures describe an estimated distribution of annual employee wages within one occupation and metropolitan area. A percentile is not an experience level, personal salary expectation, job offer, or a reported range for a particular employer. Published percentile cells may be withheld even when a median is available; we never fill the gap by extrapolating.

OEWS covers wage-and-salary employees, not self-employed workers, and excludes overtime, benefits and nonproduction bonuses from reported wage measures. Most annualized occupational figures are based on 2,080 hours; they are not a forecast of actual hours, earnings or job opportunities. Annual percentiles are nominal BLS estimates. The price-adjusted calculation is applied only to the occupational median in this release, not to the displayed percentiles. The ACS margins of error shown alongside rent and household income are different measures of sampling uncertainty; they do not apply to OEWS wages.

What-if offer and first-year expense worksheet

The browser worksheet accepts annual gross base salary, an optional recurring annual cash bonus, an optional one-time sign-on bonus, optional annual take-home pay supplied by the reader, and monthly gross rent for two metros. Empty salary and rent inputs use BLS occupation median wages and ACS metro median gross rents. These are separate survey populations and are only benchmarks, not actual offers or rental quotes. Bonus and sign-on fields have no benchmark and default to $0 when blank. Take-home pay has no benchmark default; the site does not estimate taxes or payroll deductions.

Recurring gross compensation = annual base salary + annual cash bonus. First-year gross compensation = recurring gross compensation + one-time sign-on bonus. The worksheet subtracts 12 months of listed rent and recurring additional monthly costs from recurring gross compensation, then subtracts a one-time moving budget for its first-year view. A separate calculation subtracts listed costs from the take-home amount supplied by the reader. The offer-equivalence figure solves for the target metro's base salary while accounting for both sides' entered bonuses and one-time moving costs. Enter any given cost only once.

ACS gross rent is the sum of contract rent plus estimated monthly utilities and fuels. If you leave the default ACS rent in place, do not add its included utilities again under other monthly expenses. If you enter an actual gross-rent quote, likewise omit any utilities already covered. Conversely, if your own rent figure excludes utilities, add those separately.

The gross-pay calculation remains before taxes; neither result is disposable income, savings or a complete household budget. The take-home calculation uses only the reader's own amount and is not independently checked. The separate BEA all-items price-adjusted salary is based on base salary and already incorporates housing in its index basket; it must not have rent or other explicit expenses deducted again to produce a purported single purchasing-power result.

If BLS suppresses a median, the default salary stays unavailable unless a user enters an offer. Personal salary, bonus, sign-on, take-home, rent, expense and moving inputs remain in the current page only; they never enter URLs, local saves, analytics or a server account. The separate distribution chart compares base salary with published wage percentiles and does not calculate a personal percentile rank.

Shareable and saved research

The dashboard's shareable link encodes the selected occupation, metros, chart view, sort order and inspected metro in the URL. Browser saves are stored only in that browser's local storage, without sign-in or server-side tracking of individual comparison choices. Clearing website storage removes local saves; links remain reusable while the supported data and URLs remain available. Personal gross salary, take-home pay, rent, other-expense and moving-budget inputs are excluded from both storage and URLs.

Five-metro shortlist and printable expense breakdown

The dashboard lets readers place two to five curated metros in a shortlist and sort by one published measure at a time. Occupational wages may be suppressed even when metro rent and commuting statistics are available; unreported wages are never treated as zero. A shortlist is a comparison view, not a proprietary score of which city is best.

The relocation worksheet also accepts separate optional monthly groceries, transportation, childcare, healthcare, and utilities not already in gross rent, plus an unitemized monthly amount and a one-time moving expense. Each category defaults to zero additional spending when blank, not a claim about typical costs. The total added monthly cost is the sum of those categories and unitemized cost; these are not agency estimates. Its ongoing annual subtotal excludes the one-time moving charge, while its first-year subtotal includes it. Print/save-PDF uses the browser's native print dialog with a summary assembled in memory. Personal amounts remain excluded from URLs and browser-saved comparison profiles.

Quality gates and update policy

Our offline ingestion verifies source checksums and provenance, required columns, unique SOC–CBSA pairs, supported metro joins, positive values, and wage percentile ordering. A stale or failed refresh does not silently replace the previously built static site. Each profile receives a unique descriptive title and source context.

No mass-generated combinations enter a public sitemap before explicit editorial approval and full wage, price, rent, income and commute checks. Search uses deterministic job-title and place matching and asks for clarification if multiple occupations match; it does not invent an answer to an unsupported question.

Source data is published by U.S. federal agencies. Our calculations, labels and editorial summaries are independent transformations, with no agency affiliation or endorsement. We do not currently republish O*NET-derived tasks or job titles, so O*NET's separate CC BY licensing does not apply to these pages.

Quick interpretation: three numbers, three different questions

  1. BLS wage median: What do workers in this occupation earn in the published metropolitan wage distribution? It is not the salary on a current job advertisement.
  2. BEA-adjusted wage: How does that same median look when expressed against the national broad price-level reference? It is not after-tax income.
  3. ACS gross rent and commute: What do separate household and commuter surveys report for the wider metro? They do not predict a specific lease or trip.

For a simple illustration, a hypothetical $100,000 annual wage in a metro with an all-items RPP of 110 has a national-price equivalent of roughly $90,909. If ACS also reports a $2,000 monthly gross-rent median, do not subtract $24,000 from $90,909: housing already contributes to the all-items index. If you want to model actual recurring costs, start again with your actual gross offer and use the separate relocation worksheet.

Refresh cadence, coverage gaps and correction process

This is a versioned research snapshot, not a live employment or rental database. When official BLS, BEA or Census releases relevant new figures, the publisher reviews source availability and definitions, updates the offline snapshots, checks the geographic joins and data quality, and reruns automated validation before a replacement build is considered. We do not promise a fixed monthly refresh cycle or silently relabel older statistics as current.

Not included in these comparisons: neighborhood-specific asking rents, local vacancy counts, individualized tax estimates, personal insurance costs, employer benefits, professional license approvals or a household-specific cost-of-living basket. National BLS employment projections cannot fill gaps in local hiring data. For any real job or lease decision, verify current details with the employer and relevant providers or authorities.

CareerMoveIQ publishes independent editorial research. Source calculations are checked against the documented data and methods, and readers can report suspected mistakes with the page URL and source detail using Contact. These checks are not an independent expert certification. Learn more about the project's scope on About.

Common questions about the numbers

How is the price-adjusted wage calculated?

Divide an occupation's BLS median annual wage in a metro by that metro's BEA all-items regional price parity, then multiply by 100. A parity of 110 means prices are about 10% above the U.S. average of 100.

Can I subtract rent from the adjusted wage?

No. The all-items price index already includes housing, so subtracting Census gross rent again would count housing twice. Use the offer worksheet with real quotes when you want to model specific costs.

Is a median wage what I would be offered?

No. It describes employed workers in a broad occupation and metro area, not a new-hire offer, benefits or open positions.

Do these pages describe a neighborhood or city limits?

No. Wages, rent, income and commute shares describe the whole metropolitan statistical area (CBSA), which often includes suburbs and neighboring counties.

What happens when BLS suppresses a value?

The page shows it as unavailable. CareerMoveIQ does not estimate, extrapolate or treat a suppressed wage as zero.

Are the job-outlook figures local?

No. BLS Employment Projections are national. Annual openings include growth and replacement needs and are not local vacancies.

Who publishes CareerMoveIQ and are the numbers official?

CareerMoveIQ is an independent research project. The source data come from the BLS, BEA and Census Bureau, but the calculations and summaries are the site's own and are not endorsed by those agencies.

Machine-readable research snapshot

The curated JSON research snapshot contains the same occupational and metro observations used in the published tables. Its occupation entries include SOC classifications, metro entries include CBSA geography and regional context, and observations are keyed by occupation SOC and metro CBSA. Source agencies, data years, formulas and limits are documented above; the JSON is not a live feed or an official agency download.

If quoting a number, cite the specific career or metro page along with the originating BLS, BEA or ACS source and data vintage. Different statistical programs must not be described as a single survey or as an actual job offer or housing quote.