METHODOLOGY / REPRODUCIBLE RESEARCH

WHERE THE NUMBERS COME FROM

Every datum is explicitly entered from a named primary-source table or press release; scripts do not invent, scrape or continuously refresh statistics. A versioned snapshot is not an independent official data feed.

Source chain and correction rules

Input: editorial/statistics/approved/datasets.json in the private development package. It contains the public agency, source document, URL, publication/retrieval date, table locator and each exact manually transcribed observation. It is never included in the public package as a private editorial file, although the approved rows are exported.

Transform: Offline Python using decimal arithmetic computes cumulative changes, percentage-point differences and a clearly hypothetical CPI adjustment. Outputs are fixed before publication; the same formula is separately implemented for interactive reading.

Publish: Public downloadable datasets and computed-results.json provide the exact frozen input, arithmetic methods and SHA-256 release manifest. Corrections require a new dated version and documented explanation; old releases are retained in development archives.

Validation: No future-dated sources, no missing source per row, no unattributed charts, no extra values inserted by the browser, no interpolated gaps, no silently revised historical points. Source labels explicitly distinguish four-region CPI from selected metros and CPS turnout from certified election results.

Limit: The data alone do not establish which politician, nation or institution caused a change. Correlation is not causation, and model estimates using different price indexes or horizons cannot be combined as if additive.

Exact calculations

  1. percent_change: 100*(end/start-1)
  2. percentage_points: end_percentage-start_percentage
  3. inflation_equivalent_amount: nominal_start_amount*(CPI_end/CPI_start)
  4. relative_rate_change_percent: 100*(rate_end/rate_start-1)

Use unrounded source values for all intermediate arithmetic, then round the displayed calculation to two decimal places using decimal ROUND_HALF_UP. A negative change is allowed; zero or negative comparison denominators are rejected. User-entered dollar amounts are explicitly illustrative.

Changing the inflation baseline from January 2021 to January 2025 does not imply a causal allocation between presidents: the periods differ in length, and the policy effects overlap.

Primary source register

  1. U.S. Bureau of Labor Statistics: Consumer Price Index, January 2021. Dated 2021-02-10, checked 2026-10-11, locator Table 1: unadjusted CPI-U all items and 12-month change.
  2. U.S. Bureau of Labor Statistics: Consumer Price Index, June 2022. Dated 2022-07-13, checked 2026-10-11, locator Table 1: unadjusted CPI-U all items and 12-month change.
  3. U.S. Bureau of Labor Statistics: Consumer Price Index, January 2025. Dated 2025-02-12, checked 2026-10-11, locator Table 1: unadjusted CPI-U all items and 12-month change.
  4. U.S. Bureau of Labor Statistics: Consumer Price Index, August 2026. Dated 2026-09-11, checked 2026-10-11, locator Table A, Table 1 and Table 4: CPI-U levels, subcategories and selected regions.
  5. U.S. Census Bureau: Voting and Registration in the Election of November 2020. Dated 2022-02-17, checked 2026-10-11, locator Table 1 and Figure 1: 2020 CVAP turnout and estimated registered/voting totals.
  6. U.S. Census Bureau: 2024 Presidential Election Voting and Registration Tables Now Available. Dated 2025-04-30, checked 2026-10-11, locator Press release: 65.3% voting, 73.6% registration, estimated 154m voters and 174m registered.

Download and reproduce

Each worksheet offers original extracted rows in CSV/JSON. The public snapshot also includes the complete input/transform file-hash manifest, calculated results and plain-text formulas and limitations. The development ZIP includes tools/reproduce_phase07.py and source-locked fixtures to recreate and check the published numbers using Python without network access.

← RETURN TO THE NUMBERS