vitrinethe median family's century

vitrine · methodology

Methodology & assumptions

Every methodological choice that would mislead if left implicit is written here once, and linked from every record it touches.

The composite family
Assumption · composite-family

Each room is a statistical composite, assembled from separate distributions with separate sources. The family at the median income did not also have the median house, the median car, and the median diet. No single family described here ever existed; each fact tells you, in its provenance drawer, which real population it was measured from.

Getting to a family of four
Assumption · four-person-normalization

Most sources publish medians for all families or all households, not for four-person families. Where a by-size series exists (e.g. US Census Historical Income Tables, Table F-8) it is used directly; otherwise the all-family median is shown and labeled as such, or equivalized using the OECD-modified scale with the arithmetic shown. The fact's label always states which population the number describes.

Income vs consumption
Assumption · income-vs-consumption

Some countries and eras measure household consumption, not income (India's National Sample Survey; the pre-1940 US cost-of-living surveys). Rooms built on consumption data say so; consumption and income medians are never mixed in one comparison without a note.

Values are shown in period money
Assumption · nominal-values

Values display in nominal, contemporaneous local units — what the family actually saw. Any inflation adjustment is computed by code in this repository with the price index series named, never applied by hand in the data files.

Shortage economies
Assumption · shortage-economy

In rationed or shortage economies (the USSR, PRL-era Poland), money income overstates lifestyle: the binding constraint was availability, not price. Rooms for these eras pair income facts with availability facts (rationing, queue time, waiting lists) so the income number cannot be read as if it bought a Western basket.

Urban/rural splits
Assumption · urban-rural-split

Where the urban/rural divide dominates the distribution (China, India), a single national median is misleading; rooms carry separate urban and rural facts instead of a blended number. Early US sources have the opposite bias: the 1890s-1930s surveys measured urban wage-earner families specifically, and their facts are tiered and labeled accordingly.

Metropolitan area definition
Assumption · metropolitan-definition

The IPUMS METRO variable classifies households as in/not-in a metropolitan area based on Census-defined metropolitan statistical areas (MSAs). MSAs did not exist before 1949; pre-1950 metro classification uses retrospective assignments. 'Suburban' is operationalized as METRO code 3 (in metro area, not central city), which is a derived category — the Census does not use 'suburban' as an official classification. Metro/non-metro income splits use IPUMS 1% sample microdata (Tier B), weighted by HHWT.

The affordability axis
Assumption · affordability-normalization

"Hours to afford" = item price ÷ that decade's representative hourly wage. "% of income" = item price ÷ median annual family income. Both are computed by repo code (affordability.py), never hand-authored in data files. The named wage and income anchors are shown in each fact's provenance drawer so the visitor can see which population the denominator was drawn from.

Why hours, not budget share
Assumption · hours-vs-income-denominator

The primary affordability axis is hours of median work — it is inflation-free, needing no CPI splice to compare 1900 to 2024, and it reads intuitively ("a 1950 refrigerator ≈ 230 hours; a 2024 one ≈ 40"). The secondary axis is share of annual income, not true expenditure share: real expenditure share (a good as a fraction of what the family actually spent) needs CEX weights, continuous only from 1980. True "% of budget" is offered only where CEX expenditure weights exist, clearly labelled as such — never mislabelled as "budget" where only an income denominator is available.

The wage anchor changes across the span
Assumption · wage-anchor-consistency

The hourly-wage anchor's measured population changes across the span: production/unskilled wage reconstructions before 1909 (Tier C); manufacturing production-worker earnings 1909–1963 (Tier A, BLS CES); total-private production/nonsupervisory earnings 1964→ (Tier A, BLS AHETPI). Cross-decade comparisons therefore carry the weaker tier and flag the splice rather than pretending one continuous series. A comparison is never more confident than its shakiest input.

Rooms, not square feet
Assumption · dwelling-size-metric

The durable cross-decade dwelling-size axis is number of rooms (Census of Housing 1940→, IPUMS, and the pre-1940 cost-of-living surveys all recorded it). Square footage exists only for new construction from 1973 (Census SOC / Characteristics of New Housing) and for existing stock from roughly 1985 (AHS unit square footage). The home panel uses rooms as the comparable size metric across the whole span and shows square footage only where the record has it — never back-filled.

Manufacturing wages as the early-era worker proxy
Assumption · manufacturing-wage-proxy

Before 1964 no broad, all-sector hourly earnings series exists. The wage anchor for 1900s–1930s (and the manufacturing series 1939–1963) is average hourly earnings of manufacturing production workers — a population that skews urban, industrial, and male. It stands in for 'the worker' where no broader series exists, the same proxy the 1950s room already uses. Cross-decade comparisons that chain manufacturing wages to total-private earnings (1964→) carry the weaker tier and flag the splice; the source's verbatim population string rides in the anchor note so the visitor sees who was actually measured.

CPI inflation of a base-year price
Assumption · cpi-inflation-of-base-price

When a price series ends before the room's data year, the latest base price is inflated to the current year using the CPI for that item (e.g. new-vehicles CPI for a car). The computation is code (base × CPI_target / CPI_base), not a hand-quoted number; the result is an estimate, not a transcription, and carries the weakest input tier. The item-specific CPI (not the all-items CPI) is used so the inflation reflects the item's actual price change, not general inflation.

Japanese surveys measure households, not four-person families
Assumption · jp-household-not-family

Japan's Family Income and Expenditure Survey (FIES) publishes by household type (two-or-more-person, one-person) and by household composition, not by a 'four-person family' median. The four-person-normalization assumption applies: where a by-household-size table exists, a four-person figure may be derivable, but it is not as cleanly published as the US Census F-8 table. All Japan room facts measure households and carry the composite-family disclaimer.

FIES was urban-only before 1962
Assumption · jp-kakei-1962-seam

The Family Income and Expenditure Survey covered only cities before 1962; national coverage (including rural and agricultural households) began in 1963. Pre-1962 income and expenditure facts are urban-only and carry the urban-rural-split caveat. The 1962 extension is a methodology seam — series chaining across it must flag the population change.

Japan's lost decades: nominal stagnation amid real gains
Assumption · jp-deflation-lost-decades

From the 1990s onward Japan experienced persistent deflation: nominal wages and prices stagnated or declined while real (CPI-adjusted) values rose. This is the opposite of the US/UK inflation pattern. Cross-decade comparisons of nominal values understated real change; the affordability axis (hours-to-afford) is inflation-free and therefore the more reliable comparator for Japan's post-1990 decades.