Are poorer countries catching up?
For decades the answer was no. From 1960 to 2000 richer countries grew faster, and the world's income gaps widened. After about the year 2000 the sign flipped — poorer countries finally grew faster on average. This is the "new era of unconditional convergence" documented by Patel, Sandefur, and Subramanian (2021). But convergence is real, slow, and counter-intuitive: even after the 2000 sign flip, the actual spread of world incomes kept growing until 2008.
This app lets you turn the dials yourself. Across four tabs you will simulate a Solow-style cross-section and watch β-convergence emerge from the speed parameter; explore the post's actual rolling-β estimates as the start year slides from 1960 to 2010; and step through the year-by-year income variance to see the 8-year lag between β-convergence and σ-convergence in the data.
β vs σ — two views of the same race
Both views ask "is the gap closing?" but measure it differently. β-convergence watches whether the country that started behind is now running faster. σ-convergence watches the width of the pack. The animation below contrasts the two: the blue runner (rich) and the orange runner (poor) close on each other (β-convergence), while the dashed bar in the middle tracks the variance of log income across a small set of countries — the variance can stay flat or even rise while individual runners are converging, because random shocks redistribute incomes even as the catch-up force operates.
Solow Simulator
Set the convergence speed β and the noise level. Watch a fresh cross-section of 84 simulated countries grow over 19 years. See the OLS scatter and the implied half-life update live.
Rolling β
The post's actual rolling-β estimates — slide the start year from 1960 to 2010 and watch the coefficient cross zero around 1990 and stabilise near +0.0036 for the recent windows.
σ Evolution
Sixty years of cross-country income variance from the post's balanced 84-country panel. The peak is in 2008, eight years after β-convergence begins — the lag is visible at a glance.
Glossary (open a card if a term is unfamiliar)
β-convergence
σ-convergence
Slope λ vs. speed β
Half-life τ
Structural break
Rolling window
NLS
Why β alone is not enough
Solow Simulator — generate a cross-section and watch β-convergence emerge
Each "country" is drawn with a random initial log-income and a true steady-state. Growth over the next T years is governed by the Barro–Sala-i-Martin convergence equation:
gi = α − [(1 − e−βT)/T] · ln(yi,0) + εi
Drag β (the true convergence speed) and σ (the noise) and watch the OLS fit on the simulated data update live. Compare the recovered λ̂ and half-life to the values you set.
What to look for
- Pull β positive and watch the fitted line tilt downward in the scatter: poorer countries grow faster. Pull β negative and the line tilts upward — the divergence regime of 1960–2000.
- Notice the recovered β̂ is noisy. Even when the true β is the 2%/year benchmark, a single 19-year cross-section recovers it imprecisely. This is the §6 lesson: unconditional convergence is real but statistical power is limited.
- Shrink the noise σ and the OLS line snaps to its true slope. Real cross-country growth has σ ≈ 0.015 — the deck is stacked against detecting convergence from one window alone.
- Press the reseed button to draw a fresh sample with the same parameters. The variation across draws is the standard error you see in the post's regression tables.
The post's rolling-β plot — interactively
These 51 estimates come straight from convergence_rolling_beta_ols.csv
in the post's folder — the same data behind Figure 6. Each dot is one OLS
regression of annualised growth on log initial income, with start year on
the x-axis and end year fixed at 2019. Use the highlight slider to read
out a single window; toggle the convergence-benchmark line to compare to
the 2% conditional-convergence baseline.
start → 2019.What to look for
- Slide the highlight to 1960: β = −0.00056. The post's headline "no convergence over 1960–2019" sits right there. The estimate is statistically indistinguishable from zero.
- Slide to 1990: β crosses zero. This is the moment the new era of unconditional convergence becomes visible in the rolling plot.
- Slide to 2000: β = +0.00365, half-life = 190 years. Statistically significant (CI excludes zero) — the post's headline result.
- Slide to 2008: β peaks at +0.00525, the strongest convergence in the data. After this the post-financial-crisis estimates moderate.
- Compare every window to the 2% benchmark: the dashed teal line shows where Barro–Sala-i-Martin's 1992 conditional-convergence rate sits. Unconditional convergence is real but five-to-six times slower.
σ evolution — when does the actual gap start closing?
The year-by-year variance of log GDP per capita across the post's 84-country
balanced panel (convergence_sigma_evolution.csv). β-convergence
began around 2000; σ-convergence did not start until 2008. This 8-year lag
is the §13 message of the post made visible at a glance.
What to look for
- From 1960 to 2008 the variance rises almost monotonically: 0.924 → 1.918, a 108% widening. The world income distribution was getting wider, not narrower.
- The variance peaks in 2008 at 1.918, then declines. This is when σ-convergence finally begins — eight years after β-convergence.
- By 2019 the variance is 1.764 — still 91% above the 1960 level. Sigma-convergence since 2008 has only undone a small fraction of the prior divergence.
- Toggle the 2000 and 2008 markers off to see the smooth shape of the curve. Toggle them on to spot the lag visually.
- Connect back to Tab 3: in the rolling-β plot the coefficient turns positive around 1990; in the σ plot the variance does not turn down until 2008. Both pictures together show why §13 calls β necessary but not sufficient.