Presidential Economic Pressure Index — Scoring Framework
PEPIndex · Methodology v1.2.20 · pepi.apiautomations.com
Photo by Samuel Scalzo on Unsplash
A PEPI event is a public statement or formal action by the President that satisfies all four criteria:
| Criterion | Definition |
|---|---|
| Specificity | Identifies a concrete action, target, or consequence — not vague rhetoric. |
| Actionability | Falls within presidential authority or influence to execute. |
| Measurability | Outcome can be independently verified: was the action taken or not? |
| Materiality | Carries economic, diplomatic, or policy consequences significant enough to warrant tracking. |
How a threat moves through the index
Every event follows the same five stages, and can resolve at any of them.
A specific, actionable presidential statement or document is detected and classified.
DetectedRestatements and de-escalations attach to the original threat instead of counting twice.
MonitoringOnce the stated or implied deadline passes, an open forward-looking threat adds live pressure to the index. Action documents and statements that are not new threats never do.
MonitoringImplementing documents, court rulings, congressional actions and independent reporting are linked as evidence.
MonitoringThe event resolves to a published outcome and is scored from 0 (carried out) to 100 (walked back).
Resolved| Domain | Scope |
|---|---|
| Trade & Tariffs | Import tariffs, trade deals, sanctions on goods, export controls |
| Foreign Policy | Military force threats, diplomatic ultimatums, territorial claims |
| Domestic Policy | Executive orders, government shutdowns, personnel and regulatory threats |
| Rhetorical | Lawsuits, boycotts, social media retaliation, interpersonal threats |
Events by domain
All tracked events, including calibration benchmarks
The composite score is a weighted blend of six dimensions. Each is measured independently, and an unmeasured dimension contributes nothing rather than a guessed value.
| Dimension | What it measures |
|---|---|
| Reversal Magnitude | How far the final action deviated from the original threat. For trade events that state an explicit headline rate, it is measured quantitatively from the gap between the announced rate and the rate actually collected, using live USITC applied-rate data. For all other events it is placed on a categorical scale keyed to the outcome type. |
| Timeline Slippage | How far the action slipped past its stated deadline, on a scale that rises quickly for short delays and saturates for long ones. A threat that names no deadline is scored as less credible than one that commits to a date. |
| Rhetorical Dilution | Drop in classifier-assigned severity between the initial threat and the most recent statement matched to the same event. Captures the softening that typically precedes a reversal. Null until such a statement is matched, in which case the dimension contributes nothing rather than assuming no softening — see coverage limits. |
| Scope Reduction | Share of originally targeted entities, countries, or product categories exempted from the final action. Directly informed by the statutory-vs-applied tariff rate gap. |
| Framing Shift | Whether the outcome was reframed as a victory despite being a reversal — the gap between the administration's characterization and independent analysis. |
| Repetition Pattern | Whether this threat has been made and reversed before, measured along a cross-time lineage chain that links each new threat to the resolved prior threat it re-makes. Each prior reversal in the chain raises the score, up to a ceiling. Captures the declining credibility of the serial bluffer. |
Where a threat states an explicit headline rate (“a 145% tariff”), the announced rate is extracted at classification time and the reversal is measured against live USITC applied rates rather than from the categorical outcome label: the larger the share of the announced rate that was never collected, the higher the reversal. The published announced rate, applied rate, gap and score for the benchmark events are tabulated on the TACO Index explainer.
The composite is a fixed weighted blend of the six dimensions; the weights are held constant within a methodology version and any change is recorded in the changelog with the history rebuilt under the new formula.
Provenance weighting. Every resolved outcome carries an evidence source — a court ruling, a congressional record, a Federal Register document, independently corroborated reporting, or the president's own posts (self-reported). Outcomes evidenced solely by self-reported posts have their Reversal-Magnitude dimension discounted, so an uncorroborated claimed walk-back cannot score like a court-verified one. The evidence source is published on every event in the free API.
The rolling PEPIndex is a recency-weighted moving average of all resolved event scores: more recent events carry more weight, and an event's influence fades smoothly with age rather than dropping off at a cut-off. This is the settled index (/api/v1/index). Domain sub-indices (Trade, Foreign Policy, Domestic, Rhetorical) use the same construction filtered to events within each domain.
Live index. A threat that is past its deadline with no outcome is not yet scored, but it is not nothing either. The live index (the dashboard headline, index.live_value in the snapshot) pools that overdue pressure with the settled index. Only forward-looking threats count: an action document (an order that itself imposes the measure) or a statement that is not a new threat never adds pressure. When few threats are overdue the two figures are close.
Branch reaction. Two further sub-indices measure how actively the courts and Congress are acting on tracked threats. Congressional activity counts the bills threats name and the joint resolutions Congress files in response (emergency terminations, rule disapprovals), with recorded votes and Congressional Budget Office cost estimates; responses are linked by reviewed exact rules, never by topic.
Domain sub-indices, last 12 months
Weekly · each domain on the same 0–100 scale
/api/v1/sources/status. Each component updates according to its official source
release schedule — not all sources are daily.
| Source category | Role / used for | Cadence |
|---|---|---|
| Federal Register | Threat detection — executive orders, proclamations, presidential memoranda and determinations, and agency notices such as USTR Section 301 actions | Daily (new documents) |
| Presidential statements | Threat detection — public archive of the president's posts and remarks; feeds the repetition-pattern dimension | Continuous |
| USITC DataWeb | Outcome + economic measurement — applied rates (statutory-vs-applied gap) | Monthly |
| Federal court opinions | Outcome resolution — the trade courts, the Supreme Court and the courts hearing executive-order litigation (tariff validity + executive-order legality) | Several times a day |
| Congress.gov | Outcome resolution (bills a threat names) and congressional reaction — response resolutions (emergency terminations, rule disapprovals), recorded votes, and Congressional Budget Office cost estimates | Every pipeline run; each tracked bill re-read about daily |
| eCFR | Outcome verification — point-in-time CFR snapshots for resolved events | Per resolved event |
| Independent-reporting reconciliation | Outcome resolution — overdue non-trade events, and trade threats no Federal Register document resolves (independent reporting weighted above self-reported posts) | Per overdue event |
| BLS | Economic-impact measurement — CPI component groups, PPI, import prices, employment; government workforce trends (federal, state and local payrolls, federal job turnover — display only) | Monthly, with the agency's release |
| FRED (St. Louis Fed) | Economic-impact measurement + macro context — CPI, trade balance, S&P 500, VIX, yields, dollar index | Daily / monthly (series-specific) |
| Equity market data | Market reaction — S&P 500, VIX and sector-ETF closes around threat/outcome dates | Several times a day |
Threat classification and outcome reconciliation use large language models with human review. They interpret public-source text into structured events and outcomes — they are not themselves data sources. See the full data-source catalogue.
For trade-domain events, PEPI measures real economic consequences using a four-group price-pass-through model. Live measurement runs every cycle on BLS CPI component series grouped into imported/domestic × affected/unaffected, with USITC applied rates and FRED pass-through and incidence series. Per event it publishes the retail pass-through rate, the contribution to all-items CPI, and the consumer share of the tariff cost. Published academic estimates for the 2025 tariffs, including a large retail-scanner replication package, were used only to verify methodology alignment, not as a live input.
| Event | Domain | Authority | Score | Outcome | Key gap |
|---|---|---|---|---|---|
| Section 232 Steel/Aluminum Global (2018) | Trade | Section 232 | 34.0 | Partial reversal | 25% global → ally exemptions (~45% scope) |
| Section 301 China Trade War / Phase One (2018–2020) | Trade | Section 301 | 53.0 | Partial reversal | 25% on $267B → 12.5% avg (Phase One deal) |
| Canada/Mexico Steel USMCA Removal (2018–2019) | Trade | Section 232 | 82.0 | Full reversal | Steel tariffs → zero for CA/MX (USMCA ratification) |
| North Korea: Fire and Fury (2017) | Foreign | — | 95.5 | Full reversal | Military threat → summit |
| Afghanistan: Wipe Off the Earth (2019) | Foreign | — | 97.0 | Full reversal | Destruction → peace deal |
| IEEPA 10% Baseline + Sec 122 (2025) | Trade | IEEPA, Section 122 | 91.0 | Full reversal | Universal surcharge → dual court invalidation |
| Greenland Annexation (2025) | Foreign | — | 90.5 | Full reversal | Acquisition → dropped |
| Russia: Extreme Consequences (2025) | Foreign | — | 88.0 | Reframed | Consequences → summit |
| Liberation Day: 145% on China (2025) | Trade | IEEPA | 82.1 | Partial reversal | 145% → 28.3% applied |
| 14-Country Tariff Deadline (2025) | Trade | IEEPA | 60.5 | Delayed | Full tariffs → frameworks |
| Pharma Tariffs 100% (2025) | Trade | IEEPA, Section 232 | 56.3 | Delayed | 100% → Section 232 |
| Section 232 Steel/Aluminum/Copper 50% — Proclamation 11021 (2026) | Trade | Section 232 | 24.0 | Partial reversal | 50% → tiered 10–15% caps for allies/derivatives |
| Section 232 Metals Amendment (2026) | Trade | Section 232 | 0.0 | Full implementation | 50% regime amended (ally caps 15%, derivatives 10%) — took effect on its stated date, 2026-06-08 |
| Birthright Citizenship EO 14160 (2025) | Domestic | — | 40.5 | Full reversal | Day-1 EO ended birthright citizenship → struck down 6–3 (Trump v. CASA; Wong Kim Ark affirmed) |
| Broadcast-License Revocation Threats (2025) | Rhetorical | — | 78.0 | Abandoned | "Revoke the networks' licenses" → no FCC revocation; networks aren't licensees, threat walked back |
| "Open Up the Libel Laws" (2025) | Rhetorical | — | 80.0 | Abandoned | Vow to rewrite libel law → pursued instead as an ordinary private suit under existing Sullivan standard |
| Musk Subsidies/Contracts Feud Threat (2025) | Rhetorical | — | 75.0 | Abandoned | "Terminate his Subsidies and Contracts" → agreements continued; no procurement or EO vehicle |