Our Voting Intention Tracker uses a 30-day rolling window. Each poll is weighted by sample size, and more recent polls receive higher weight using a 14-day half-life decay function (weight falls to 50% at 14 days old, 25% at 28 days old).
We do not apply house effect corrections in the main tracker, but our pollster profiles document estimated house effects for each firm based on their recent history. Where a single pollster dominates a period’s data, we note this in the tracker.
We include all polls that:
Aggregation reduces random error but cannot eliminate systematic error. If all polling firms share the same methodological flaw — as they did in 2015 — the average will be wrong even with 20 polls. This is why the opinion polls explainer on methodology matters as much as aggregation technique.
Aggregators should always publish their uncertainty ranges, not just point estimates. A figure of Labour 35%, Conservatives 24%, Reform 27% should come with confidence intervals showing the range of likely true values.
A poll of polls combines multiple individual polls into a single average. Random sampling errors cancel out across polls, giving a more reliable estimate than any single survey.
Individual polls have margins of error of around plus or minus 3 points. Averaging ten independent polls can reduce this to around plus or minus 1 point. The average is also less affected by any one rogue result.
Recency weighting gives more weight to recent polls, since older data is less informative about current opinion. Exponential decay is a common approach, where weight halves every fixed number of days.
Either by ignoring them (and relying on averaging to partially cancel them out) or by estimating each firm’s systematic bias and correcting for it before averaging. Both approaches have trade-offs.
We use a 30-day rolling window with sample-size weighting and a 14-day half-life recency decay. We include BPC-affiliated polls of 500+ respondents with public data tables. House effects are documented in pollster profiles but not corrected in the main tracker.