Show your work.
A polling average should come with enough information to check it. Here is ours.
What this measures
These are summaries of published surveys about opinion during their field dates. They are not odds of winning, turnout predictions, or seat forecasts. Our collection is incomplete. The table shows the data we actually have.
What gets into an average
A survey needs a named pollster and sponsor, field dates, sample size and population, survey mode, a reported error measure, a checked original release, and an identified question or ballot version. Missing information stays missing. Incomplete feed records remain visible but cannot move the average.
We keep adults, registered voters, and likely voters separate. We also separate online, phone, and mixed-method surveys. Within each of those groups, the subject, question version, and named answer choices must match. General-election ballot tests are separate from primaries, forced-choice questions and message tests. We do not combine congressional vote intention with a preference for which party should control Congress.
At least three different polling organizations must qualify before we label a number a BTP average. With fewer, we show individual surveys. This stricter policy reduces coverage. An unavailable average does not mean no public polling exists.
The weight, in plain English
We retain the latest qualifying survey from each organization in a 45-day window. Repeated releases and overlapping trackers from the same organization cannot accumulate influence. Polls receive more weight when they are newer and their samples are larger, with diminishing returns.
raw weight = sqrt(min(sample size, 1500)) × 2 ^ (−days since fieldwork ended / 14) final weight = raw weight / sum of included raw weights average = sum of each reported percentage × its final weight
These are provisional, published design choices. They have not been optimized against historical election results. We do not apply invented quality scores or partisan corrections. Partisan sponsorship stays labeled; it does not silently change the arithmetic. Outliers are not removed because their result looks inconvenient. Other exclusion reasons, including missing methods, remain visible in the source table.
What the spread and stress tests mean
The poll spread is the minimum and maximum margin in the included surveys. It is not a statistical confidence interval. Our three-point and five-point shared-error examples show how the margin changes if the surveys all miss in the same direction. They are illustrative scenarios, not probability bounds.
The remove-a-pollster calculation repeats the same rules without that organization. We only report it when at least three organizations remain. It shows dependence on a source; it does not measure the chance of an election result.
A poll’s reported error concerns a particular estimate and sampling or modeling assumptions. The error on the difference between two answers is not automatically the same as the error on either answer. Nonresponse, question wording and turnout assumptions can produce shared mistakes that a larger pile of polls does not fix. AAPOR explains these limitations.
When numbers look stale
The feed collection time and field dates are shown separately. A successful API request does not make an old poll fresh. Surveys more than seven days old are marked. If the live feed fails, the last successful collection or a bundled snapshot remains visible with its original observation time and a saved-feed label.
Primary-source checks are specific to each survey, not automatic endorsements of every future poll from the same firm. New feed records stay outside the average until their methods and question version are checked. The tracker refreshes its discovery feed on page requests, at most once every 15 minutes per running server process. Primary-source qualification requires a source check and does not happen automatically.
Corrections and downloads
Primary releases take precedence over transcribed feed fields. Corrections are displayed beside the affected record. We preserve the raw feed snapshot in the source repository. Downloaded rows identify missing methods and the primary-check date. Question labels on the board are summaries; the linked release or questionnaire contains the original wording and order.
Feed data is provided by VoteHub under CC BY 4.0. BTP changes labels, adds source-checked records and corrections, and calculates its own weights. Primary pollster releases remain linked. We do not republish full proprietary questionnaires or tables.
Have we beaten FiveThirtyEight?
No accuracy advantage has been established. This first version makes its decisions inspectable. A more complicated model is not proof of a better model.
The research and test plan compares historical snapshots with a simple average on the same surveys, then with archived aggregator snapshots where reusable data exists. Election results must come from certified records. Future polls and results must never enter an earlier estimate. Historical data rebuilt today can still contain later corrections or missing-release bias; that limitation needs to accompany any score.
Polling averages need a different evaluation from election forecasts. Approval averages can be assessed against subsequent independent surveys; election forecasts need tests of both error and probability calibration. This version publishes no win probabilities. Backtesting software is included; an evaluated historical scorecard is not yet available.