Margins & Cost Channels

Margin
Loading…
Inflation
Loading…
Character
Loading…
Sectors
Loading…

The margin squeeze — producer prices (PPI) versus consumer prices (CPI). When producer costs outrun what companies can charge consumers, the spread is positive and margins compress. The pills read that spread.

Expansionaryspread < −0.5
Balanced−0.5 to +0.5
Squeezespread > +0.5
Regime definitions & method
Expansionary PPI − CPI < −0.5pp — consumer prices rising faster than producer costs; companies hold pricing power and margins expand.
Balanced −0.5 to +0.5pp — costs and prices moving together; margins roughly stable.
Squeeze PPI − CPI > +0.5pp — producer costs outrunning consumer prices; companies absorb the gap and margins compress.
PPI = final-demand producer prices (PPIFIS); CPI = core consumer prices (CPILFESL). Positive spread = producers absorbing costs.
Producer Prices YoY
PPIFIS, %
Core CPI YoY
CPILFESL, %
PPI − CPI Spread
pp · + = squeeze
Producer Prices — YoY
Final-demand PPI growth — the cost side companies face.
Core Consumer Prices — YoY
Core CPI growth — what companies can pass on to consumers.
PPI − CPI Spread
The cost-absorption gap. Above zero, producer costs outrun consumer prices; sustained readings above +0.5pp (shaded) are a margin squeeze.

How high inflation is — realized CPI/PCE and the market's expectations. The pills read core PCE, the Fed's preferred gauge, against its 2% target.

Below target< 2%
Near target2–3%
Above target> 3%
Regime definitions & method
Below target core PCE < 2% — inflation soft; room for policy to ease.
Near target 2–3% — above the 2% goal but not alarming.
Above target > 3% — inflation hot; keeps policy restrictive and pressures real margins.
Realized: headline CPI (CPIAUCSL), headline & core PCE (PCEPI / PCEPILFE). Expectations: 10Y breakeven (T10YIE), 5y5y forward (T5YIFR), and the UMich 1-year survey (currently %).
Headline CPI YoY
CPIAUCSL, %
Core PCE YoY
PCEPILFE, %
5y5y Forward
T5YIFR, % expected
Realized Inflation — YoY
Headline CPI (solid) and headline PCE (dashed). Dashed lines mark the 2% target and 3% hot boundary.
Market Expectations
10-year breakeven (solid) and the 5y5y forward (dashed) — where the bond market sees inflation settling.
Core PCE — YoY
The Fed's preferred measure. The 2% target and 3% lines are marked; sustained readings above 3% (shaded) keep policy tight.

The character of inflation — demand-pull versus supply-shock. Supply-driven (cost-push) inflation is harder to pass on and squeezes margins more. The pills read the headline-minus-core gap.

Demand-drivengap < 0.5
Mixed0.5–1.0
Supply shockgap > 1.0
Regime definitions & method
Demand-driven headline − core < 0.5pp — broad-based inflation from demand; companies can pass it on, so margins hold up better.
Mixed 0.5–1.0pp — some commodity/energy pass-through building.
Supply shock > 1.0pp — energy/commodity-led; cost-push inflation that compresses margins, since it's hard to pass to consumers.
Gap = headline CPI YoY − core CPI YoY; the wedge is mostly energy and food. Energy index (PNRGINDEXM) and WTI crude track the shock source.
Headline − Core Gap
pp · >1 = supply shock
Energy Index YoY
PNRGINDEXM, %
WTI Crude YoY
DCOILWTICO, %
Energy Prices — YoY
The energy price index, year-on-year — the dominant supply-shock driver.
Headline vs Core CPI — YoY
Headline (solid) versus core (dashed). When headline pulls above core, the wedge is supply-side.
Headline − Core Gap
The wedge between headline and core. Above +1.0pp (shaded) the inflation impulse is supply-driven — the margin-unfriendly kind.

Who eats the inflation — input-cost pressure versus revenue tailwind, mapped to each sector via 40+ commodities and PPI components. The pills read how broad the squeeze is.

Broad tailwindfew squeezed
Mixed3–5 squeezed
Broad squeeze≥ 6 squeezed
Regime definitions & method
Each GICS sector is scored on input-cost pressure and revenue tailwind (the YoY rise in what it sells). Net = revenue − cost: positive is a tailwind, negative is a squeeze.
Input-cost pressure is a weighted decomposition: score = Σ weightₛ,c × YoYc, where the cost-share weights (BEA input-output use table) live in a maintained config (output/sector_cost_weights.json, each sector row sums to 1.0). The commodity contributions therefore reconcile exactly to the displayed score. Click a sector bar for its waterfall, a heatmap cell/row for a commodity's history. If a commodity series is stale it is dropped and the remaining weights are renormalized (see the coverage note).
Broad squeeze ≥ 6 sectors net-negative · Mixed 3–5 · Broad tailwind < 3. Commodity producers (Energy, Materials) gain when inputs rise; cost-takers (Industrials, Tech) lose.
Sectors Squeezed
net margin < 0
Most Squeezed
 
Strongest Tailwind
 
Input-Cost Pressure by Sector
Weighted YoY of the commodities and producer prices each sector consumes — higher is worse. Click a sector to break its score into commodity contributions.
 
Revenue Tailwind by Sector
YoY rise in what each producer sector sells — higher is better. Only commodity-producing sectors score here.
Net Margin Score by Sector (revenue − cost)
The per-sector margin verdict. Green = tailwind (margins helped); red = squeeze (margins hurt). Ranked best to worst.
Commodity → Sector Contributions
Each cell is weight × YoY = the commodity's contribution to that sector's input-cost score. Red raises cost, green eases it; intensity scales with magnitude. Click a cell or row for the commodity's YoY history.