- Home
- Labor & Logistics Indicators
- Methodology
// METHODOLOGY
How the Productiv Labor & Logistics Pressure Index is built
Latest final reading: August 2026, in the October 2026 issue. Download the full history (CSV).
What it measures
One monthly number that answers one question: compared with a normal pre-pandemic year, how much cost and labor pressure is there on running warehouses, fulfillment, and onsite kitting and co-packing?
- 100 = the 2015–2019 average.
- Every 10 points = one standard deviation of the index over 2015–2019, or one "normal-year swing." A reading of 120 is about two normal-year swings above average.
- Higher = more pressure: faster wage growth, a tighter labor market, rising fuel and truckload prices, faster input inflation, and more expensive credit.
It is a pressure gauge. It is not a price index, and it does not forecast any company's prices.
Components
Seven public series in three equally weighted pillars. All come from FRED (Federal Reserve Bank of St. Louis), and all are U.S. government data in the public domain.
| Pillar (weight) | Component | FRED series (source) | Transform |
|---|---|---|---|
| Labor (1/3) | Average hourly earnings, transportation & warehousing | CES4300000003 (BLS CES, seasonally adjusted) | % change from a year earlier |
| Labor | Job openings rate, transportation, warehousing & utilities | JTU480099JOR (BLS JOLTS, not seasonally adjusted) | Level, minus the 2015–2019 average for that calendar month |
| Labor | Quits rate, transportation, warehousing & utilities | JTU480099QUR (BLS JOLTS, not seasonally adjusted) | Level, minus the 2015–2019 average for that calendar month |
| Freight (1/3) | On-highway diesel price | GASDESW (EIA, weekly) | Calendar-month average, % change from a year earlier |
| Freight | PPI, long-distance truckload | PCU484121484121 (BLS PPI) | % change from a year earlier |
| Capital & Inputs (1/3) | PPI, final demand | PPIFIS (BLS PPI, seasonally adjusted) | % change from a year earlier |
| Capital & Inputs | 10-year Treasury constant-maturity yield | DGS10 (Federal Reserve H.15, daily) | Calendar-month average, level |
Licensed industry data (ISM, the Logistics Managers' Index, DAT, Cass, corporate bond yields) is left out so the index and its history can be republished freely. Warehousing employment, CPI, industrial production and e-commerce share are tracked in the report but are not index inputs.
Formula
For each component and month:
- Monthly value. Weekly and daily series are averaged over the calendar month. A month needs at least 3 weekly or 10 daily observations, and only completed months count.
- Transform as in the table. Year-over-year changes use the same month a year earlier. If that month is missing, the change is missing; gaps are never bridged.
- Seasonal adjustment for JOLTS (published not seasonally adjusted): subtract that calendar month's 2015–2019 average.
- Standardize against the fixed 2015–2019 baseline:
z = (value − baseline mean) / baseline standard deviation. Every component is signed so that higher means more pressure. - Cap each z-score at ±5 so one extreme series can't dominate. The history CSV flags every month where the cap binds.
- Pillar score = simple average of the available component z-scores in the pillar.
- Composite = equal-weighted average of the three pillar scores. Component weights are therefore 1/9 each in Labor and 1/6 each in Freight and in Capital & Inputs.
- Scale:
Index = 100 + 10 × (composite − baseline mean) / baseline standard deviation. The three pillar sub-indices are scaled the same way, each against its own baseline.
Month-over-month and year-over-year changes are reported in index points, not percent, because the index is a standardized score.
Why a fixed 2015–2019 baseline? A rolling baseline gradually treats any lasting shock as normal and rewrites history every month. 2015–2019 was the last stretch without a pandemic or an inflation shock. The baseline parameters are frozen and refreshed once a year, after the February benchmark revision to BLS payroll data, so routine data revisions move the index only through the data, not through the yardstick.
Why equal pillar weights? They are transparent and easy to check. Equal weights are a simplification, not anyone's actual cost mix.
Release lag: finals only
When the sources publish data for month M:
| Source | Typical release |
|---|---|
| Diesel (EIA, weekly) | Every Monday; the month is complete right after month-end |
| 10-year Treasury (daily) | Next business day |
| Average hourly earnings (BLS CES) | First Friday of month M+1 |
| PPI (truckload, final demand) | About mid-month M+1 |
| JOLTS openings and quits | About the first week of month M+2 (the slowest) |
A month is published once all seven components are out, normally just after the JOLTS release early in month M+2. Each issue reports the latest final month only; the October 2026 issue reports August 2026. Partial months are not shown. If an agency skips a month, that component is dropped for that month, the remaining weights are renormalized, and the gap is noted. Nothing is interpolated or estimated.
Revision policy
- Every issue recomputes the full history from the latest data. BLS revises payroll data for two months and benchmarks every February; PPI revises for four months; JOLTS revises the prior month and annually.
- Published issues are not edited. If a month we have already published moves by 1 point or more, the next issue says so in a footnote.
- Changes to components or weights are announced one issue ahead and published with a full restated history.
Limitations
- National, not local. Regional labor and freight markets can differ from the national picture.
- Broad industry definitions. Transportation and warehousing pay includes truck drivers and airline workers, and JOLTS groups utilities with transportation and warehousing. Neither is warehouse-specific.
- No warehouse rent or occupancy cost. Free, monthly, long-history public data doesn't exist.
- Truckload PPI is a list-price index. It lags spot markets and doesn't capture parcel surcharges or accessorial charges.
- Diesel swings hard. The cap rarely binds for fuel, so fuel spikes move the headline.
- Fixed baseline. 2015–2019 was a low-rate, low-inflation period, so rates and producer prices look extreme against it. That is accurate, but readers should know the yardstick.
- The 10-year Treasury is at the cap. In August 2026 its monthly average is more than five baseline standard deviations above the 2015–2019 mean, so its z-score is capped at +5. While capped, further rate increases don't raise the Capital & Inputs pillar, so the index understates rate pressure.
- Statistical, not causal. The index says pressure is high. It doesn't say why for any one business.
Data and citation
The full monthly history since November 2010, with each component's raw value, transformed value and z-score, is a CSV download under the index chart in each issue.
Cite as: Productiv Labor & Logistics Pressure Index. Productiv calculations from BLS (CES, JOLTS, PPI), EIA, and the Federal Reserve (10-year Treasury) via FRED, Federal Reserve Bank of St. Louis. 100 = 2015–2019 average.
Questions about the method or the data: contact us. Canonical data file: https://getproductiv.com/data/labor-logistics-indicators/2026-10/00-pressure-index.csv