Methodology
How the index is built — in plain language first, then in full. We start with how it differs from CPI and a side-by-side against BLS CPI-U and BEA PCE, then the seven load-bearing pillars with formulas and sources. Open questions are disclosed below; the next scheduled review is 2031.
CPI measures what it costs to keep the same standard of living — after you swap to cheaper substitutes when prices rise. The Fixed Basket asks a blunter question: what does the exact same cart of 2000 goods cost today?
- No swapping. If steak gets expensive, CPI assumes you switch to chicken. We keep pricing the steak.
- No quality credits. CPI discounts a pricier TV because it's "better." We track the price you actually pay at the register.
- The whole bill for housing & healthcare. Real market rent (not an estimate of what owners "would" pay), and the full insurance premium — including the part your employer covers.
The result is a higher, stickier number — about 1 percentage point per year above CPI over the long run. Neither is "wrong"; they answer different questions. The full side-by-side is just below.
Purpose and scope
The Fixed Basket publishes a measure of how fast the US dollar loses purchasing power against a fixed basket of household consumption items. The methodology is fixed-base, weight-locked, source-pure per stratum, and does not adjust for product quality. The index is constructed from publicly available source data and is continuously reconcilable: every published number can be traced back through the engine to the source observation it was built from.
The index is not a forecast, not a policy recommendation, and not a critique of any other statistical agency. It is a measurement built under a different set of methodological choices than BLS CPI-U or BEA PCE, with those choices stated openly so any reader can evaluate them.
The index family
Three series are published from the same underlying computation:
- The Fixed Basket Index — a level index anchored at January 2000 = 100. The cumulative measure of how much the cost of a fixed basket has risen since the base period.
- Annual rate — the annualized rate of change of the index, in percent per year. The headline cites the long-run annualized rate (geometric mean across the full window); a trailing 12-month rate is also published. CPI-comparable surface.
- Purchasing power of the dollar — the reciprocal of the index (100 ÷ index level): what one base-year (2000) dollar buys today. A direct reading of the same number, not a forecast.
Glossary — plain-language definitions
- The Fixed Basket Index
- The level of the index. January 2000 = 100; a value of 246 means the fixed basket costs 2.46× what it did in 2000.
- Annual rate
- The annualized rate of change of the index, in percent per year. The headline cites the long-run rate since 2000; a trailing-12-month rate is also published. Comparable to a CPI inflation rate.
- Purchasing power of the dollar
- What one January-2000 dollar buys against the basket today — the reciprocal of the index (100 ÷ index level). A direct reading, not a forecast.
- Stratum
- One spending category in the basket (e.g. shelter rent, healthcare premium, energy). Each carries a fixed weight from the 2000 expenditure survey.
- Laspeyres index
- A fixed-basket price index: it prices the same 2000 bundle of goods every month, with no substitution toward cheaper alternatives. Named after economist Étienne Laspeyres.
The Fixed Basket vs BLS CPI-U vs BEA PCE
Factual side-by-side of methodology choices. No editorial comparison — readers evaluate trade-offs themselves.
| The Fixed Basket v2.2.0 | BLS CPI-U | BEA PCE | |
|---|---|---|---|
| Aggregation formula | Drift-free fixed-base Laspeyres within constant-composition spans, chain-linked only at SKU entry/exit; Carli (arithmetic mean of price relatives) within multi-SKU strata | Modified Laspeyres at upper level; Jevons (geometric mean) within most strata since 1999 | Fisher Ideal (geometric mean of Laspeyres and Paasche) |
| Basket weights basis | BLS Consumer Expenditure Survey 2000, augmented with NIPA 7.8 line 17 (employer health insurance) | BLS Consumer Expenditure Survey, biennially updated | BEA Personal Consumption Expenditures from NIPA |
| Weight refresh cadence | Frozen at base period within a methodology version; revisited at scheduled 5-year reviews | Updated biennially | Updated continuously; current-period weights enter the Fisher index each period |
| Shelter measure | Observed market rent — Zillow Observed Rent Index (2015+) spliced to Census HVS median asking rent (pre-2015); composite owned-shelter operating cost; mortgage interest excluded; no CPI | Rent of Primary Residence for renters; Owners' Equivalent Rent (imputed) for owners | Space rent of tenant-occupied housing; imputed space rent of owner-occupied housing |
| Healthcare measure | KFF EHBS family premium at total cost (worker + employer); weight augmented with NIPA 7.8 | Worker-paid premium plus out-of-pocket; employer share not included | Total medical care including Medicare, Medicaid, employer-paid premiums, nonprofit hospital outlays |
| Hedonic adjustment | None applied | Applied to apparel, electronics, appliances, vehicles, rent, and selected other categories | Inherits CPI quality adjustment for CPI-priced components |
| Substitution behavior | None; single-SKU tracking where feasible; matched-model replacement on documented discontinuation with public version bump | Within-stratum substitution implicit via Jevons geometric mean; across-stratum substitution captured at biennial reweighting | Across-period substitution captured continuously by Fisher Ideal construction |
| Geographic granularity | National + 51 states/DC × 10 archetypes per geography | National CPI-U + 4 census regions + ~23 metro CPI-U series | National only; BEA Regional Price Parities published separately as a level (not inflation) measure |
| Revisions | No revisions for methodology changes; new version published in parallel | Subject to seasonal-adjustment revisions and occasional methodology updates not applied retroactively | Subject to ongoing annual and comprehensive NIPA revisions applied retroactively |
We measured it. Holding the per-stratum prices fixed and reweighting
every year with actual BLS CEX expenditure shares (a
chained Törnqvist — the construction behind BLS's C-CPI-U), the rate
changes by only about a tenth of a percentage point per
year over 2010–2022 (2.85%/yr fixed-weight vs 2.92%/yr
chained) — small and near zero, and if anything
slightly the opposite of the classic substitution bias,
because this basket is dominated by inelastic necessities (healthcare,
shelter) whose spending shares rise with their prices. Either way, the
~1 pp/yr gap to CPI-U is not an artifact of stale
weights — it's the methodology choices above. Across-stratum
substitution only; window 2010–2022. Reproducible via
scripts/substitution_wedge.py; details in METHODOLOGY §9.3.
Pillars
Fixed-base Laspeyres index
For each month t and archetype a, the
Fixed Basket Index is the weighted sum of price relatives between month
t and the base period (January 2000), expressed as
an index with base = 100. Item-level price relatives are
aggregated across strata using the arithmetic weighted mean of
relatives. Within multi-SKU strata, the arithmetic mean (Carli)
is used; the geometric mean (Jevons) is not used because Jevons
mathematically corresponds to consumer behavior in which spending
shares stay constant as relative prices change — an embedded
substitution assumption.
The annual rate is the change in the Fixed Basket Index over a window, annualized to percent per year — trailing 12 months for the rolling rate, or the geometric mean across the full window for the headline long-run rate. The purchasing power of the dollar is the reciprocal of the index level; it is a direct reading, not a forecast.
Sources
Fixed 2000 basket weights
Basket weights are anchored to the BLS Consumer Expenditure Survey (CEX) 2000 standard tables. Weights are frozen at the January 2000 base period and do not update when the source agency revises CEX tabulations. Five demographic archetypes (National Average, Homeowner, Renter, Working Parent, Retiree) are derived from CEX 2000 Tables 3, 5, and 7; five income-quintile archetypes are derived from CEX 2000 Table 1. Per-archetype weight schedules sum to 1.0 and are version-locked.
One augmentation modifies pure CEX: the healthcare premium stratum is augmented with the employer-paid private group health insurance contribution from NIPA Table 7.8 line 17 ($329.199 billion across 109.367 million consumer units = $3,010 per consumer unit per year for 2000). The augmentation is added to both the stratum numerator and the basket denominator and is set to zero for the Retiree archetype. Mortgage interest and personal insurance and pension lines are excluded from the basket denominator because they are debt service and deferred income, not consumption.
Sources
Market rent for shelter
The shelter stratum is priced from observed market rents, with no Consumer Price Index input. From January 2015 onward the driver is the Zillow Observed Rent Index (ZORI), a repeat-rent, mean-of-the-middle measure of asking rents on the stock of advertised units. For periods before 2015 — where ZORI does not extend — the series is spliced to the Census Housing Vacancy Survey median asking rent for vacant rental units, with the two series chain-linked at the splice boundary so the level is continuous. Owners' Equivalent Rent, the imputed quantity CPI-U uses for owner-occupied housing, is not used. Owned-shelter operating costs (property tax, maintenance, services) are constructed as a composite with the property-tax slice sourced from Lincoln Institute state effective property tax rates; mortgage interest is excluded from the consumption basket and is reserved for the planned Asset Price Index in v1.1+.
Neither BLS CPI Rent of Primary Residence nor HUD Fair Market Rents are used as a driver, fallback, or triangulation source. The CPI rent series is excluded under the zero-CPI doctrine; FMR is excluded because it is a different conceptual quantity — the 40th percentile of recent-mover gross rents (the Section 8 voucher ceiling), aggregated from 5-year-smoothed ACS data.
Sources
Total-cost healthcare premium
Health insurance premiums are priced at total cost — the worker-paid premium plus the employer-paid premium. The price series is the Kaiser Family Foundation Employer Health Benefits Survey family-coverage total premium, published annually since 1999. The basket weight is augmented to include the per-consumer-unit employer contribution from NIPA Table 7.8 line 17 so that both the price level and the weight share reflect the employer-inclusive burden. The Retiree archetype is excluded from the augmentation because retirees are predominantly enrolled in Medicare.
At the state level, the price source is the Medical Expenditure Panel Survey Insurance Component (MEPS-IC), which KFF aggregates for its State Health Facts state breakouts. MEPS-IC and KFF EHBS measure the same construct through different operational definitions and persistently disagree at the US level by approximately 3–5% in levels and 0.3 percentage points per year in growth. v1.0.3 applies a cross-source calibration adjustment so state values aggregate to the national KFF EHBS series; the calibration ratio is held identical across states within a year (see Cross-source calibration, below).
No hedonic quality adjustment
The Fixed Basket does not apply hedonic adjustments to source prices. When a current-period model carries features that the base-period model did not, the price is recorded as the price; it is not deflated by an imputed quality differential. The replacement protocol for discontinued SKUs is matched-model: the closest still-available specification by stated criteria (size, type, grade) is selected, and the substitution bumps the basket version with a public changelog entry. Continuity ratios are published so older basket versions remain reproducible.
For technology-heavy strata (e.g., communications, household electronics) this convention produces a higher measured rate than a hedonic-adjusted measure. The convention is documented per stratum.
Sources
No fabricated data
Index values are computed from observed source data. Temporal interpolation across a single series to fill missing months is not used. Where a primary source's coverage starts after January 2000, a next-tier fallback source is used for the pre-coverage period and a chain-link splice is applied at the first month of primary coverage so the level series remains continuous; splice ratios are computed once at basket-version time and frozen. Cross-source level calibration (e.g., the MEPS-IC to KFF EHBS state calibration in v1.0.3) is documented as a separate, named operation distinct from within-series interpolation.
Concrete example — the 2025 shutdown gap. The 2025 federal appropriations lapse left BLS unable to collect October 2025 prices, so the food-at-home source has no value for that month. The index omits October 2025 rather than estimating it — no carry-forward of the September value, no interpolation between September and November. It appears as a one-month gap in the food-at-home series; the long-run headline (anchored on full-coverage endpoints) is unaffected. If BLS later republishes the month, the monthly refresh ingests it automatically.
The geographic fallback ladder is walked per period, not per reference window: for each month, the lowest-priority geography with data for that month wins, and a chain-link rescale is applied when the chosen geography changes between consecutive months. This protocol matches BLS chain-link rebase at sampling-frame changes.
Sources
Cause-neutral framing
The Fixed Basket publishes a measured quantity. The methodology does not assign the measured erosion to a particular causal mechanism — monetary expansion, fiscal policy, supply shocks, demand dynamics, expectations, and velocity are all consistent with the published series. Source selection between candidate data series uses methodology purity as the criterion, not the direction the source moves the headline. The annual rate and the purchasing-power reading are outputs of the methodology, not targets.
Sources
Geographic handling
52 geographies are published: national and 51 states + DC. For each geography, all 10 archetypes are computed. There is no census-region grain — see the note below.
State series use national CEX weights × state-specific prices. When a state-specific source is unavailable for a stratum, the engine walks a two-tier fallback ladder per period: state → national. A chain-link rescale is applied when the chosen geography changes between consecutive months, so the level series remains continuous without contaminating growth-rate estimates with sampling-frame transitions.
Why no census-region grain. Earlier versions published the four census regions as an intermediate grain. That grain only ever worked because it relied on BLS regional CPI-U series for region-level prices. Under the zero-CPI methodology there is no non-CPI source that publishes consumer prices at the census-region grain, so a region index would be national prices reweighted by frozen CEX-2000 regional expenditure shares — false precision, not measured regional price behavior. The region grain and its fallback tier were removed entirely; state remains the sub-national grain because real, if partial, state-direct price data exists (KFF health premiums, EIA home energy, IPEDS tuition).
Per-stratum coverage disclosure is exposed at
/api/v1/state/<code>/coverage per
METHODOLOGY.md §5.8. Each state's response identifies, per
stratum, whether the value derives from state-specific or
national-fallback data — so any reader can determine how much
of a state headline is genuinely state-resolved versus
national-pass-through.
Cross-source calibration
One cross-source calibration is currently applied:
state-level healthcare_premium. KFF State Health
Facts publishes per-state family premium from MEPS-IC; KFF EHBS
publishes the national headline directly. The two sources
measure the same construct through different operational
definitions (firm vs establishment sample, largest-plan vs
all-plans premium definition) and persistently disagree at the
US level by approximately 3–5% in levels.
v1.0.3 applies a year-by-year calibration ratio
(KFF_EHBS_US / MEPS_IC_US)
to each state's MEPS-IC value so that the per-state series
aggregates to the published national KFF EHBS headline. The
calibration ratio is held identical across states within a year;
the raw MEPS-IC value, the calibration ratio, and the adjustment
basis are surfaced in each observation's raw_payload.
Open questions
Methodological questions parked for the v1.2 review or later. Disclosed here in advance of resolution.
Lifestyle slider scope
Whether v1.0 ships archetype-only (10 presets) or a full custom-weight slider. Current direction: archetype-only.
Childcare line-item isolation
Resolved for v1.0.2 to bundled within the Household Goods stratum; CEX 2000 standard tables do not break childcare out as a separate line. The Working Parent archetype captures higher childcare burden through the higher Household Goods share in that demographic. v1.1 may pull from CEX detailed tables to isolate childcare.
State income tax in the Disposable Income Index (DII)
Whether v1.1 uses the Tax Foundation summary or a full 50-state structure. Current direction: Tax Foundation summary in v1.1, full structure in v1.2.
Confidence bands for thin-sample state series
The statistical procedure for publishing uncertainty bands on state-level series with limited per-stratum sample density is not yet specified.
Healthcare premium cross-source harmonization
Whether to switch the national headline to MEPS-IC US for source consistency with state values; retain the v1.0.3 calibrated-state construction; publish both national variants in parallel; or wait for KFF/AHRQ reconciliation. Parked for the v1.2 methodology review pending direct AHRQ ingestion of MEPS-IC US 2000–2012.
Versioning
The Fixed Basket uses semantic versioning at two independent levels. The methodology version (currently v2.2.0) covers the complete specification: index formula, weighting scheme, basket structure, and computation rules. The basket version (currently v1.0.14) increments any time a single SKU is substituted, even within the same methodology version.
Every published series is tagged with the methodology and basket version that produced it. A series produced under methodology v1.0 / basket v1.0.0 remains available and reproducible after subsequent versions ship — older basket versions are not retroactively recomputed.
The first scheduled external methodology review is calendar year 2031; subsequent reviews follow on a 5-year cadence (2036, 2041, …). The pre-publication review for v1.0 launch is conducted by independent credentialed reviewers; review documents are published alongside the v1.0 release.