ElectEffect

Polling-driven scenarios for dodiesworld

Stress-test national swings, turnout universes, and pollster house effects without leaving the browser.

How the model works

ElectEffect runs a polling-based simulation of the Electoral College. We pre-load a curated set of battleground and national polls, normalize them into a common schema, and combine them with simple historical baselines to avoid gaps when fresh data is scarce.

Weighting and decay

Each poll is weighted by the square root of its sample size and an exponential time decay with a 21-day half-life. When a requested population universe is absent, the model gracefully falls back to the next best option (Likely > Registered > Adults).

House effects

Pollster-level adjustments are baked into the static dataset. Toggle them off in Scenario Controls to see how sensitive a state is to those corrections.

Baselines

If a state is light on recent polling, we anchor the estimate to a national margin plus a historical offset that captures the state’s lean relative to the country.

Monte Carlo simulation

For every matchup we draw ten thousand correlated swings across the fifty states and the District of Columbia. Each draw perturbs the state baselines using national and state-level error terms (sigmaNat = 2.5, sigmaState = 3.0) with a correlation of 0.75. That yields the expected electoral-vote distribution, candidate win odds, and the probability of a 269-269 tie.

Data set

The bundled dataset covers competitive Sun Belt and Great Lakes states plus a trio of national trackers. Each entry captures start/end dates, sample size, population universe, methodology, and vote share for every candidate in the head-to-head. Because the application targets serverless deployment on Cloudflare, everything is stored in light-weight TypeScript modules rather than a traditional database.