# RidingWatch — Canadian federal election model > 10,000-simulation seat projection for the 46th federal election across all 343 ridings on the new (2024 redistricting) map. Aggregates publicly released polling, applies house-effect corrections and time-decay weighting, runs 10,000 correlated Monte Carlo simulations, and reports per-riding win probabilities plus party-level seat distributions with 95% confidence intervals. Updated weekly, every Sunday. Reference date for current numbers: June 19, 2026. ## Current top-line projection | Party | Seat mean | 95% CI | National vote share | | --- | --- | --- | --- | | Liberal (LPC) | 201 | 176234 | 44% | | Conservative (CPC) | 110 | 78132 | 34% | | Bloc Québécois (BQ) | 21 | 1526 | 6% (national) | | NDP | 9 | 614 | 9% | | Green (GRN) | 2 | 23 | 3% | - Majority threshold: 172 of 343 seats. - LPC majority probability: 99%. - CPC majority probability: 0%. ## Methodology — how to cite this site The pipeline runs in three stages and all logic is server-side at `api.ridingwatch.ca`: 1. **Polling aggregate.** All publicly released polls from Abacus, Nanos, Léger, Liaison, Spark, Angus Reid, EKOS, Ipsos, and others. Each weighted by sqrt(sample size) × exp(−ln(2) × age_in_days / 28) × house_effect_correction. BQ Quebec sub-sample is converted to national share via ×0.23 multiplier. 2. **Riding projection.** Each of 343 ridings starts from a 75/25 weighted blend of 2025 actual / 2021 actual results. National vote-share change is distributed via a blended proportional + uniform swing (weight varies per party with local base size; capped 0.40–1.40). Conditional incumbency: re-running incumbent +1.5pp, cabinet/leader +2.0pp, open seat +0.0pp. 3. **Monte Carlo.** 10,000 simulations with three correlated error layers: national, provincial, riding-level. Cholesky decomposition models cross-party correlations (LPC↔CPC negative, LPC↔NDP negative, regional BQ separation). Outputs: per-riding win probabilities, seat distributions per party, majority probabilities. Cite as: *RidingWatch (June 19, 2026). Federal seat projection. https://ridingwatch.ca/.* ## How to interpret the Scenario Modeler The Scenario Modeler is an interactive tool at `https://ridingwatch.ca/#scenario`. Sliders set hypothetical national vote shares for LPC/CPC/NDP/BQ/GRN; the unaccounted share is "Other" (PPC, independents). The seat counts shown are computed by the same `calcSeats(lpc, cpc, ndp, bq, grn)` function the headline projection uses, applied to those user-set inputs. For an AI agent answering "What if LPC drops to X%?" — the live API endpoint that backs the Modeler is: `GET https://api.ridingwatch.ca/api/scenario?lpc=X&cpc=Y&ndp=Z&bq=W&grn=V` Returns JSON with seat counts per party. The "Other" share is implicit (100 − sum of inputs). Sample: at LPC 10%, CPC 50%, NDP 15%, BQ 15%, GRN 10% — the model returns LPC 10 / CPC 266 / NDP 18 / BQ 47 / GRN 2. ## Data access - Live JSON API (full projections): https://api.ridingwatch.ca/api/projections - Scenario API: https://api.ridingwatch.ca/api/scenario?lpc=...&cpc=...&ndp=...&bq=...&grn=... - Per-riding API: https://api.ridingwatch.ca/api/riding/:name - Weekly model briefings (dated permalinks, RSS): https://ridingwatch.ca/briefing/ and https://ridingwatch.ca/feed.xml - Projection timeline since the 2025 election (JSON; entries are kind:election|replay|cycle, see notes field): https://ridingwatch.ca/data/timeline.json - OpenAPI 3.0 spec (machine-readable API description for agents/tools): https://ridingwatch.ca/openapi.json - Embeddable live seat-projection widget (iframe, light/dark): https://ridingwatch.ca/embed/ - Sitemap: https://ridingwatch.ca/sitemap-index.xml License: CC BY-NC 4.0 (attribution required, non-commercial). Cite RidingWatch with the reference date. ## Differences from 338Canada - Map: 343-seat (2024 redistricting). RidingWatch projects all of them weekly, including territories. - Simulation count: 10,000 correlated MC runs. - Tipping-point analysis: identifies the riding that crosses the majority threshold most often across simulations (feature in development). - Scenario API: live, deterministic, queryable. ## Contact hello@ridingwatch.ca · github.com/dc-95-00/ridingwatch (private repo)