Method unchanged since Sep 23, 2026 · what changed then · full methodology below
Economic data is published before it is finished. The first print of a number is an estimate built from partial source data; the agencies then revise it — for months, sometimes for decades. The worst quarter of the financial crisis is the clearest case in our own archive: 2008Q4 real GDP first printed at an annualized −3.80%. A year later the record said −5.37%. Three years later it said −8.89% — the advance estimate had missed more than five points of the collapse. The vintage standing today says −8.47%. Anyone who made a judgment in February 2009 made it against a draft.
Every number on the ledger is first-print vs the value three years later — the +3y yardstick — from the archived record. Nothing is restated from memory: every value is read from the vintage that actually stood on a given day.
The ledger compares like with like. The "news number" is the figure the release actually led with, computed within a single vintage snapshot — the value standing for the month and for the prior month, from the same day's archive. Quarterly SAAR figures are computed from the same-vintage level pair, ((cur/prev)⁴ − 1) × 100.
| series | FRED id | news basis | ledger begins | revision anatomy |
|---|---|---|---|---|
| Nonfarm payrolls | PAYEMS | m/m change in jobs, thousands | 1955-06 | monthly rounds, then annual benchmarks against unemployment-insurance records |
| Personal income | PI | nominal m/m % | 1966-02 | monthly rounds, then annual and comprehensive NIPA revisions |
| Retail sales | RSAFS | nominal m/m % | 2001-07 | monthly rounds, then annual benchmarks against the retail census |
| Industrial production | INDPRO | index m/m % | 1928-01 | monthly rounds, then annual revisions |
| Core PCE prices | PCEPILFE | price index m/m % | 2000-09 | monthly rounds, then annual NIPA revisions |
| Real GDP growth | GDPC1 | real SAAR from the same-vintage level pair | 1992Q2 | advance → second → third estimates, then annual and comprehensive revisions |
| Corporate profits after tax | CPATAX | % level change q/q | 1981Q1 | no advance print — profits enter later in the estimate cycle |
| Gross domestic income | GDI | nominal SAAR from the same-vintage level pair | 2013Q2 | arrives later still; its early estimates settle hard |
"Settled" has to mean something fixed, or the ledger would be rewritten every time an agency runs a benchmark. We freeze each observation at first vintage + 3 years. The 2008Q4 case shows why: at +1 year the record still said −5.37 — only about three-fifths of the eventual collapse on the books. At +3 years it said −8.89, within half a point of the −8.47 standing today, seventeen years and many benchmark rounds later. Three years captures the bulk of settling; waiting longer buys little and costs the ledger its stability. A settled value is written once and never touched again; observations younger than three years carry no settled row — "not yet settled" is an honest state, not a gap.
The ALFRED archives begin mid-history: payrolls vintages start in 1955, personal income in 1966, retail sales in 2001. For observations BEFORE a series' archive floor, the oldest value on file is not a first print at all — it is a modern restatement, and its "revision" is near zero by construction. A naive recomputation across the whole archive counts those fake firsts and drags the typical revision toward zero:
| payrolls +3y median | basis |
|---|---|
| +3k | naive — every archived observation, fake firsts included |
| +19k | floored — first prints only, the ledger's display basis |
The ledger structurally excludes pre-floor observations from every table. If you recompute our numbers without the floors, you will get the first row — and it will be wrong about what first prints do.
Each dossier carries a basis chip because the eight series do not share one. Personal income, retail sales, corporate profits, and GDI are nominal — the ledger revises what the agencies published, so it stays on the published basis. Core PCE is a price index; payrolls is a jobs count; industrial production is an output index. The one exception is GDP: its headline concept is real growth, so the ledger's GDP is GDPC1, the real series — the real-SAAR exception, stated on the chip. The site's GDP page shows the growth rate the government publishes directly; the ledger works the same figure out from the level of GDP at two points in the same archived snapshot. It does that because the published growth rate has too little archive behind it to measure revisions from. The two routes give the same quantity, which is why the GDP page and this one carry the same basis chip. None of these are the site's derived real_* constructions (like the real 10y yield), which deflate one published series by another; the ledger never mixes a derived construction into a revision comparison.
Each dossier's box splits the record by the four-stage regime at the DATA month, joined on that month (quarterlies join on their mid-quarter month). The highlighted row is the stage the site reads today; the counts themselves never move with it.
The stage is read point-in-time — as it stood when the print landed, not as the revised record later called it — at least 85% first-published from Sep 2016; earlier years partly use today's revised data, read only once it had been published (how much). That is deliberate and it is the only honest basis for this box: a reader conditioning today's print on a stage can only use the stage that is knowable today. This paragraph used to say the box split by "the regime that the DATA month later proved to be in — the site's settled monthly timeline". Both halves were wrong. The stored timeline was measured against both bases and differs from the point-in-time record in none of its 543 months and from the revised record in 72 — it was always point-in-time, and the prose understated what the box can honestly claim.
A row built on fewer than twelve observations says so instead of showing a number: a count that thin is an anecdote, not a record.
Benchmark revisions arrive as level wedges, and the size you quote depends on how you measure. The March 2024 payroll benchmark is the worked example: measured as a single vintage step, the level fell −589k on the day the benchmark was incorporated — February 7, 2025, the day U.S. Bureau of Labor Statistics published The Employment Situation — January 2025, the release that carried the annual benchmark revision; measured as the span from the first print's vintage (April 5, 2024) to that same day, −616k — the interim monthly rounds absorb the difference. Both figures are read off the archived PAYEMS vintages in this ledger's own store. The ledger counts benchmark-class wedges as SPAN, dated at incorporation. It carries the single-step figure as a note where the two differ materially. (The famous "−818k" from August 2024 was the PRELIMINARY March-over-March announcement — an announcement, not a vintage event; it never appears in the vintage record and so never appears here.)
A revision enters the register when |first → settled| clears the series' own 95th percentile. The bar is per-series because the units are not comparable: a 0.11pp core PCE revision and a 220k payrolls revision are both once-in-twenty events in their own distributions, and the register ranks by that own-percentile — never by raw size across series. The native-units column rides beside the rank so you can still see the magnitudes.
For each modern recession we record the first vintage in which the data conceded it: payrolls' first negative print near the start, and real GDP's first vintage showing the opening quarter negative. The asymmetry is the finding. Payrolls said "recession" nearly in real time every cycle — March 2001's −86k printed on 2001-04-06; January 2008's −17k printed on 2008-02-01. Real GDP conceded 2001 only at the July 2002 annual revision (16 months late) and 2008 only in July 2009 (18 months). And 2001 carries its own asymmetry: NOMINAL GDP never admitted the 2001 recession at any vintage — its opening quarter never printed negative; only the real series' did. The year 2020 is the exception that proves the scale: a collapse large enough that the advance estimate caught it in real time.
Corrected October 3, 2026: the table had dated 1990, 2008 and 2020 by a later month's print. Each payroll date now follows the rule above — the first month from the recession's start whose first print was negative. The finding is unchanged, and each date is earlier than before.
Core PCE is on the ledger to show what a quiet series looks like: 162 of its 277 settled observations moved less than 0.05pp — at display precision, they did not move at all. Revisions are a property of how a series is built, not of economic statistics in general; the ledger shows the loud and the quiet on the same yardstick.
The floors are real constraints: nothing before a series' archive floor can appear anywhere on the page, and the floors differ by decades across the eight series. Observations younger than +3 years are not yet settled and carry no verdict. Conditioned counts are counts — small denominators are flagged, and none of them are probabilities. The ledger is a descriptive record of how first prints settled. It is never a forecast of how the next print will settle.
This is the Revisions Ledger's validation record, kept with its methodology. The Validation page sets it beside every other feature's.
Splitting every revision by the four-stage regime at its data month, read point-in-time — at least 85% first-published from Sep 2016; earlier years partly use today's revised data, read only once it had been published (how much), the direction of the revision moves with the stage. Payrolls is the clearest case and the gradient runs across all four stages, significant at every one of them (p < 0.000001). The per-stage counts sit on each dossier's box on the ledger page.
This is the one conditional finding the record supports, and it is usable in real time: the stage is knowable the month it happens, so a reader can apply it to a print landing today.
The obvious hypothesis — that revisions get bigger when the economy turns — was tested against a bar fixed before anything was computed. The median absolute revision within six months of a turn had to be at least 1.5× the rest of the record, on at least three of the 5 recessions. It failed on 7 of 8 series. Two series are revised less near turns than away from them. The single pass clears the bar only on the turns its own record reaches, which is reported as the judgment call it is rather than counted as a win.
If an episode of downward revisions during an expansion signalled a turn, it would be a rare thing — a warning knowable the day it is published. It was tested 4 ways, on the site's own Momentum gauge and on payrolls, at two episode lengths, against a five-part bar fixed in advance. A turn here is a month the site's own stage left Expansion — 10 of them on the site's own stage record, against the 5 recessions, whose starts and ends are the turns of the test above. All 4 failed. The best version fired 63 times to catch 8 of the 10 turns, at a hit rate barely above the rate of simply guessing in any expansion month, and the site's existing stress signal reached every turn it shares first.
One result is worth keeping from the failure: the placement of those episodes is genuinely non-random with respect to turns — it beat 500 shuffles that preserved their own lengths and spacing. That is a real statistical fact and it is not enough to make an alarm, which is the difference between significance and usefulness.
A surviving signal would also have had an independence problem. Four of the eight series here move five of the nine inputs to the Momentum gauge the stage is classified on. So a revision-based warning would partly be the same arithmetic arriving one release early.
The same question asked of the site's three composites: none of them is biased, but none is precise either. Momentum's first read moves by three points or more in nearly half of all months. The Inflation Regime either does not move at all or moves a long way. The stage itself changes in 72 of 543 months, and about half of those changes are an Expansion that settles as a Slowdown. The counts are on the Regimes methodology, beside the stage they are about.
Every revision that cleared its own series' 95th percentile — 184 of them. Ranked by each series' OWN percentile, never raw units across series; benchmark-class level wedges are measured as SPAN and dated at incorporation.
| period | series | first → settled | Δ (native) | own pct |
|---|---|---|---|---|
| Jan 2023 | Retail sales | +2.96 → +4.37 | +1.41 | p97.8 |
| Q1 2023 | Corporate profits (CPATAX) | −6.80 → +3.86 | +10.66 | p97.1 |
| Q1 2023 | GDI (the gap register) | +1.70 → +7.05 | +5.35 | p100.0 |
| Nov 2022 | Core PCE (the contrast row) | +0.17 → +0.29 | +0.12 | p96.0 |
| Oct 2022 | Core PCE (the contrast row) | +0.22 → +0.36 | +0.14 | p98.2 |
| Jul 2022 | Personal income | +0.22 → +0.94 | +0.73 | p97.0 |
| Jul 2022 | Core PCE (the contrast row) | +0.08 → +0.23 | +0.14 | p98.9 |
| Mar 2022 | Retail sales | +0.50 → +2.10 | +1.60 | p98.1 |
| Jan 2022 | Retail sales | +3.75 → +1.82 | −1.93 | p100.0 |
| Dec 2021 | Nonfarm payrolls | +199k → +566k | +367k | p99.5 |
| Dec 2021 | Retail sales | −1.91 → −0.82 | +1.09 | p95.5 |
| Nov 2021 | Nonfarm payrolls | +210k → +631k | +421k | p99.9 |
| Oct 2021 | Nonfarm payrolls | +531k → +860k | +329k | p98.9 |
| Sep 2021 | Nonfarm payrolls | +194k → +480k | +286k | p98.3 |
| Aug 2021 | Nonfarm payrolls | +235k → +465k | +230k | p95.7 |
| Mar 2021 | Retail sales | +9.82 → +10.93 | +1.11 | p95.9 |
| Feb 2021 | Core PCE (the contrast row) | +0.09 → +0.22 | +0.13 | p97.5 |
| Jan 2021 | Nonfarm payrolls | +49k → +398k | +349k | p99.3 |
| Jan 2021 | Retail sales | +5.29 → +3.47 | −1.82 | p99.3 |
| Q1 2021 | Corporate profits (CPATAX) | −0.79 → +12.32 | +13.12 | p98.2 |
| Dec 2020 | Retail sales | −0.68 → +0.98 | +1.67 | p98.9 |
| Oct 2020 | Personal income | −0.65 → +0.07 | +0.72 | p96.8 |
| Sep 2020 | Nonfarm payrolls | +661k → +961k | +300k | p98.4 |
| Aug 2020 | Nonfarm payrolls | +1,371k → +1,735k | +364k | p99.4 |
| Jul 2020 | Nonfarm payrolls | +1,763k → +1,444k | −319k | p98.7 |
| Jul 2020 | Personal income | +0.35 → +1.03 | +0.68 | p96.5 |
| Jun 2020 | Nonfarm payrolls | +4,800k → +4,565k | −235k | p96.1 |
| Jun 2020 | Personal income | −1.11 → −0.22 | +0.88 | p98.3 |
| Jun 2020 | Retail sales | +7.50 → +8.58 | +1.07 | p95.1 |
| May 2020 | Retail sales | +17.69 → +19.01 | +1.33 | p97.0 |
| Apr 2020 | Personal income | +10.51 → +11.74 | +1.23 | p98.7 |
| Apr 2020 | Retail sales | −16.45 → −14.62 | +1.83 | p99.6 |
| Apr 2020 | Industrial production | −11.25 → −13.38 | −2.13 | p97.3 |
| Q2 2020 | Real GDP growth | −32.90 → −29.86 | +3.05 | p97.6 |
| Mar 2020 | Nonfarm payrolls | −701k → −1,427k | −726k | p100.0 |
| Q1 2020 | GDI (the gap register) | −2.70 → +1.26 | +3.96 | p95.1 |
| Q1 2015 | Real GDP growth | +0.25 → +3.24 | +2.99 | p96.0 |
| Q1 2014 | GDI (the gap register) | −1.02 → +3.90 | +4.92 | p97.6 |
| Jan 2013 | Personal income | −3.62 → −5.39 | −1.77 | p99.1 |
| Nov 2012 | Personal income | +0.64 → +1.25 | +0.61 | p95.4 |
| Oct 2012 | Personal income | +0.00 → +0.87 | +0.86 | p98.0 |
| Jan 2012 | Personal income | +0.28 → +1.04 | +0.76 | p97.1 |
| Q1 2011 | Real GDP growth | +1.75 → −1.29 | −3.04 | p96.8 |
| Mar 2010 | Core PCE (the contrast row) | +0.08 → +0.22 | +0.14 | p98.6 |
| Jan 2010 | Personal income | +0.09 → +0.92 | +0.82 | p97.5 |
| Jan 2010 | Core PCE (the contrast row) | +0.01 → +0.13 | +0.13 | p97.1 |
| Oct 2009 | Core PCE (the contrast row) | +0.19 → +0.33 | +0.14 | p97.8 |
| Sep 2009 | Retail sales | −1.49 → −2.61 | −1.12 | p96.3 |
| Feb 2009 | Personal income | −0.24 → −1.08 | −0.84 | p97.8 |
| Jan 2009 | Nonfarm payrolls | −598k → −818k | −220k | p95.0 |
| Jan 2009 | Personal income | +0.37 → −1.11 | −1.48 | p98.8 |
| Q1 2009 | Corporate profits (CPATAX) | +1.11 → +29.39 | +28.28 | p100.0 |
| Dec 2008 | Personal income | −0.21 → −1.14 | −0.93 | p98.6 |
| Nov 2008 | Nonfarm payrolls | −533k → −802k | −269k | p97.6 |
| Nov 2008 | Personal income | −0.17 → −0.83 | −0.66 | p96.2 |
| Nov 2008 | Retail sales | −1.76 → −3.14 | −1.38 | p97.4 |
| Oct 2008 | Nonfarm payrolls | −240k → −509k | −269k | p97.6 |
| Oct 2008 | Personal income | +0.35 → −0.46 | −0.81 | p97.4 |
| Oct 2008 | Retail sales | −2.77 → −3.92 | −1.15 | p96.6 |
| Q4 2008 | Real GDP growth | −3.80 → −8.89 | −5.09 | p100.0 |
| Q4 2008 | Corporate profits (CPATAX) | −10.71 → −26.49 | −15.78 | p98.8 |
| Sep 2008 | Nonfarm payrolls | −159k → −434k | −275k | p97.8 |
| Jul 2008 | Core PCE (the contrast row) | +0.27 → +0.15 | −0.12 | p96.4 |
| Q3 2008 | Real GDP growth | −0.25 → −3.66 | −3.41 | p98.4 |
| Jan 2007 | Personal income | +0.97 → +0.33 | −0.64 | p96.1 |
| Sep 2005 | Personal income | +1.70 → +3.52 | +1.82 | p99.3 |
| Aug 2005 | Personal income | −0.05 → −2.26 | −2.21 | p99.4 |
| Jul 2005 | Personal income | +0.29 → +0.86 | +0.58 | p95.1 |
| Jan 2004 | Core PCE (the contrast row) | +0.10 → +0.26 | +0.17 | p99.3 |
| Q2 2003 | Corporate profits (CPATAX) | +15.92 → +5.50 | −10.42 | p96.5 |
| Jan 2003 | Retail sales | −0.93 → +0.67 | +1.60 | p98.5 |
| Feb 2002 | Core PCE (the contrast row) | +0.09 → +0.21 | +0.11 | p95.3 |
| Q1 2002 | Corporate profits (CPATAX) | −2.45 → +8.94 | +11.39 | p97.6 |
| Nov 2001 | Core PCE (the contrast row) | +0.15 → +0.27 | +0.12 | p96.8 |
| Oct 2001 | Core PCE (the contrast row) | +1.17 → +0.79 | −0.38 | p99.6 |
| Sep 2001 | Core PCE (the contrast row) | −0.90 → −0.51 | +0.39 | p100.0 |
| May 2001 | Core PCE (the contrast row) | −0.06 → +0.05 | +0.12 | p95.7 |
| Jan 2001 | Nonfarm payrolls | +268k → −9k | −277k | p97.9 |
| Sep 2000 | Personal income | +1.08 → +0.47 | −0.62 | p95.5 |
| Jan 2000 | Personal income | +0.73 → +1.52 | +0.79 | p97.3 |
| Q1 2000 | Real GDP growth | +5.39 → +2.56 | −2.83 | p95.2 |
| Q1 2000 | Corporate profits (CPATAX) | +3.36 → −5.68 | −9.03 | p95.3 |
| Dec 1999 | Personal income | +0.32 → +0.91 | +0.59 | p95.2 |
| Sep 1999 | Nonfarm payrolls | −8k → +235k | +243k | p96.6 |
| Q2 1997 | Real GDP growth | +2.16 → +5.89 | +3.73 | p99.2 |
| Feb 1996 | Nonfarm payrolls | +705k → +479k | −226k | p95.4 |
| May 1994 | Nonfarm payrolls | +191k → +411k | +220k | p95.0 |
| Apr 1994 | Personal income | +0.45 → +1.33 | +0.89 | p98.4 |
| Jan 1994 | Personal income | −0.28 → −4.04 | −3.77 | p99.9 |
| Dec 1993 | Personal income | +0.60 → +3.12 | +2.53 | p99.6 |
| Aug 1993 | Nonfarm payrolls | −39k → +215k | +254k | p96.8 |
| Aug 1993 | Personal income | +1.31 → +0.64 | −0.67 | p96.4 |
| Apr 1993 | Personal income | +0.02 → +1.58 | +1.56 | p99.0 |
| Jan 1993 | Personal income | +0.47 → −3.83 | −4.30 | p100.0 |
| Dec 1992 | Personal income | +0.98 → +3.60 | +2.62 | p99.7 |
| Q1 1990 | Corporate profits (CPATAX) | −3.37 → +6.76 | +10.14 | p95.9 |
| Jan 1988 | Personal income | +0.32 → −0.33 | −0.64 | p96.0 |
| Dec 1987 | Personal income | +0.75 → +1.63 | +0.88 | p98.1 |
| Jan 1987 | Nonfarm payrolls | +448k → +223k | −225k | p95.2 |
| Jan 1986 | Nonfarm payrolls | +566k → +165k | −401k | p99.8 |
| Oct 1985 | Nonfarm payrolls | +414k → +166k | −248k | p96.7 |
| Sep 1983 | Nonfarm payrolls | +733k → +1,125k | +392k | p99.6 |
| Q1 1983 | Corporate profits (CPATAX) | +12.20 → +32.68 | +20.48 | p99.4 |
| Nov 1982 | Personal income | +0.38 → +1.07 | +0.69 | p96.7 |
| Jul 1982 | Nonfarm payrolls | −17k → −345k | −328k | p98.8 |
| Oct 1981 | Personal income | +0.58 → −0.04 | −0.62 | p95.7 |
| Jul 1981 | Nonfarm payrolls | +383k → +124k | −259k | p97.2 |
| Apr 1981 | Nonfarm payrolls | −220k → +98k | +318k | p98.5 |
| Jan 1981 | Nonfarm payrolls | +374k → +115k | −259k | p97.2 |
| May 1980 | Nonfarm payrolls | −180k → −463k | −283k | p98.2 |
| Apr 1980 | Nonfarm payrolls | −479k → −206k | +273k | p97.7 |
| Mar 1980 | Nonfarm payrolls | −140k → +83k | +223k | p95.1 |
| Jan 1980 | Personal income | +0.56 → +1.19 | +0.63 | p95.8 |
| Sep 1978 | Nonfarm payrolls | −58k → +173k | +231k | p95.9 |
| Jun 1977 | Nonfarm payrolls | +135k → +373k | +238k | p96.3 |
| Jun 1975 | Industrial production | +0.36 → +2.37 | +2.01 | p97.1 |
| Dec 1974 | Industrial production | −2.79 → −4.48 | −1.69 | p95.9 |
| Jan 1974 | Nonfarm payrolls | −259k → −4k | +255k | p97.0 |
| Jan 1973 | Nonfarm payrolls | +197k → +417k | +220k | p95.0 |
| Dec 1972 | Nonfarm payrolls | +24k → +254k | +230k | p95.7 |
| Jun 1972 | Nonfarm payrolls | +16k → +251k | +235k | p96.1 |
| Feb 1972 | Personal income | +0.55 → +1.38 | +0.83 | p97.7 |
| Jun 1971 | Nonfarm payrolls | −310k → −31k | +279k | p98.1 |
| Apr 1961 | Nonfarm payrolls | +335k → +98k | −237k | p96.2 |
| Aug 1959 | Nonfarm payrolls | −178k → −522k | −344k | p99.0 |
| Dec 1958 | Nonfarm payrolls | −89k → +140k | +229k | p95.5 |
| Nov 1958 | Nonfarm payrolls | +187k → +450k | +263k | p97.3 |
| Jun 1958 | Industrial production | +1.56 → +3.27 | +1.71 | p96.0 |
| Dec 1955 | Nonfarm payrolls | −150k → +198k | +348k | p99.1 |
| Jun 1955 | Nonfarm payrolls | +116k → +357k | +241k | p96.5 |
| Sep 1954 | Industrial production | −2.42 → +0.81 | +3.23 | p99.5 |
| Feb 1954 | Industrial production | −1.60 → +0.00 | +1.60 | p95.1 |
| Aug 1953 | Industrial production | +2.15 → −0.73 | −2.88 | p98.8 |
| Jul 1953 | Industrial production | −3.73 → +0.74 | +4.47 | p99.8 |
| Aug 1952 | Industrial production | +10.99 → +6.96 | −4.04 | p99.7 |
| Jul 1952 | Industrial production | −5.42 → −2.54 | +2.88 | p98.9 |
| Jun 1952 | Industrial production | −5.61 → −0.84 | +4.77 | p100.0 |
| Jan 1952 | Industrial production | +0.00 → +1.68 | +1.68 | p95.7 |
| Aug 1951 | Industrial production | +2.35 → −0.84 | −3.19 | p99.4 |
| Aug 1950 | Industrial production | +4.06 → +6.63 | +2.57 | p98.3 |
| Mar 1950 | Industrial production | +2.22 → +3.89 | +1.67 | p95.6 |
| Sep 1949 | Industrial production | +0.59 → +2.35 | +1.76 | p96.3 |
| Dec 1948 | Industrial production | +1.55 → −1.54 | −3.08 | p99.2 |
| Sep 1945 | Industrial production | −8.02 → −10.22 | −2.19 | p97.7 |
| Dec 1943 | Industrial production | −0.81 → −2.43 | −1.62 | p95.4 |
| Oct 1942 | Industrial production | +1.62 → +3.37 | +1.74 | p96.1 |
| Aug 1942 | Industrial production | +1.67 → +3.55 | +1.89 | p96.6 |
| Mar 1942 | Industrial production | +0.00 → +1.64 | +1.64 | p95.6 |
| Jun 1941 | Industrial production | +4.67 → +2.50 | −2.17 | p97.6 |
| Mar 1941 | Industrial production | +1.42 → +3.40 | +1.98 | p97.0 |
| Jun 1940 | Industrial production | +7.55 → +4.27 | −3.27 | p99.6 |
| Mar 1940 | Industrial production | −5.50 → −2.59 | +2.92 | p99.0 |
| Feb 1940 | Industrial production | −8.40 → −4.92 | +3.49 | p99.7 |
| Jan 1940 | Industrial production | −7.03 → −2.40 | +4.63 | p99.9 |
| Dec 1939 | Industrial production | +3.23 → +0.81 | −2.42 | p98.1 |
| Oct 1939 | Industrial production | +8.11 → +6.14 | −1.97 | p96.9 |
| Jul 1939 | Industrial production | +4.08 → +1.94 | −2.14 | p97.4 |
| Apr 1939 | Industrial production | −6.12 → −3.96 | +2.16 | p97.5 |
| Feb 1939 | Industrial production | −2.97 → +0.00 | +2.97 | p99.1 |
| Jan 1939 | Industrial production | −2.88 → +0.00 | +2.88 | p99.0 |
| Nov 1938 | Industrial production | +7.29 → +4.17 | −3.12 | p99.3 |
| Oct 1938 | Industrial production | +5.49 → +3.23 | −2.27 | p97.8 |
| Jul 1938 | Industrial production | +7.79 → +6.17 | −1.62 | p95.3 |
| Jan 1938 | Industrial production | −3.57 → −1.15 | +2.42 | p98.2 |
| Dec 1937 | Industrial production | −5.62 → −8.42 | −2.80 | p98.7 |
| Aug 1937 | Industrial production | +2.63 → +0.00 | −2.63 | p98.4 |
| Jan 1936 | Industrial production | −5.77 → −3.96 | +1.81 | p96.4 |
| Aug 1935 | Industrial production | +0.00 → +2.33 | +2.33 | p98.0 |
| Dec 1934 | Industrial production | +16.22 → +14.67 | −1.55 | p95.0 |
| Dec 1931 | Industrial production | −1.39 → +1.37 | +2.76 | p98.6 |
| Nov 1930 | Industrial production | −4.55 → −2.27 | +2.27 | p97.9 |
| Sep 1930 | Industrial production | −2.17 → +0.00 | +2.17 | p97.7 |
| Apr 1930 | Industrial production | +1.92 → +0.00 | −1.92 | p96.8 |
| Feb 1930 | Industrial production | +2.91 → +0.94 | −1.97 | p97.0 |
| Nov 1929 | Industrial production | −9.40 → −6.78 | +2.62 | p98.3 |
| Sep 1929 | Industrial production | −1.63 → +0.00 | +1.63 | p95.5 |
| Aug 1929 | Industrial production | −0.81 → −2.42 | −1.61 | p95.2 |
| Apr 1929 | Industrial production | +3.36 → +1.68 | −1.68 | p95.8 |
| Jan 1929 | Industrial production | +3.54 → +0.85 | −2.69 | p98.5 |
| Nov 1928 | Industrial production | −1.75 → +0.00 | +1.75 | p96.3 |
| Oct 1928 | Industrial production | +0.00 → +1.75 | +1.75 | p96.3 |
| Mar 1928 | Industrial production | −0.91 → +0.93 | +1.84 | p96.5 |
| Feb 1928 | Industrial production | +3.77 → +1.89 | −1.89 | p96.7 |
| Jan 1928 | Industrial production | +7.07 → +4.95 | −2.12 | p97.2 |
Vintages come from ALFRED (the St. Louis Fed's archival FRED), re-read nightly. The derived tables are incremental and write-once: new first prints append, and each observation's settled value is written exactly once when its +3y birthday passes. The pipeline's anchor rows are reproduced digit-exact from the archives in the test suite on every run. They are 2008-11 payrolls −533k → −802k, 2020-04 personal income +10.51 → +11.74, 2008Q4 GDP −3.80 → −8.89, and the 2008-02-01 payrolls recognition date.