Data Methodology

Primary Data Source

All cost-of-living index data comes from the U.S. Bureau of Economic Analysis (BEA) Regional Price Parities (RPP) program. RPPs measure the differences in price levels across states and metropolitan statistical areas (MSAs) for a given year, expressed as a percentage of the overall national price level (100 = national average). Data is sourced via BEA's Regional Data API using a registered API key.

PlainCost also cites the U.S. Bureau of Labor Statistics Occupational Employment and Wage Statistics (OEWS) program as a supplementary external resource for occupation-specific wage research. OEWS wage figures are not ingested into PlainCost's dataset and are not used in the salary-equivalent calculation below, which is computed from BEA RPP indices only. Readers doing a relocation or salary-negotiation decision are pointed to OEWS for occupation-level wage detail.

Similarly, HUD's Fair Market Rent (FMR) tables are cited as a supplementary external resource for readers who want a federal rent benchmark by metro area. FMR data is not loaded into PlainCost's dataset and does not feed any calculation on this site. It is referenced for further reading only.

Population and median household income figures used in cross-comparisons come from the U.S. Census Bureau American Community Survey (ACS) 5-year estimates.

Data Vintage

The BEA releases updated RPP data annually, typically with a 1–2 year lag from the reference year. The most recent release reflects 2024 data and was published in December 2025. PlainCost's database reflects the most recent BEA release. Historical data is available from 2008 to the most recent year, enabling 17-year trend analysis of cost of living changes over time. Refer to the BEA release schedule for upcoming publication dates.

Processing Pipeline

  1. BEA RPP data is downloaded from the BEA Regional Data API using the GeoFips parameter to enumerate all MSA and state geographies.
  2. Records are organized by geography (metro vs. state) and price category (All Items, Goods, Services, Rents).
  3. Historical time series from 2008 onward are retained verbatim for trend analysis, no smoothing, no interpolation.
  4. Census ACS 5-year population and median household income figures are joined to metro and state records for cross-comparison context.
  5. BLS OEWS wage data and HUD FMR rent tables are cited as supplementary external resources (see links above) but are not ingested or joined into PlainCost's own dataset.
  6. All data is compiled into a structured dataset that powers the metro profiles, state pages, comparison tools, and the salary calculator on this site.
  7. Each ETL run records a vintage stamp visible in the page footer and metadata, enabling reviewer audit of which BEA release powers any given page.

Price Categories

  • All Items - Overall cost of living index, the primary comparison metric
  • Goods - Tradable goods: food, clothing, electronics, transportation
  • Services (excluding rents) - Healthcare, education, utilities, professional services
  • Rents - Housing rental costs only

Salary Equivalent Calculator

The salary relocation calculator uses RPP indices to compute salary equivalents between two locations. If you earn $X in City A (RPP = A) and want the equivalent purchasing power in City B (RPP = B), the formula is:

Equivalent Salary = $X × (RPP_B / RPP_A)

This is a linear estimate based on price levels only. It does not account for income taxes (which vary significantly by state), lifestyle differences, housing type preferences, or individual spending patterns. The calculator provides a useful starting point for relocation planning, but actual cost-of-living differences depend heavily on personal circumstances including housing choices, commuting costs, and consumption habits that differ from the average basket measured by the BEA.

Coverage

  • 387 metropolitan statistical areas (MSAs)
  • 51 states and territories (including D.C.)
  • Historical data from 2008 to present
  • 4 price categories per geography

How the Source Agency Collects Data

The Bureau of Economic Analysis computes Regional Price Parities using data from two primary sources: the Consumer Price Index (CPI) from the Bureau of Labor Statistics, which provides price data for goods and services in urban areas, and the American Community Survey (ACS) from the Census Bureau, which provides rental cost data. BEA combines these sources using expenditure weights from the Personal Consumption Expenditures (PCE) price index to produce composite price level estimates for each metro area and state.

RPPs are expressed as a percentage of the national average price level, where 100 represents the national norm. An RPP of 115 means prices are 15% above average; an RPP of 90 means prices are 10% below average. This relative indexing allows direct comparison across geographies. The BEA RPP methodology document (PDF) describes the weighting and aggregation procedure in detail.

Worked Example: Translating an RPP Into a Salary

Suppose you currently earn $100,000 in San Francisco-Oakland-Berkeley, CA (BEA CBSA 41860, 2024 RPP All Items = 116.4) and you receive a job offer in Atlanta-Sandy Springs-Alpharetta, GA (CBSA 12060, 2024 RPP All Items = 95.5). The salary-parity calculation is:

$100,000 × (95.5 / 116.4) = $82,045

That means your existing $100,000 in San Francisco buys roughly the same blended basket of goods, services, and rents as $82,045 would in Atlanta. The reverse is also useful for relocation negotiation: an offer of $82,045 in Atlanta is equivalent in purchasing power to your current San Francisco salary on the BEA basket. This calculation does not adjust for state income tax (California 9.3% marginal vs. Georgia 5.39% flat as of 2024), federal payroll considerations, or housing-type differences (RPP uses average rent of all unit sizes, your specific 2-bedroom apartment may diverge). Always pair this with a tax-aware net-pay comparison for relocation decisions.

Data Accuracy Commitment

PlainCost presents BEA data without modification. RPP values, historical time series, and salary equivalent calculations are computed directly from published BEA figures using documented formulas. We do not interpolate data for years or geographies where BEA has not published values. If you find any data that appears incorrect, please contact us at hello@plaincost.com.

Limitations

  • RPPs are annual averages, they do not reflect seasonal variation in prices.
  • RPPs measure price levels relative to the national average, not absolute cost of living. A score of 100 does not mean living is "cheap."
  • Individual spending patterns may differ significantly from the BEA's basket of goods.
  • PlainCost is not affiliated with the Bureau of Economic Analysis or any government agency.