Beveridge Curve: US Job Openings per Unemployed Worker Monthly (2000–2026)

The Beveridge Curve dataset is an Eco3min monthly composite serving the vacancy-to-unemployed ratio (V/U) — JOLTS job openings divided by the number of unemployed persons — with both components included, since December 2000. Above 1.0, there are more open positions than jobless workers; the ratio peaked at 2.04 in March 2022, bottomed at 0.15 in July 2009, and stood at 1.04 in mid-2026. The component columns let you plot the Beveridge curve itself: openings against unemployment, the standard diagram for separating cyclical slack from matching-efficiency shifts.

Dataset: Beveridge Curve — Job Openings per Unemployed (2000–2026) · Eco3min composite · Updated 2026-05-01

Latest Value
1.04
May 1, 2026
Historical Percentile
77.4th
Above average
Historical Average
0.72
305 observations
Historical Range
HIGH
2.04
Mar 1, 2022
LOW
0.15
Jul 1, 2009

You have the data. Get what it means. New analyses and the live macro-regime read — only when there's something worth your time. No filler.


Loading data…

Sources: US Bureau of Labor Statistics (JOLTS, CPS) via FRED · Eco3min calculation


Macro Takeaway

The V/U ratio became the single most-quoted tightness measure of the post-pandemic cycle — the “two job openings for every unemployed worker” of 2022 is this series at its 2.04 peak. Its historical range is remarkable: from 0.15 at the 2009 trough (seven unemployed workers per opening) to above 2.0 thirteen years later, a thirteen-fold swing in worker bargaining position.

The ratio’s structural milestone came in January 2018, when it crossed 1.0 for the first time in the JOLTS record; the 2018–2019 average of 1.16 defines the pre-pandemic full-employment benchmark. The 2023–2026 normalization brought it back to 1.04 — almost exactly that benchmark — with most of the adjustment coming through falling openings rather than rising unemployment, the empirical core of the soft-landing debate.

Plotted as a curve (openings vs unemployment), the 2021–2023 episode traced an outward shift and partial return — the matching-efficiency deterioration and recovery documented across the literature. The unemployment rate and quits rate complete the tightness picture.


Construction & Components

The composite divides the stock of open positions by the stock of job seekers — the labor market’s demand/supply ratio in its most direct form.

Formula:

V/U ratio = JTSJOL / UNEMPLOY

Components:

  • Job openings — FRED series JTSJOL — BLS JOLTS, total nonfarm openings, thousands, seasonally adjusted, monthly. Public domain.
  • Unemployed persons — FRED series UNEMPLOY — BLS Current Population Survey, unemployment level, thousands, seasonally adjusted, monthly. Public domain.

Frequency reconciliation: none needed — both are monthly and in thousands, so the ratio is unit-free. Coverage starts December 2000 (JOLTS inception); the unemployment component extends back to 1948 and is truncated at the join.

A note on the name. The Beveridge curve proper plots the vacancy rate against the unemployment rate. This dataset serves the levels ratio V/U — the summary statistic used in Fed communication and most current commentary — and includes both level components so the classic rate-based curve can be reconstructed (normalize each by the labor force). The two representations tell the same story at any point in time.


Dataset Overview

IndicatorBeveridge Curve — Job Openings per Unemployed (2000–2026)
GeographyUnited States
FrequencyMonthly
PeriodDecember 2000 – present
Variablesdate, job_openings, unemployed, vacancy_unemployed_ratio
FormatCSV, Excel (XLSX)
SourcesUS Bureau of Labor Statistics (JOLTS + CPS), via FRED; Eco3min calculation
Last updated

Dataset Variables

The CSV and Excel files contain the following columns.

ColumnTypeDescription
dateDate (YYYY-MM-DD)First day of the reference month
job_openingsFloatTotal nonfarm job openings, thousands, seasonally adjusted (JTSJOL)
unemployedFloatUnemployed persons, thousands, seasonally adjusted (UNEMPLOY)
vacancy_unemployed_ratioFloatJob openings per unemployed worker (V/U)

A ratio of 1.04 means 104 open positions per 100 unemployed workers.


Download the Complete Dataset

The full dataset is available in CSV and Excel formats, with both components included alongside the ratio — everything needed to plot the curve itself.

You have the data. Get what it means. New analyses and the live macro-regime read — only when there's something worth your time. No filler.


FRED Direct CSV Access — Source Components

Both components are publicly available from FRED and can be downloaded individually:

https://fred.stlouisfed.org/graph/fredgraph.csv?id=JTSJOL
https://fred.stlouisfed.org/graph/fredgraph.csv?id=UNEMPLOY

Direct CSV Access — Eco3min Composite Dataset

https://eco3min.fr/dataset/beveridge-curve.csv

This URL returns the pre-computed ratio with both components, ready for pandas, R, curl, or any data tool.


Using the Dataset in Python

import pandas as pd
import matplotlib.pyplot as plt

url = "https://eco3min.fr/dataset/beveridge-curve.csv"
df = pd.read_csv(url, parse_dates=["date"])

print(f"Latest V/U: {df['vacancy_unemployed_ratio'].iloc[-1]:.2f}")

# Plot the Beveridge curve itself (openings vs unemployed)
plt.scatter(df["unemployed"], df["job_openings"], c=df["date"].dt.year, s=8)
plt.xlabel("Unemployed (thousands)"); plt.ylabel("Job openings (thousands)")
plt.colorbar(label="Year"); plt.show()

Using the Dataset in R

library(readr)

url <- "https://eco3min.fr/dataset/beveridge-curve.csv"
df <- read_csv(url)

tail(df)
plot(df$unemployed, df$job_openings, pch = 20,
     xlab = "Unemployed (thousands)", ylab = "Job openings (thousands)")

Both examples load the dataset directly from the URL — no download or API key required.


Methodology

The composite is rebuilt daily (Mon–Sat, 08:00 UTC) by an Eco3min pipeline that pulls both BLS series from the FRED API, aligns them on matched months, and computes the ratio. No smoothing or adjustment is applied; JOLTS and CPS revisions propagate automatically on the next rebuild.

The two components come from different instruments: openings from an establishment survey (JOLTS), unemployment from the household survey (CPS). This is the standard construction — the same one used in Federal Reserve communication — but it means numerator and denominator carry independent sampling error and separate revision cycles.


Data Quality & Provider Notes

  • Release latency. The ratio updates on the JOLTS calendar (~5 weeks after the reference month); the unemployment component is available weeks earlier, so the latest month always uses matched — not most-recent — data.
  • Revisions. Both components revise: JOLTS monthly and at annual benchmarks, CPS with population-control adjustments each January. Ratio moves within ±0.05 are routine revision noise.
  • Response-rate caveat. JOLTS response rates roughly halved after 2020, widening uncertainty on the numerator — the ratio inherits it.
  • Known gaps. None; continuous since December 2000.

What This Index Captures (And What It Doesn’t)

What it captures:

  • Labor-market tightness as a demand/supply ratio — the worker’s-eye view of how many positions compete for each job seeker.
  • Matching-efficiency shifts, when plotted as a curve: outward movement (more openings at the same unemployment) signals worse matching, as in 2021–2022.
  • The bargaining backdrop for wage dynamics — sustained readings above ~1.2 have coincided with accelerating wage growth in the JOLTS era.

What it does NOT capture (common misinterpretations):

  • Who the unemployed are. The denominator excludes discouraged workers and those marginally attached — the broader U-6 universe. A tight V/U can coexist with hidden slack.
  • Match quality. One opening in nursing and one unemployed steelworker make the ratio 1.0; skill and geography mismatch is invisible in the aggregate.
  • Posting intensity. If firms over-post (“ghost postings”), the numerator inflates tightness. The post-2021 openings-to-hires gap suggests caution with level comparisons across eras.
  • A recession trigger. The ratio has no threshold property; it describes the mix of adjustment (vacancies vs jobs) rather than predicting the cycle.

Historical Regimes

2001–2007 — The sub-parity era. The ratio spent its first seven years between 0.4 and 0.8: even the mid-2000s expansion never produced more openings than job seekers.

2008–2009 — The collapse. V/U fell to 0.15 (July 2009) — roughly seven unemployed workers per opening, the weakest worker bargaining position in the series.

2010–2017 — The nine-year climb back. A near-monotonic recovery from 0.2 toward parity; the ratio was still only 0.60 in January 2015, six years into the expansion.

2018–2019 — First crossing. January 2018: above 1.0 for the first time in the JOLTS record. The 2018–2019 average of 1.16 became the reference point for “full employment without overheating.”

2020 — Whiplash. The pandemic drove the ratio briefly back toward 0.2 as unemployment spiked to 23 million, then reversed within a year as openings rebounded faster than unemployment fell.

2021–2022 — Two jobs per worker. The ratio doubled past every historical precedent to 2.04 (March 2022) — the outward Beveridge-curve shift that anchored the era’s inflation and wage debate.

2023–2026 — The vacancy-channel landing. The ratio retraced to 1.04 by mid-2026, almost exactly the pre-pandemic benchmark — with openings absorbing most of the adjustment while unemployment rose only gradually.


Related Macroeconomic Datasets

The ratio combines one demand series and one supply series; the datasets below decompose it and extend the tightness picture.


Macroeconomic Dataset Hub

This dataset is part of the Eco3min macro-financial data repository.

Explore the Eco3min Dataset Hub

Sources

  • US Bureau of Labor Statistics — JOLTS (job openings) and Current Population Survey (unemployment level)
  • Federal Reserve Bank of St. Louis — FRED series JTSJOL and UNEMPLOY
  • Eco3min Research — ratio construction

Dataset Reference

Last updated — 4 August 2026

Disclaimer – Financial Information: The analyses, commentary, and content published on eco3min.fr are provided for informational and educational purposes only. They do not constitute investment advice or a solicitation to buy or sell financial instruments. Past performance is not indicative of future results. All investment decisions involve risk and are the sole responsibility of the reader.