Housing Cycle counts the residential sector's own sequence — leading activity, coincident transactions and construction, lagging prices and household mortgage burden — each member judged against its own history. It is a sector lens, not an economy census. Rates, affordability, inventory balance, residential investment's GDP share and the mortgage debt-service ratio are the forcing backdrop: shown, never voting.
The reader learns three things and only three: where the sector is in its own cycle (a named stage from the leading / coincident / lagging triple), which timing stage is moving (the three stage counts), and whether housing is diverging from the rest of the economy (the comparator state and its spell record). Deliberately out: price forecasts, buy/sell timing, any probability, S&P outcomes (other pages' job), demographic demand, rental and regional views.
Prices vote — by a stated exception to Economic Breadth's market-price rule: a house price index measures the sector's own transactions, not a traded market's pricing of expectations. The census is descriptive at birth and permanently: no public lead-claim may ever rest on it. Counts, never probabilities; records of what followed, individually listed, never rates.
A member's subject is structures, transactions or mortgage credit. There is one series per mechanism (permits and starts both vote by ruling — the pipeline's intention and its execution). Single-family series are used where they exist, and long history is preferred. Each member's stage is assigned by data: ℓ* is the lag at which its improvement-oriented 12-month change peaks in cross-correlation with single-family starts (r* the correlation there, n the overlapping months).
| stage | member | FRED id · source | cadence | improvement is | vote window | ℓ* (r*, n) | history | first vote |
|---|---|---|---|---|---|---|---|---|
| Leading | Single-family building permitssf_permits | PERMIT1 · Census | monthly · SAAR | higher | 3 months | 0 (0.943, 787) | 1960-01 → | 1964-12 |
| Leading | Single-family housing starts (the reference)sf_starts | HOUST1F · Census | monthly · SAAR | higher | 3 months | 0 (1.000, 799) | 1959-01 → | 1963-12 |
| Leading | New one-family houses soldnew_home_sales | HSN1F · Census | monthly · SAAR | higher | 3 months | −1 (0.817, 750) | 1963-01 → | 1967-12 |
| Coincident | Private residential construction spendingres_construction_spending | PRRESCONS · Census | monthly · SAAR | higher | 3 months | +3 (0.830, 391) | 1993-01 → | 1997-12 |
| Coincident | Single-family units under constructionsf_under_construction | UNDCON1USA · Census | monthly · SA | higher | 3 months | +4 (0.827, 667) | 1970-01 → | 1974-12 |
| Coincident | Single-family completionssf_completions | COMPU1USA · Census | monthly · SAAR | higher | 3 months | +4 (0.812, 691) | 1968-01 → | 1972-12 |
| Lagging | Residential building construction employmentres_construction_employment | CES2023610001 · BLS | monthly · SA | higher | 3 months | +9 (0.690, 487) | 1985-01 → | 1989-12 |
| Lagging | FHFA all-transactions house price indexfhfa_hpi | USSTHPI · FHFA | quarterly · NSA | higher (the price exception) | 4 quarters | +9 (0.447, 202) | 1975 Q1 → | 1979 Q4 |
| Lagging | Single-family mortgage delinquency ratemortgage_delinquency | DRSFRMACBS · FRB | quarterly · SA | lower (inverted) | 1 quarter | +12 (0.771, 138) | 1991 Q1 → | 1995 Q4 |
One member is admitted but deferred: it joins automatically on the standard burn-in, under the same rule as everyone else, and takes its stage by the stage law when it can be measured.
| member | source | cadence | improvement is | window | history | enters |
|---|---|---|---|---|---|---|
| Existing-home sales | EXHOSLUSM495S (NAR, licensed; site-accumulated prints) | monthly · SAAR | higher | 3 months | 2025-04 (site) | ~2030-04 |
Each member's change over its window is judged against the median of its own strictly-prior absolute changes (the production cell: a 3-month window, a p50 band). The window is three months for monthly members and one native period for quarterly members, except the price slot's four-quarter window (the year-over-year vote removes the index's unadjusted season). Inside the band the member abstains; outside it, it is improving or deteriorating in its own polarity. Abstention stays in the denominator.
Burn-in: 60 monthly observations (20 quarterly) before a first vote. A member missing beyond twice its native cadence abstains rather than carrying a stale vote. A month is nameable only when every stage holds at least one burned-in member — the nameable history begins March 1980, when the lagging stage's first member qualified.
The engine is Economic Breadth's own code path — imported, never copied. The one parameter added for this feature is the quarterly window, which defaults to Economic Breadth's behaviour and leaves its census unchanged. Housing Cycle takes no Economic Breadth or State of the Economy output as input; the shared engine is a measurement instrument.
Recorded diagnostic: under a median band each member abstains in roughly half its months by construction, so a three-member stage often reads →. The leading stage reads → in 42% of nameable months; the coincident and lagging stages in 33% and 32%. The persistence rule below is set against that arithmetic.
Stages are assigned by ℓ*: leading ℓ* ≤ 0 · coincident 1 ≤ ℓ* ≤ 6 · lagging ℓ* > 6 (lags −36…+36 months; quarterly members at 3-month resolution against the quarterly mean of starts; at least 120 months of overlap).
A stage net is (improving − deteriorating) / Nstage, in percent; its arrow ↑ / → / ↓ is the sign. Equal-stage weighting: the overall net breadth is the mean of the three stage nets — a 3 / 3 / 3 roster where no stage outvotes another.
The breadth bars (Amendment 2): the overall net is read against declared bars at ±20 and ±50 — |net| below 20 narrow, 20–50 moderate, above 50 broad. The word names breadth only; the sign is carried by the number and the direction by the stage label. It is never a verdict.
The cycle propagates leading → coincident → lagging, so the leading + coincident pair names the phase. The lagging stage separates Recovery from Expansionon the way up and Downturn spreading from Contraction on the way down; → means “not yet confirming”. Plateau is the ruled seventh name for a sector treading water (leading flat and coincident flat while prices rise or hold). Mixed is reserved for triples where the two moving stages contradict each other, or where nothing moves but prices fall.
27 cells: Expansion 3 · Recovery 5 · Bottoming 4 · Late expansion 4 · Downturn spreading 5 · Contraction 1 · Plateau 2 · Mixed 3. Arrows read leading · coincident · lagging.
Persistence: the displayed label changes only after three consecutive months of the same new candidate; the counts are always what they are. When the live census names a different candidate than the displayed label, the page says so in one line. The hero's reading sentence is deterministic from the triple and the counts: “Housing cycle: {stage}. Leading {arrow} ({x} up, {y} down of {N}) · coincident … · lagging …. Net {overall} on a −100…+100 scale.”
The history the law produces (March 1980 → September 2026, 559 months): 40 displayed spells; occupancy Expansion 186 months · Downturn spreading 120 · Recovery 102 · Late expansion 62 · Bottoming 46 · Contraction 33 · Plateau 10.
The reference arcs, as the record carries them: the 2005–09 cycle, Sep 2005 Expansion → May 2006 Late expansion → Aug 2006 Downturn spreading → Feb 2007 Contraction → Jun 2009 Bottoming; the 1987–91 cycle, Apr 1985 Recovery → Dec 1986 Late expansion → Jun 1989 Downturn spreading → Dec 1990 Contraction → May 1991 Bottoming; the rate-driven 2022 turn under the four-quarter price vote, May 2021 Late expansion → Jan 2022 Expansion → Jul 2022 Late expansion → Nov 2022 Downturn spreading → Oct 2023 Expansion.
The comparator is Economic Breadth ex-housing (24 members; census months with at least 12 voters; from December 1971). It is the same vote engine on Economic Breadth's roster minus housing starts, new-home sales and existing-home sales. It shares Housing Cycle's unit — percent of electorate — and is 97.9% sign-identical to full Economic Breadth (r 0.988) over the 658 months both cover. Momentum (the State of the Economy score minus 40, the pivot at zero growth) is drawn as a second line — shown, not the state of record.
The four states are the signs of the housing net H and the comparator C. H > 0 & C > 0 → Both expanding · H < 0 & C > 0 → Housing down, economy up · H > 0 & C < 0 → Housing up, economy down · H < 0 & C < 0 → Both weakening. A zero on either side is no state.
Period rule: at least three consecutive months in a state, symmetric for all four. Gap depth is the spell's largest |H − C| as a percentile of all monthly gaps. Horizon 24 months; what followed is the first NBER peak within 24 months of the spell's start (or none), and single-family starts' change over those 24 months — individually listed.
The record under the locked laws, as served: 48 spells since March 1980 — Housing down, economy up 12, of which 4 saw an NBER peak within 24 months of the spell's first month; Housing up, economy down 3, of which 0 saw an NBER peak within 24 months of the spell's first month; Both expanding 29, of which 6 saw an NBER peak within 24 months of the spell's first month; Both weakening 4, of which 1 saw an NBER peak within 24 months of the spell's first month. A spell's first month carries the state the site could show at that month's end; the spell itself is recognised two months later, under the three-month rule.
An episode is a maximal window where at least one lens matches today's state: lens 1 is the displayed stage label; lens 2 is the divergence state, matched on its three-month spells. Each lens reports its own dates or a dash; Both only where both match; the two populations are counted separately (stage-lens runs and divergence spells). The raw triple's past occurrences are display material derived from the same table, never a third lens.
A worked example (mockup v5's case): eight past divergence spells of today's state, six past runs of today's stage label, four of them overlapping → ten distinct episodes at most (8 + 6 − 4). The engine counts maximal windows, so where two spells of one lens touch inside one window they count once, and the union can be smaller than that sum. The union table shows each lens's actual dates per episode, a dash where a lens did not match, a Both column, and what followed within 24 months as individual rows. The shallow and single-lens cases are included whether or not they resolved into anything.
Every single-family permits decline of more than 15% from a 12-month-smoothed local peak since 1960 is listed, with what followed within 24 months — including the no-recession cases. The smoothed peak is the highest value of the 12-month mean within ± 12 months. An episode ends when the smoothed series regains its peak (or stays open); the next eligible peak postdates the trough. The record: 7 qualifying declines — 1964, 1968, 1973, 1978, 1987, 2006, 2021 — counted from the smoothed peak, 4 followed by an NBER peak within 24 months and 3 not; counted from the month the rule fired on the permits published by then, 3 were followed by an NBER peak within 24 months, 2 were already inside a recession when the rule fired and 2 saw none. 2001 and 2020 do not qualify. Their deepest smoothed drawdowns, measured in the pre-registered census of record (gate hc_1 §3.5), were 4.4% and 3.5%, both inside the 15% bar. Today's row is a position on the same axes.
Drivers are shown as levels and colored on the heatmap's five-band scale by a declared housing-favorable direction; they never vote. A driver's heatmap cell and its strip reading are the same print with the same color (Amendment 1). The color follows the site's standard quintile rule on the series' own history — today's print against the whole history, a Time Machine date's against the history up to that month.
| driver | source · history | favorable | coloring rule |
|---|---|---|---|
| 30-year mortgage rate | MORTGAGE30US (Freddie Mac PMMS) · weekly · 1971 → | lower | the level cell on the heatmap’s five bands, and the 2-year change as a DISTINCT print with its own color (the shock, not the level: 6.7% is ordinary vs 1981, extreme vs 2021) |
| Affordability (payment / income) — constructed | site computation: the monthly payment on the median new-home price (MSPUS, Census, quarterly) at the 30-year rate, over median family income (MEFAINUSA646N, Census, annual) · from 1971 | lower | level percentile of its own history up to the month shown (the quintile rule). Read as it was known: each month from the price, rate and income figures published by its own end, the income of the latest published year (no interpolation into an unpublished year) |
| Months’ supply of new homes | MSACSR (Census) · monthly · 1963 → | lower, from the sector’s side | the quintiles of its own history up to the month shown (Amendment 1: the heatmap’s own colour). Today’s print is read against the whole history, and the edges are in the colour key on its indicator page. A past month’s, in the Time Machine, is read against the history up to that month, so the edges move a little as data arrives. The 4–6-month balance band is a reference line only |
| Residential investment / GDP | A011RE1Q156NBEA (BEA) · quarterly · 1947 → | higher, at its extremes only (Amendment 4) | neutral across the wide middle; red below the 5th percentile of its own history up to the quarter shown, green above the 95th. High shares preceded booms and busts alike, so the middle carries no direction. Colored once ten years of history exist (from 1957) |
| Mortgage debt service ratio | MDSP (FRB) · quarterly · 2005 → (methodology break; never spliced) | lower | level percentile of its own history up to the quarter shown; colored once ten years of history exist (from 2015) |
The history is computed as it was known: each month's row reads only what had been published by that month's end, and the release calendar dates every observation. The stage label at a month is therefore the one the site could have shown at that month's end, and the persistence rule runs over those candidates. None of the nine voters has an archived first print, so their values are today's revised figures and a revision can still move an older row; of the comparator's 24 members, 11 read the value published by then and the rest today's. Declared on the page with the basis chip. The Time Machine serves the record through the last complete month before the pick date — the rows the site's nightly held that day — and the permits record and the drivers as published by then. On a day the site recorded its live page, the hero, tiles, drivers and today's rows are that record. The site's record of its live pages begins on October 10, 2026. A history read this way still grounds no lead-claim; Housing Cycle makes none.
Every surface carries the two-fact label: the observation month the data reach and the date the newest observation arrived are two facts, stated separately. A member whose latest observation is older than its cadence allows is shown as carried, never as live; coverage counts current observations only. The hero renders the live census — each member at its newest vote, never held back by the calendar — with the persistence-gated label; the monthly record settles on the chart.
Measured before the roster was chosen (gate hc_1a, metric (a), pre-registered): the correlation between the census’s net breadth and the following twelve months’ change in single-family starts lies between 0.07 and 0.26 for every roster examined, and the values above 0.19 come only from rosters that shorten the history or drop prices. The census describes where the sector is; it does not forecast where it goes.
Every record on the page — stages, divergence spells, permits declines — lists what followed as individual rows, counts never rates, and no Housing Cycle output may be described as leading, predicting or signalling. Recession concordance is reported here for the record and was never a selection criterion: 83% of NBER recession months since March 1980 carry a downturn label (47 of 57); 21% of non-recession months do (106 of 502).
| source | series | terms |
|---|---|---|
| U.S. Census Bureau | permits, starts, new-home sales, under construction, completions, residential construction spending, months’ supply, median new-home price, median family income | public domain (U.S. government work) |
| U.S. Bureau of Labor Statistics | residential building construction employment | public domain (U.S. government work) |
| Federal Housing Finance Agency | all-transactions house price index | public domain (U.S. government work) |
| Board of Governors of the Federal Reserve System | single-family mortgage delinquency rate, mortgage debt service ratio | public domain (U.S. government work) |
| U.S. Bureau of Economic Analysis | residential investment share of GDP | public domain (U.S. government work) |
| Freddie Mac (Primary Mortgage Market Survey) | 30-year fixed mortgage rate | redistributed via FRED under Freddie Mac’s terms of use |
| National Bureau of Economic Research | business-cycle peak and trough dates | public reference dates |
| Federal Reserve Bank of St. Louis (FRED) | the retrieval path for every series above | FRED terms of use; series carry their originators’ terms |
The decision record: the Housing Cycle charter (HC-DR-1, locked Sep 4, 2026, Amendments 1–3). The sourcing census, the exhaustive sweep of 2,918 series with the pre-registered accuracy analysis, the final recompute under the locked laws, and the engine's parity proof are committed alongside it.