Okun's law in the US, 1960Q1–2019Q4 (task F6-conf-03)
Question
How much does the quarterly change in the US unemployment rate (Δu_t, pp) respond to quarterly real GDP growth (g_t = 100·Δln GDPC1, %, not annualised), in Δu_t = α + β·g_t + ε_t over 1960Q1–2019Q4? And is (α, β) the same in 1960Q1–1983Q4 as in 1984Q1–2019Q4?
Data and exclusions
GDPC1.csv(319 rows, 1947Q1–2026Q3) andUNRATE.csv(945 monthly rows, 1948-01 to 2026-09). SHA-256 checksums matchdata/README.md. Neither file has duplicate or missing dates.- Data problem found: UNRATE has an empty value for 2025-10-01. This falls outside the 1959Q4–2019Q4 window, so it does not affect any estimate.
- I dropped all observations after 2019Q4 before doing any computation. Quarterly u_t is the mean of the three monthly values; the script checks that every quarter in the window has all 3 months. 1959Q4 levels are used only to form the 1960Q1 differences. The result is 240 regression quarters: 96 in subperiod 1 and 144 in subperiod 2.
- Both series are current vintages, i.e. revised data with GDP in chained 2017 dollars, not real-time data. This is noted as a limitation below.
Method
- Baseline: predict Δu by its full-sample mean. RMSE = 0.325 pp.
- Model: OLS of Δu_t on a constant and g_t. Standard errors are Newey–West HAC with a Bartlett kernel. The lag length is 4, from the rule L = floor(4·(T/100)^(2/9)) with T = 240. The 95% CI uses ±1.96·SE (normal approximation).
- Subperiod OLS fits. Classical Chow test: F = [(SSR_pooled − SSR_1 − SSR_2)/2] / [(SSR_1 + SSR_2)/(n − 4)], compared with F(2, 236).
- Robustness checks, written to
out/robustness.jsonby the same script: HAC standard errors at lags 0/2/4/8/12; a HAC Wald version of the break test using a regression with subperiod dummies and interactions; the break-even growth rate −α/β in each subperiod. - Everything is reproduced by
~/wp29/venv/bin/python out/analysis.py, which is deterministic.
Results
| sample | n | α | β | HAC SE(β) |
|---|---|---|---|---|
| 1960Q1–2019Q4 | 240 | 0.184 | −0.256 | 0.036 |
| 1960Q1–1983Q4 | 96 | 0.254 | −0.259 | 0.039 |
| 1984Q1–2019Q4 | 144 | 0.152 | −0.273 | 0.068 |
(out/table1.csv; figure: out/figure1.png.)
- Full sample: β = −0.256 pp of unemployment per 1% quarterly GDP growth, with 95% CI [−0.326, −0.186]. The interval lies entirely below zero, so the conclusion code is
negative_effect. Model RMSE is 0.250 pp, against 0.325 pp for the mean-only baseline. - The Chow test gives F = 6.09 with p = 0.0026. Under the classical test, the joint equality of (α, β) across the two subperiods is rejected at 5%, so the stability conclusion is
unstable. - The break is not in the slope. The two subperiod slopes are almost the same (−0.259 vs −0.273). Their difference is −0.014 with HAC SE 0.078, and a HAC Wald test of the slope alone gives p = 0.85. What changes is the intercept, together with the slope: the break-even growth rate −α/β falls from about 0.98% per quarter to about 0.55% per quarter. This is consistent with slower trend growth after 1984. The joint HAC Wald test also rejects (χ²(2) = 10.9, p = 0.004). The intercept difference on its own is not significant (p = 0.25), because the intercept and slope estimates are strongly correlated. In short, the data reject a stable Okun relation as a whole, but the β coefficient itself looks stable.
Uncertainty
- The HAC standard error of β is 0.036, against 0.020 under iid assumptions. The Durbin–Watson statistic of the residuals is 1.22, which indicates positive autocorrelation, so the naive standard error is too small.
- The HAC standard error moves little with the lag length: 0.029 at lag 0 (heteroskedasticity-robust only), 0.034 at lag 2, 0.036 at lag 4, 0.037 at lag 8 and 0.036 at lag 12. The CI stays well away from zero at every lag.
- The classical Chow test assumes iid homoskedastic errors, which these residuals violate. Its p-value of 0.0026 is therefore probably too small. The HAC Wald version (p = 0.004) reaches the same conclusion, which makes the rejection more credible.
- The subperiod table reports HAC standard errors (lag 4) for the subperiod slopes too.
Limitations and open issues
- What would invalidate the result: Okun's law is a reduced-form co-movement, not a causal effect of output on unemployment. Both variables are driven by common shocks, and growth is measured with error. Measurement error biases β toward zero. If the true relation is dynamic (lags of g matter), the contemporaneous β understates the cumulative response. I did not estimate a distributed-lag specification.
- Break date: I used the 1984Q1 break date imposed by the task, not a date estimated from the data. Searching for the break (e.g. Quandt–Andrews or Bai–Perron) could find a different date, and with a searched date the classical Chow critical values would no longer apply. A rejection at 1984 also does not show that the relation is stable within each subperiod. I did not check for rolling or recursive instability, such as the "jobless recoveries" after 1991, 2001 and 2009, or the 2008–09 episode.
- Data vintage: the estimates use today's revised GDP and benchmark-revised unemployment, not the data available in real time. Coefficients estimated on real-time data can differ.
- Not checked: the gap-form Okun law, possible asymmetry between expansions and recessions, the influence of outliers (e.g. 1980–82, 2008Q4–2009Q1; the largest Δu values are visible in the figure), and the small-sample performance of the HAC standard errors with a rule-of-thumb lag. The CI uses a normal approximation; a t(238) distribution would make no material difference.
- Main threat to the stability conclusion: whether the model is "unstable" depends on testing α and β jointly. A reader who cares only about β would conclude it is stable (slope-only p = 0.85). I report the stability label as the task defines it (joint test,
unstable) and flag this distinction.