What this phase covers
Scores (performance, honesty, electoral strength) are not computed until Phase 5. This headline tab is a placeholder for that scorecard. What is live now: our own approval and generic-ballot averages, computed from poll-level data, compared against published reference averages.
Scoring, briefs and the forecast log are not yet built (Phases 2–5). These two numbers are measurements from section 3 of the methodology, not judgements.
Trump approval live
What this shows: the share of people who say they approve of Trump's job performance, minus the share who disapprove ("net approval"). Above zero means more people approve than disapprove; below zero means the opposite. The shaded band is a plain range of plausible true values, not a certainty — see the Glossary tab for what the band means and why it isn't shown as a precise single number.
Our average on 2026-09-28 00:00:00: -19.0. 20 published aggregators as of 2026-10-01 00:00:00 range from -31.0 to -20.0, cross-aggregator average -24.1. Our figure sits outside the spread of that range; gap vs the cross-aggregator average: +5.1 points.
Our average: recency- and size-weighted, with ridge-shrunk house and population effects (methodology section 3.2). Reference lines are read from Wikipedia's "Opinion polling on the second Trump presidency" aggregate-polls table (CC BY-SA 4.0), which itself republishes Decision Desk HQ, RealClearPolling, Silver Bulletin, NBC News, FiftyPlusOne and others — we do not fetch those sites directly; several of them prohibit automated retrieval in their own terms (docs/source_register.md).
Generic congressional ballot live
What this shows: if everyone voted today, the share who'd pick the Democratic candidate for Congress minus the share who'd pick the Republican. Above zero favours Democrats; below zero favours Republicans. This is a national mood reading, not a prediction for any one district or state.
Our average on 2026-09-26 00:00:00: +8.5. 12 published aggregators as of 2026-10-01 00:00:00 range from +7.7 to +9.0, cross-aggregator average +8.3. Our figure sits within the full spread of that range; gap vs the cross-aggregator average: +0.2 points.
Not yet wired into this dashboard
The collector and parser already support favourability (Trump personal) and issue approval; they are not yet plotted here. Party favourability (the parties, not Trump) has no confirmed free aggregator source as of the Phase 0 audit — see decision log. These are flagged, not hidden.
House control
What this shows: each bar is one forecaster's estimate of the chance Democrats end up with a majority of House seats after the midterms. 50% means a toss-up; closer to 100% means that forecaster is confident Democrats will win control; closer to 0% means confident Republicans hold it.
Our model: 99.7% P(Democratic majority), mean 243 seats (80% range 231–256).
swing = our generic-ballot net (+8.5) minus the 2024 national House margin (-2.6) = +11.1pp applied to each of 144 rated districts' last result (PVI fallback where absent) plus a +2.5pp incumbency term; 179D/109R safe seats fixed; sigma_nat=3.0, sigma_dist=6.0, 10000 simulations. This model is a direct, literal application of the current generic-ballot swing to every rated district (methodology section 6.2) -- it is a sanity layer and a learning exercise, not tuned to match markets or raters. A 3-4pp change in the national swing input can move this probability from near 0 to near 1, because the same point estimate is shared across every district; treat the gap to markets/raters as information, not error.
Senate control
Same idea as the House chart above, but for the Senate.
Our model: 97.7% P(Democratic majority), mean 55 seats (80% range 51–58).
same national swing as the House model (+11.1pp) applied to all 35 seats up, 34D/31R not up this cycle fixed; sigma_nat=3.0, sigma_dist=6.0, 10000 simulations. Same caveat as the House model: a sanity layer, not tuned to markets or raters; small changes in the national swing input move this probability a lot given only 35 seats.
Sanity cross-check, shown separately (not blended into the model above -- see models/elections.py): across the 20 midterms from 1946 to 2022, the president's party lost House seats 90% of the time, averaging -25.6 seats (standard deviation 21.5).
Forecast history
What this shows: how each forecaster's chance-of-Democratic-majority estimate has moved over time. A flat line means a stable race; a steep move means something changed opinion or the model's inputs.
Every probability shown anywhere on this tab is logged to forecast_log the day
it is computed and never edited afterwards, so this history (thin on day one) is what gets Brier-scored
against the 3 November result (methodology section 6.3, Phase 6).
Key: race rating abbreviations and colour
Each rater classifies a race on a scale from "safe" for one party to a genuine "toss-up". The letter after the abbreviation is the party the rater favours (D = Democrat, R = Republican); no letter means toss-up.
| Abbreviation | Meaning |
|---|---|
| Saf / Sol | Safe / Solid — essentially certain to go to the named party |
| Lik | Likely — probably the named party, but not a sure thing |
| Lea | Lean — a modest edge to the named party |
| Til | Tilt — the slightest edge to the named party, barely more than a toss-up |
| Tos | Toss-up — genuinely too close to call |
Cell colour follows the same scale at a glance: deep red = strongly Republican, white = toss-up, deep blue = strongly Democratic, with shades in between.
Most competitive House races (30 shown, closest to a tossup first)
| District | Incumbent | Last result | Cook | IE | Sabato | Economist | SplitTicket | DDHQ | FiftyPlusOne | Fox | Silver | RCP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| IA-2 | R | 57.1 R | Lea R | Til R | Tos | Lea D | Tos | Tos | Lea D | Tos | Tos | Tos |
| NC-11 | R | 56.8 R | Tos | Lea R | Tos | Tos | Lea D | Tos | Tos | Tos | Tos | Tos |
| NC-1 | D | 49.5 D | Lea R | Til R | Tos | Tos | Lea D | Tos | Lea D | Tos | Lea D | Tos |
| FL-22 | open | new district | Tos | Til R | Lea R | Tos | Lea R | Lea R | Lea D | Tos | Lea D | Tos |
| MI-4 | R | 55.1 R | Lea R | Til R | Tos | Tos | Tos | Lea R | Lea D | Tos | Tos | Tos |
| OH-7 | R | 51.1 R | Tos | Tos | Tos | Tos | Tos | Tos | Lea D | Tos | Tos | Lea D |
| PA-8 | R | 50.8 R | Tos | Tos | Tos | Tos | Lea D | Tos | Lea D | Tos | Lea D | Tos |
| VA-1 | R | 56.4 R | Lea R | Lea R | Tos | Tos | Lea R | Lik R | Lea D | Tos | Tos | Tos |
| MI-10 | R | 51.1 R | Tos | Til R | Tos | Lea D | Lea D | Tos | Lea D | Tos | Lea D | Lea D |
| PA-1 | R | 56.4 R | Lik R | Lea R | Lea R | Tos | Tos | Lea R | Lik D | Lea R | Tos | Tos |
| TX-15 | R | 57.1 R | Tos | Til R | Tos | Lea R | Tos | Tos | Lea R | Lea R | Lea R | Lea D |
| TX-35 | open | new district | Lea R | Lea R | Lea R | Tos | Lea D | Tos | Tos | Lea R | Lea R | Tos |
| MI-7 | R | 50.3 R | Tos | Tos | Tos | Tos | Lea D | Lea D | Lik D | Tos | Lea D | Lea D |
| OH-9 | D | 48.3 D | Tos | Til R | Tos | Lea D | Lik D | Lea D | Lea D | Tos | Lea D | Lea D |
| WI-3 | R | 51.4 R | Tos | Tos | Tos | Lea D | Lea D | Lea D | Lea D | Tos | Lea D | Lea D |
| NY-17 | R | 52.2 R | Tos | Tos | Tos | Lea D | Lea D | Tos | Lik D | Lea D | Lea D | Lea D |
| MT-1 | R | 52.3 R | Lea R | Lea R | Lea R | Tos | Lea R | Lea R | Tos | Lea R | Lea R | Tos |
| ME-2 | D | 50.3 D | Lik R | Lik R | Lea R | Tos | Lea R | Lea R | Tos | Tos | Lea R | Tos |
| PA-7 | R | 50.5 R | Tos | Tos | Lea D | Tos | Lik D | Lea D | Lik D | Tos | Lea D | Lea D |
| FL-14 | D | 57.0 D | Tos | Tos | Tos | Lik D | Lea D | Lea D | Lik D | Tos | Lik D | Lea D |
| FL-7 | R | 56.5 R | Lik R | Lik R | Lik R | Lea D | Lea R | Lea R | Lea R | Lea R | Tos | Tos |
| WI-1 | R | 54.1 R | Lea R | Lik R | Lik R | Tos | Lea R | Lea R | Lea D | Lik R | Lea R | Tos |
| FL-25 | D | 52.4 D | Tos | Tos | Tos | Lea D | Lea D | Lea D | Lik D | Lea D | Lik D | Lea D |
| CO-5 | R | 54.7 R | Lea R | Til R | Lea R | Lea R | Lea R | Lik R | Tos | Lea R | Lea R | Tos |
| TX-34 | D | 51.3 D | Tos | Tos | Lea D | Lea D | Lik D | Lea D | Lea D | Lea D | Lea D | Lea D |
| PA-10 | R | 50.6 R | Tos | Tos | Tos | Lik D | Lik D | Lea D | Lik D | Tos | Lik D | Lea D |
| CO-8 | R | 49.0 R | Tos | Tos | Tos | Lea D | Lea D | Lik D | Lik D | Lea D | Lik D | Lea D |
| IA-3 | R | 51.9 R | Tos | Til D | Tos | Lea D | Lik D | Lea D | Lik D | Tos | Lik D | Lea D |
| CA-22 | R | 53.4 R | Tos | Tos | Lea D | Lik D | Lea D | Lik D | Lik D | Tos | Lik D | Lea D |
| FL-9 | D | 55.1 D | Lik R | Lik R | Lik R | Tos | Lea R | Lea R | Lik R | Lea R | Tos | Tos |
Senate races (all 35 up in 2026, closest first)
| State | Incumbent | Last result | Cook | DDHQ | Economist | FiftyPlusOne | Fox | IE | RCP | Sabato | Silver | SplitTicket |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Iowa | R | 51.7 R | Tos | Tos | Tos | Tos | Tos | Til R | Tos | Tos | Tos | Tos |
| Texas | R | 53.5 R | Tos | Tos | Tos | Lea D | Tos | Til R | Tos | Tos | Lea D | Lea D |
| Alaska | R | 53.9 R | Tos | Tos | Tos | Lea D | Tos | Tos | Tos | Tos | Lea D | Lea D |
| Maine | R | 51.0 R | Tos | Tos | Lea D | Lea D | Tos | Tos | Tos | Tos | Lea D | Lea D |
| Ohio | open | new district | Tos | Tos | Lea D | Lea D | Tos | Tos | Tos | Tos | Lea D | Lea D |
| Kansas | R | 53.2 R | Lea R | Lik R | Tos | Tos | Lea R | Lik R | Tos | Lea R | Tos | Lea R |
| Michigan | D | 49.9 D | Tos | Lea D | Lea D | Lea D | Tos | Til D | Tos | Lea D | Lik D | Lea D |
| New Hampshire | D | 56.6 D | Tos | Lik D | Lik D | Lik D | Lea D | Tos | Lea D | Lea D | Lik D | Lik D |
| Nebraska | R | 62.6 R | Lik R | Lik R | Lea R | Lik R | Lik R | Lea R | Tos | Lik R | Lik R | Lea R |
| North Carolina | R | 48.7 R | Lea D | Lik D | Lik D | Lik D | Lea D | Lea D | Lea D | Lea D | Lik D | Lik D |
| Minnesota | open | 48.7 D | Lik D | Lik D | Lea D | Lik D | Lik D | Lea D | Tos | Lik D | Lik D | Lik D |
| South Carolina | R | new district | Lik R | Lea R | Lea R | Lea R | Sol R | Lik R | Lea R | Saf R | Lik R | Lea R |
| Georgia | D | 50.6 D | Lik D | Lik D | Lik D | Saf D | Lik D | Lea D | Lea D | Lik D | Sol D | Lik D |
| Florida | R | new district | Sol R | Lik R | Lea R | Lik R | Sol R | Sol R | Lea R | Saf R | Lik R | Lik R |
| Louisiana | R | 59.3 R | Sol R | Lik R | Lik R | Lik R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Montana | R | 55.0 R | Sol R | Lik R | Saf R | Lik R | Sol R | Sol R | Lik R | Saf R | Sol R | Saf R |
| Mississippi | R | 54.1 R | Sol R | Lik R | Lik R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| South Dakota | R | 65.7 R | Sol R | Saf R | Lik R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Lik R |
| Arkansas | R | 66.5 R | Sol R | Saf R | Lik R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| New Mexico | D | 51.7 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Lik D | Saf D | Sol D | Saf D |
| Alabama | R | 60.1 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Colorado | D | 53.5 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Delaware | D | 59.4 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Idaho | R | 62.6 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Illinois | D | 54.9 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Kentucky | R | 57.8 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Massachusetts | D | 66.2 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| New Jersey | D | 57.2 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Oklahoma | R | new district | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Oregon | D | 56.9 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Rhode Island | D | 66.5 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| Tennessee | R | 62.2 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Virginia | D | 56.0 D | Sol D | Saf D | Saf D | Saf D | Sol D | Sol D | Sol D | Saf D | Sol D | Saf D |
| West Virginia | R | 70.3 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
| Wyoming | R | 72.8 R | Sol R | Saf R | Saf R | Saf R | Sol R | Sol R | Sol R | Saf R | Sol R | Saf R |
Special-election swing
Not yet automated. The Downballot's tracker (the free GREEN-rated source for this) is currently unreachable over HTTPS from this machine (a certificate mismatch, not a terms issue); Ballotpedia and Decision Desk HQ's equivalents are blocked or terms-prohibited respectively (docs/source_register.md). A blank panel is a gap, not a clean reading — flagged here rather than omitted.
Outcome series
How to read each chart below: each line is the actual, published value (inflation rate, unemployment rate, the price of petrol, and so on), but plotted against days since that president's own inauguration rather than the calendar date — so the solid blue line (the current term) lines up directly against the dotted lines for Biden and Trump's first term at the same point in each presidency. "Change since inauguration" is a simple before/after comparison. The table under each chart gives the same comparison as numbers, so you can see whether the current pace looks better, worse, or about the same as recent history — not whether the president personally caused the change.
Presidents influence these series at the margin and with a lag. Changes here are context for the performance score (see the Scorecard tab), not proof of cause. "Same day of term" compares elapsed calendar days from each term's own start, not a matching calendar date (models/performance.py). Border encounters is deferred: CBP replaced its downloadable CSV with a Tableau-embedded dashboard that has no stable export (docs/source_register.md section K). The S&P 500 is excluded by decision 13 (licence terms).
CPI (headline)
What it is: the Consumer Price Index -- the government's main measure of how fast prices for everything people buy (food, rent, petrol, cars, and so on) are rising. Why it matters: it's the standard "inflation" number reported in the news, and it shapes whether voters feel prices are under control.
Latest (2026-08-01): 334.13. Change since inauguration (2025-01-20): +4.8%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 298.01 (2022-10-04) | +13.4% |
| Trump (1st term) | 252.77 (2018-10-04) | +3.8% |
CPI (core)
What it is: the same price index as headline CPI, but with volatile food and energy prices stripped out. Why it matters: food and petrol prices swing around for reasons outside any president's control (weather, wars, OPEC); economists watch "core" CPI as a cleaner read on the underlying inflation trend.
Latest (2026-08-01): 337.76. Change since inauguration (2025-01-20): +4.0%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 299.40 (2022-10-04) | +10.7% |
| Trump (1st term) | 258.92 (2018-10-04) | +3.4% |
Core PCE
What it is: the Federal Reserve's preferred inflation gauge, built from actual spending data rather than a fixed survey basket, and also excluding food and energy. Why it matters: the Fed sets interest-rate policy off this number specifically, so it's a better predictor of the Fed's next move than CPI is.
Latest (2026-08-01): 130.46. Change since inauguration (2025-01-20): +4.7%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 116.19 (2022-10-04) | +9.4% |
| Trump (1st term) | 102.37 (2018-10-04) | +3.0% |
Unemployment rate
What it is: the share of people who want a job and are actively looking for one, but don't have one. Why it matters: it's the most-watched single signal of how the job market feels to ordinary people, and a rising rate is one of the most reliable predictors of a president's approval rating falling.
Latest (2026-09-01): 4.20. Change since inauguration (2025-01-20): +0.2 points.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 3.60 (2022-10-04) | -2.8 points |
| Trump (1st term) | 3.80 (2018-10-04) | -0.9 points |
Nonfarm payrolls
What it is: the net number of jobs added or lost across the economy each month. Why it matters: it's released monthly and moves markets instantly; a run of weak reports is usually the first hard sign of a slowing economy, well before the unemployment rate itself rises.
Latest (2026-09-01): 159044.00. Change since inauguration (2025-01-20): +0.5%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 153939.00 (2022-10-04) | +7.8% |
| Trump (1st term) | 149527.00 (2018-10-04) | +2.7% |
Real average hourly earnings
What it is: how much an hour of work actually buys, after accounting for inflation ("real" means inflation-adjusted). Why it matters: wages can rise in dollar terms while buying less if inflation rises faster -- this series tells you whether workers are actually getting ahead or falling behind.
Latest (2026-08-01): 22.57. Change since inauguration (2025-01-20): +0.6%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 21.91 (2022-10-04) | -3.7% |
| Trump (1st term) | 21.62 (2018-10-04) | +1.5% |
Real GDP
What it is: the total value of everything the US economy produces, adjusted for inflation. Why it matters: it's the broadest single measure of whether the economy is growing or shrinking -- two straight quarters of decline is the informal definition of a recession.
Latest (2026-04-01): 24408.01. Change since inauguration (2025-01-20): +3.2%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 22272.55 (2022-10-04) | +5.5% |
| Trump (1st term) | 20304.87 (2018-10-04) | +4.7% |
Consumer sentiment (UMich)
What it is: a monthly survey asking ordinary people how they feel about their own finances and the economy's direction. Why it matters: it often moves before the hard economic data does, and it's a direct read on the "vibes" that drive approval ratings and midterm elections.
Latest (2026-08-01): 51.70. Change since inauguration (2025-01-20): -20.0 points.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 59.90 (2022-10-04) | -19.1 points |
| Trump (1st term) | 98.60 (2018-10-04) | +0.1 points |
Regular petrol price
What it is: the average price of a gallon of regular petrol at the pump, nationwide. Why it matters: it's one of the few economic numbers nearly everyone sees in person every week, which gives it an outsized effect on how people feel about the economy regardless of what the other indicators say.
Latest (2026-09-28): 4.46. Change since inauguration (2025-01-20): +43.6%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 3.78 (2022-10-04) | +59.0% |
| Trump (1st term) | 2.87 (2018-10-04) | +21.5% |
30-year mortgage rate
What it is: the average interest rate on a standard 30-year home loan. Why it matters: it drives the monthly payment on the biggest purchase most people make; a higher rate locks existing homeowners in place and prices first-time buyers out, a major driver of housing-market sentiment.
Latest (2026-10-01): 7.28. Change since inauguration (2025-01-20): +0.2 points.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 6.70 (2022-10-04) | +3.9 points |
| Trump (1st term) | 4.71 (2018-10-04) | +0.6 points |
10-year Treasury yield
What it is: the interest rate the US government pays to borrow money for 10 years. Why it matters: it's the benchmark the rest of the economy prices off -- mortgage rates, corporate borrowing costs, even stock valuations move with it, and a rapid rise usually signals markets worrying about inflation or debt.
Latest (2026-10-01): 5.24. Change since inauguration (2025-01-20): +0.6 points.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 3.62 (2022-10-04) | +2.5 points |
| Trump (1st term) | 3.19 (2018-10-04) | +0.7 points |
Total public debt
What it is: the total amount the federal government owes, across every outstanding Treasury bond, bill and note. Why it matters: it's a standing political flashpoint (debt-ceiling fights, deficit hawks vs. spenders) and the running total that every tax-and-spending debate ultimately feeds into.
Latest (2026-10-01): 40260641972390.03. Change since inauguration (2025-01-20): +11.2%.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 31137019107054.18 (2022-10-04) | +12.2% |
| Trump (1st term) | 21599377345082.36 (2018-10-04) | +8.3% |
Federal deficit (fiscal year to date)
What it is: how much more the federal government has spent than it has collected in revenue so far in the current fiscal year (which starts 1 October). Why it matters: it's the running shortfall that adds to the total debt above each year -- see the note below on why a span crossing 1 October needs care.
Latest (2026-08-31): 1965591017473.53. Change since inauguration (2025-01-20): +176.5%.
Cumulative within one fiscal year (resets every 1 October), so a span crossing a fiscal-year boundary is comparing two different accumulation periods, not one continuous total -- read the change figure as indicative, not a clean like-for-like.
| Term | Value at same day of term | Change since their inauguration |
|---|---|---|
| Biden | 1375388552955.00 (2022-10-04) | +140.1% |
| Trump (1st term) | 778996251866.11 (2018-10-04) | +273.9% |
Governing output
Counts measure activity, not quality. Executive orders and litigation volume are not goods in themselves.
| Term | Executive orders | Significant rules | Elapsed days |
|---|---|---|---|
| Trump (2nd term) | 289 | 322 | 622 |
| Biden | 101 | 504 | 622 |
| Trump (1st term) | 85 | 312 | 622 |
Enacted public laws, 119th Congress to date: 1540 (681 Democratic-sponsored, 858 Republican-sponsored, 0 sponsor unresolved).
Court outcomes (confirmed only): 0 cases (0 won, 0 lost, 0 pending, 0 mixed), from the administration's side.
The litigation register is on a separate, weekly, human-confirmed cadence
(scripts/propose_court_cases.py), not the daily collectors above -- decision 12. It reads
~970 real cases from the Just Security tracker and proposes a won/lost/pending/mixed classification from
each case's status text; nothing is counted here until that proposal is reviewed and confirmed.
Promise register: Trump / administration (22% delivery share, proposed)
Seeded from PolitiFact's MAGA-Meter (75 promises, 75 counted as due). Every status below is a proposal pending Derek's confirmation (methodology section 4.1: "the model may propose a status; Derek confirms it ... before it counts") -- delivery share is likewise provisional until that review happens.
| Promise | Proposed status | As of |
|---|---|---|
| Revoke the Temporary Legal Status of Haitians | In progress | 2026-10-04 00:00:00 |
| Require only paper ballots | Stalled | 2026-10-04 00:00:00 |
| Require proof of citizenship at the polls | Stalled | 2026-10-04 00:00:00 |
| Provide record-breaking military funding | In progress | 2026-10-04 00:00:00 |
| End offshore wind energy development | In progress | 2026-10-04 00:00:00 |
| Require voter ID at the polls | Broken | 2026-10-04 00:00:00 |
| Spare families from in vitro fertilization costs | In progress | 2026-10-04 00:00:00 |
| Add a 60% tariff on goods from China | In progress | 2026-10-04 00:00:00 |
| End taxation on Social Security | Partial | 2026-10-04 00:00:00 |
| Commute the sentence of “Silk Road” website operator Ross Ulbricht | Kept | 2026-10-04 00:00:00 |
| Restore the state and local tax deduction (SALT) | Partial | 2026-10-04 00:00:00 |
| Modernize and build electric grid systems | In progress | 2026-10-04 00:00:00 |
| Overturn Biden policies for gun owners and manufacturers | In progress | 2026-10-04 00:00:00 |
| Give green cards to people on student visas who graduate from U.S. colleges | Stalled | 2026-10-04 00:00:00 |
| Revoke federal initiatives on diversity, equity and inclusion | In progress | 2026-10-04 00:00:00 |
| Cut the federal budget every year | Stalled | 2026-10-04 00:00:00 |
| Leave the Paris climate accord (again) | Kept | 2026-10-04 00:00:00 |
| Save TikTok | Kept | 2026-10-04 00:00:00 |
| Cut energy costs by 50% in first year | Stalled | 2026-10-04 00:00:00 |
| Create a “government efficiency commission” to find fraud, improper payments | In progress | 2026-10-04 00:00:00 |
| Create “tent cities” to address homelessness | Stalled | 2026-10-04 00:00:00 |
| Provide universal school choice | In progress | 2026-10-04 00:00:00 |
| Impose the death penalty for selling drugs | Stalled | 2026-10-04 00:00:00 |
| Incentivize abolishing teacher tenure for grades K-12 | Stalled | 2026-10-04 00:00:00 |
| Reduce the cost of gasoline below $2 a gallon | Stalled | 2026-10-04 00:00:00 |
| Abolish the Education Department | In progress | 2026-10-04 00:00:00 |
| Fill up the Strategic Petroleum Reserve “immediately” | Stalled | 2026-10-04 00:00:00 |
| Put a temporary cap of 10% on credit card interest rates | Stalled | 2026-10-04 00:00:00 |
| Leave Social Security and Medicare unchanged | In progress | 2026-10-04 00:00:00 |
| Create a victims’ compensation fund of “migrant crime” from seized gang assets | Stalled | 2026-10-04 00:00:00 |
| Increase liability protections for police officers | Stalled | 2026-10-04 00:00:00 |
| Expand concealed carry rights | In progress | 2026-10-04 00:00:00 |
| Reduce corporate tax rate for companies making products in the U.S. to 15% | Stalled | 2026-10-04 00:00:00 |
| End taxation on tips | Kept | 2026-10-04 00:00:00 |
| Ban trans women from participating in women’s sports | In progress | 2026-10-04 00:00:00 |
| Promote research and development for vertical-takeoff flying cars | In progress | 2026-10-04 00:00:00 |
| Challenge limits on the president’s ability to cut federal spending | In progress | 2026-10-04 00:00:00 |
| Add a tariff of 10% to 20% to all nondomestic goods sold in America | In progress | 2026-10-04 00:00:00 |
| Withdraw from the World Health Organization | Kept | 2026-10-04 00:00:00 |
| Outlaw gender-related surgery for minors | In progress | 2026-10-04 00:00:00 |
| Designate drug cartels as foreign terrorist organizations | Kept | 2026-10-04 00:00:00 |
| End birthright citizenship | Broken | 2026-10-04 00:00:00 |
| Enact tax credit for family caregivers | Stalled | 2026-10-04 00:00:00 |
| Empower the president to remove federal workers through Schedule F | Kept | 2026-10-04 00:00:00 |
| Provide $10,000 per child tax-free to homeschoolers | Kept | 2026-10-04 00:00:00 |
| Institute a reciprocal tariff policy | Stalled | 2026-10-04 00:00:00 |
| Restore Remain in Mexico program | In progress | 2026-10-04 00:00:00 |
| Create task force on chronic health problems, such as autism, autoimmune disorders and obesity | In progress | 2026-10-04 00:00:00 |
| Cut off federal funding for NPR | Kept | 2026-10-04 00:00:00 |
| Not support a federal abortion ban | In progress | 2026-10-04 00:00:00 |
| Ban federal workers from taking jobs at companies they regulated | Stalled | 2026-10-04 00:00:00 |
| Sign an order to construct the National Garden of American Heroes | In progress | 2026-10-04 00:00:00 |
| Count all votes by election night | Broken | 2026-10-04 00:00:00 |
| Approve liquefied natural gas terminals | In progress | 2026-10-04 00:00:00 |
| End the Russia-Ukraine war within 24 hours | Broken | 2026-10-04 00:00:00 |
| Sign a bill revisiting Section 230 for tech platforms | Stalled | 2026-10-04 00:00:00 |
| End taxation on overtime | Partial | 2026-10-04 00:00:00 |
| Restore and expand the travel ban | Kept | 2026-10-04 00:00:00 |
| Pardon people convicted of crimes related to the storming the Capitol on Jan. 6, 2021 | Kept | 2026-10-04 00:00:00 |
| End veteran homelessness | In progress | 2026-10-04 00:00:00 |
| Sign law recognizing two genders, assigned at birth | In progress | 2026-10-04 00:00:00 |
| Stop China from buying land in the U.S. | In progress | 2026-10-04 00:00:00 |
| Create deregulated “freedom cities” on federal land | Stalled | 2026-10-04 00:00:00 |
| Finish the border wall | In progress | 2026-10-04 00:00:00 |
| Adopt a four-year plan to phase out Chinese imports | Stalled | 2026-10-04 00:00:00 |
| Seek the death penalty for child rapists and child traffickers | Stalled | 2026-10-04 00:00:00 |
| Mandate that any child identity changes have parental consent | In progress | 2026-10-04 00:00:00 |
| Create “baby bonuses” for young parents | Kept | 2026-10-04 00:00:00 |
| Provide a middle-class, upper-class, lower-class, business-class big tax cut” | Kept | 2026-10-04 00:00:00 |
| Make interest on car loans tax deductible | Kept | 2026-10-04 00:00:00 |
| Construct an Iron Dome-like missile defense system for the U.S. | In progress | 2026-10-04 00:00:00 |
| Reduce prices for groceries, cars, and other consumer items | Stalled | 2026-10-04 00:00:00 |
| Eliminate federal goals for electric cars | In progress | 2026-10-04 00:00:00 |
| Carry out the largest domestic deportation operation in American history | In progress | 2026-10-04 00:00:00 |
| Reinstate the military’s transgender ban | Kept | 2026-10-04 00:00:00 |
Opposition agenda: Democratic Party
Checked live against democrats.org's "What We're Fighting For" page and the House Democrats' affordability agenda (2026-10-02): the published text is values-level framing (lower costs, end corruption, protect democracy) with no dated, numbered, checkable commitments comparable to PolitiFact's promise-by-promise tracking of the administration. Zero promises are seeded here as a result -- methodology section 4.1 anticipates exactly this ("opposition promises are fewer and less specific by nature"), and a forced, invented "promise" from loose rhetoric would be less honest than an explicit, stated gap.
Three layers, no composite
Section 11's build order gates any single honesty score behind a Fable methodology review; this tab shows the three layers side by side, as measurements, not as a judgement.
Layer 1: third-party fact-checks (share rated false, trailing 90 days)
Fact-checkers choose what to check. A high share of false ratings says as much about selection as about the speaker. Compare across checkers as well as across speakers. No share shown with n < 20.
| Protagonist | n | Share false |
|---|---|---|
| Donald Trump | 11 | n < 20, not shown |
| Mike Johnson | 0 | n < 20, not shown |
| Hakeem Jeffries | 0 | n < 20, not shown |
| John Thune | 0 | n < 20, not shown |
| Chuck Schumer | 0 | n < 20, not shown |
Sources this run: PolitiFact direct (politifact.com); Google Fact Check API (AP, Reuters,
Snopes, Check Your Fact, FactCheck.org) is flagged stale until Derek adds a free
GOOGLE_FACTCHECK_API_KEY -- see Methodology tab. Party-level Layer 1 is out of scope: PolitiFact
and the Google feed tag named individuals, not abstract parties.
Every claim fact-checkers have rated for Trump, grouped by rating. Red shades are "false" or "mostly false"; grey is a mixed or half-true rating; green shades are "mostly true" or "true". This is a count of ratings, not of every statement Trump has ever made -- fact-checkers choose what to check (the caveat above), so this chart shows their selection, not a random sample of everything he has said.
Layer 2: our verifiable-claims audit
0 claims extracted, 0 verdicts recorded this run. 0 in this week's review queue.
Layer 3: perceived honesty (net "honest and trustworthy", trailing 90 days)
| Protagonist | n | Net honest |
|---|---|---|
| Donald Trump | 0 | no reading this window |
| Mike Johnson | 0 | no reading this window |
| Hakeem Jeffries | 0 | no reading this window |
| John Thune | 0 | no reading this window |
| Chuck Schumer | 0 | no reading this window |
No pollster runs a recurring, literal "honest and trustworthy" question for every protagonist this project tracks. YouGov's recurring trait item (the source Gate 0 decision 19 named) is behind a client-rendered site this project cannot fetch; Quinnipiac asks an "is honest, or not?" item on some releases, but only about whichever names that specific poll's sponsor chose -- most runs will show no reading, which is the correct result for a genuinely intermittent source, not a missing collector.
Three scores, no composite
Gate 0 decision 2 (ruling a): three separate 0-100 judgement scores, never combined into one number. Each band is an 80% interval from 1,000 Monte Carlo draws over the score's own inputs (section 7); "inputs missing" lists what is excluded and why, with weights renormalised over what remains -- nothing is imputed as neutral.
Performance score
| Protagonist | Value | 80% band | Confidence | Sensitivity | Inputs missing |
|---|---|---|---|---|---|
| Donald Trump | 66 | 66-66 | medium | sensitivity: +/- 8.0 points (most sensitive to: outcomes) | promise delivery (no confirmed promise statuses yet -- see scripts/review_promise_status.py) |
| The Trump administration | n/a | - | low | - | performance is not scored separately -- shared with 'trump' |
| Republican Party | 100 | 100-100 | low | - | promise delivery (no promise statuses logged yet) |
| Democratic Party | 0 | 0-0 | low | - | promise delivery (no promise statuses logged yet) |
| Mike Johnson | n/a | - | low | - | promise delivery (no promise statuses logged yet); chamber output (not available -- enacted laws are tracked by sponsor party, not attributed to an individual chamber leader in this build) |
| Hakeem Jeffries | n/a | - | low | - | promise delivery (no promise statuses logged yet); chamber output (not available -- enacted laws are tracked by sponsor party, not attributed to an individual chamber leader in this build) |
| John Thune | n/a | - | low | - | promise delivery (no promise statuses logged yet); chamber output (not available -- enacted laws are tracked by sponsor party, not attributed to an individual chamber leader in this build) |
| Chuck Schumer | n/a | - | low | - | promise delivery (no promise statuses logged yet); chamber output (not available -- enacted laws are tracked by sponsor party, not attributed to an individual chamber leader in this build) |
Honesty score (composite, decision 3 ruling b)
| Protagonist | Value | 80% band | Confidence | Sensitivity | Inputs missing |
|---|---|---|---|---|---|
| Donald Trump | n/a | - | low | - | Layer 1 (n=11, below the n=20 floor); Layer 2 (n=0, below the n=20 floor); Layer 3 (no reading this window) |
| Mike Johnson | n/a | - | low | - | Layer 1 (n=0, below the n=20 floor); Layer 2 (n=11, below the n=20 floor); Layer 3 (no reading this window) |
| Hakeem Jeffries | n/a | - | low | - | Layer 1 (n=0, below the n=20 floor); Layer 2 (n=0, below the n=20 floor); Layer 3 (no reading this window) |
| John Thune | n/a | - | low | - | Layer 1 (n=0, below the n=20 floor); Layer 2 (n=0, below the n=20 floor); Layer 3 (no reading this window) |
| Chuck Schumer | n/a | - | low | - | Layer 1 (n=0, below the n=20 floor); Layer 2 (n=0, below the n=20 floor); Layer 3 (no reading this window) |
Electoral strength score
| Protagonist | Value | 80% band | Confidence | Sensitivity | Inputs missing |
|---|---|---|---|---|---|
| Donald Trump | 24 | 23-24 | high | sensitivity: +/- 5.6 points (most sensitive to: popularity_level) | none |
| The Trump administration | 1 | 1-1 | low | - | popularity level/trend (no polling average for this protagonist) |
| Republican Party | 1 | 1-1 | low | - | popularity level/trend (no polling average for this protagonist) |
| Democratic Party | 99 | 99-99 | low | - | popularity level/trend (no polling average for this protagonist) |
| Mike Johnson | n/a | - | low | - | popularity level/trend (no polling average for this protagonist); forecast probability (not available for this protagonist) |
| Hakeem Jeffries | n/a | - | low | - | popularity level/trend (no polling average for this protagonist); forecast probability (not available for this protagonist) |
| John Thune | n/a | - | low | - | popularity level/trend (no polling average for this protagonist); forecast probability (not available for this protagonist) |
| Chuck Schumer | n/a | - | low | - | popularity level/trend (no polling average for this protagonist); forecast probability (not available for this protagonist) |
Briefs and the fact-guard
Daily delta note fired this run (race_house_iowa_1st moved +5.0 points today; race_house_iowa_2nd moved +11.5 points today; race_house_maine_2nd moved +10.5 points today; race_house_michigan_7th moved +12.5 points today; race_house_pennsylvania_7th moved +5.5 points today; race_senate_louisiana moved -5.0 points today; senate_control moved -12.5 points today; Silver changed senate-Alaska from Tossup to Lean D; Silver changed senate-Georgia from Likely D to Solid D; Economist changed senate-Idaho from Likely R to Safe R; Silver changed senate-Iowa from Lean D to Tossup; Silver changed senate-Kansas from Lean R to Tossup).
Written to docs\briefs\2026-10-04_daily_delta.md.
Every number in a written brief is independently re-checked against its cited row by models/fact_guard.py before the file is written -- see tests/test_fact_guard.py's planted-wrong-number test (methodology section 8's own named proof item) and the VOICE.md kill-list grep.
What the bands and confidence labels mean
You'll see a shaded band around most lines, and a word like "80% band" next to some numbers. Here's what that actually means, without the statistics jargon: we can never know the exact true number (the true level of approval, the true chance of a Senate majority) because it is built from a limited amount of polling or modelling data. So instead of pretending to give you one precise number, we show a range we're fairly confident contains the real figure — about 8 times out of 10, if we repeated the whole exercise many times. A wide band means "take this with a pinch of salt, the underlying data is thin or noisy." A narrow band means "this is on firmer ground." Nothing here is a formal test of "statistical significance" in the academic sense — it's a plain-language way of showing how much to trust a number at a glance.
The "confidence: high / medium / low" labels on the Scorecard tab work the same way, but for a whole score rather than one chart: high means every input that score needs is present and reasonably well sourced; medium means one input is missing or thin; low means two or more are missing, or the score rests on a very small number of observations.
Popularity metrics
| Term | What it means |
|---|---|
| Net approval | % who approve minus % who disapprove of how someone is doing their job. Positive = more approve than disapprove. |
| Generic ballot | If the midterm elections were held today, which party people say they'd vote for nationally, expressed as a Democrat-minus-Republican gap. |
| Net honest/trustworthy | % who say someone is honest and trustworthy minus % who say they are not, from the rare polls that ask this directly. |
Elections metrics
| Term | What it means |
|---|---|
| P(Democratic majority) | The estimated percentage chance that Democrats end up controlling that chamber after the election. 50% = a coin flip; the higher above 50%, the more confident that forecaster is in a Democratic win. |
| Race rating (Safe/Likely/Lean/Tilt/Toss-up) | A forecaster's shorthand for how one-sided a single race looks. See the key on the Elections tab for the full list and the colour scale. |
| Seat count / range | How many of the 435 House (or 100 Senate) seats our own simulation expects each party to win, and the range that covers 80% of its simulated outcomes. |
Performance metrics
| Term | What it means |
|---|---|
| Promise delivery share | Of the campaign promises that are due by now, the share counted as kept (with a half-credit for "partial"). Only promises Derek has personally confirmed count toward this number. |
| Governing output | Simple counts of enacted laws, executive orders and significant regulations — a measure of activity, not of whether that activity was good policy. |
| Outcome series (CPI, unemployment, etc.) | Standard published economic statistics. Shown alongside how the same statistic moved for the previous two presidents at the same point in their term, for context, not proof the president caused the change. |
Honesty metrics (three separate layers, never combined into one number people see)
| Term | What it means |
|---|---|
| Layer 1: third-party fact-checks | The share of claims professional fact-checkers (PolitiFact, AP, Reuters and others) have rated false or mostly false, out of everything they chose to check. Fact-checkers pick what looks most checkable or newsworthy, so this reflects their selection as much as the speaker. |
| Layer 2: our own claims audit | We extract specific checkable numbers from speeches ourselves and verify them against public data, rather than relying only on outside fact-checkers. Same rule applied identically to everyone tracked. |
| Layer 3: perceived honesty | What ordinary poll respondents say when asked directly whether they see someone as honest and trustworthy — a measure of public perception, not of fact-checked accuracy. |
Promise status categories
| Status | What it means |
|---|---|
| Kept | Delivered in full. |
| Partial | Partly delivered; counts as half a "kept" in the delivery share. |
| In progress | Work under way, outcome not yet decided. |
| Stalled | Work has visibly paused with no recent progress. |
| Broken | Explicitly dropped or missed. |
| Reversed | Was delivered, then undone. |
| Not yet due | Too early to judge; excluded from the delivery-share calculation entirely. |
Sources used this run
| Source | Rating | Rows this run | Status |
|---|---|---|---|
| silver_bulletin_approval | GREEN | 6419 | ok |
| silver_bulletin_generic_ballot | GREEN | 618 | ok |
| wikipedia_trump_approval_agg | GREEN | 10 | ok |
| wikipedia_trump_favorability_agg | GREEN | 2 | ok |
| wikipedia_generic_ballot_agg | GREEN | 6 | ok |
| wikipedia_house_race_ratings | GREEN | 144 | ok |
| wikipedia_senate_race_ratings | GREEN | 35 | ok |
| polymarket | GREEN | 97 | ok |
| predictit | GREEN | 69 | ok |
| manifold | GREEN | 2 | ok |
| fred_api | GREEN | 20397 | ok |
| treasury_fiscaldata_api | GREEN | 3089 | ok |
| federal_register_api | GREEN | 3377 | ok |
| congress_gov_api | GREEN | 0 | ok |
| politifact_maga_meter | AMBER | 75 | ok |
| politifact_factchecks | ? | 39 | ok |
| google_factcheck_api | GREEN | 0 | failed — GET https://factchecktools.googleapis.com/v1alpha1/claims:search?query=Donald+Trump&languageCode=en&pageSize=50&key=AIzaSyDxd_OhKuWQ8cIDa31FtzyxLsuiK5lNMqE failed after 3 attempts: Server error '503 Service Unavailable' for url 'https://factchecktools.googleapis.com/v1alpha1/claims:search?query=Donald+Trump&languageCode=en&pageSize=50&key=AIzaSyDxd_OhKuWQ8cIDa31FtzyxLsuiK5lNMqE' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/503 |
| quinnipiac_honesty | ? | 0 | ok |
| govinfo_crec | ? | 60 | ok |
| govinfo_dcpd | ? | 0 | ok |
Method note
Approval and generic-ballot averages use identical weighting (methodology section 3.2, Phase 1 simplification noted in models/averaging.py).
Full methodology: docs/methodology_v0.md. Source register: docs/source_register.md.
Gate 0 decisions: decisions/20261002_decisions.md.