Tracking the 2026 California governor primary
With incumbent governor Gavin Newsom unable to run for a third term due to term limits, this year’s California governor’s top-two primary race has become rather competitive. The sheer amount of Democrats in the race has prompted some concern that the Democratic candidates would act as spoilers for each other, vaulting a Republican to the governor’s mansion. In the midst of all this, I have decided to release my averages tracking electoral intent in the race. I will regularly update this average until June 2 (the date of the gubernatorial primary election) rolls around.
You can read how I compute my average in the methodology section below. You can also find the underlying polling dataset and model source code at the GitHub repo.
Average and Polls
Methodology
All professional polls measuring electoral intent in the California gubernatorial primary are used, with the exception of those conducted by banned pollsters - see here for a list of pollsters excluded from use in SnoutCounter’s averages. I generally check FiftyPlusOne, The New York Times, and Twitter/Bluesky poll collectors (Polling USA, Interactive Polls, Politics & Poll Tracker) for new polls and to check what I missed. In the case that a poll has surveyed two samples of different population types (for example, one likely voter sample and one registered voter sample), we only use the results of one of these samples being surveyed. Likely voter samples are preferred to register voter samples are preferred to “all adult” samples. Tracking polls in our dataset are dynamically selected and weeded out such that all tracking polls from the same pollster are non-overlapping in fielding dates; I always include the most recent tracking poll from each pollster.
I aggregate polls via a weighted average. The following factors are utilized to determine weights:
- Sample size: Polls with higher sample size are more likely to accurately estimate the population parameter in question, and generally have less uncertainty than polls with smaller sample sizes. However, sample sizes are subject to diminishing returns - a poll with a sample size of 3000 won’t much more accurate than one with a sample size of 2000. I cap sample size at 2000, to avoid polls with particularly large sample sizes from dominating the averages. I additionally winsorize the sample sizes to counter the effect of extreme outlier sample sizes on the sample size weight. Some polls do not reveal their sample sizes; in these cases I assume that the sample size for that poll is equal to the median sample size for all California gubernatorial primary polls conducted by that pollster. If there are no other governor primary polls conducted by that pollster, I set the sample size equal to the median sample size for all governor primary polls utilizing the same mode; if there are no polls with the same mode, I simply set the sample size equal to the median sample size for all California governor primary polls. The weight function I use is the square root of the sample size over the square root of the median sample size of all polls in the dataset.
- Pollster rating: Not all pollsters are created equal; some are more reliable in producing accurate and precise results than others. I use the Silver Bulletin’s pollster ratings, specifically the predictive plus-minus, a measure of how accurate a pollster is expected to be, as the input for the pollster rating weight function. For predictive plus-minus, lower is better. Pollsters with a predictive plus-minus above 1 are assigned a flat weight of 0.2, as are pollsters without a predictive plus-minus rating from Silver Bulletin. All other pollsters are assigned a weight according to a square root function.
- Time since poll was conducted: Of course, polls which were conducted more recently are more likely to be reflective of the state of public opinion. I utilize an exponential function as a weight for recency.
- Multiple polls in short window: If there are multiple polls from the same pollster and sponsor in a two week window, each poll is downweighted, based on the number of polls from that pollster/sponsor in this window. This is to ensure that one pollster/sponsor doesn’t dominate the averages just out of frequency, and to counter pollsters who attempt to “flood the zone.” The formula utilized for this is borrowed from Strength In Numbers’ polling averages; it is calculated as 1 over the square root of the number of polls from the pollster within a two-week window.
- Partisan-sponsored and internal polls: A large portion of California governor polls have either been commissioned by a partisan organization or are internal polls commissioned by one of the candidates in the race. Despite the media hullabaloo that tends to surround internal polls, they actually tend to be less accurate than publicly released polls. I downweight both partisan and internal polls accordingly to prevent them from having an excessive impact on the average. All else held equal, partisan polls are assigned 70% of the weight of a non-partisan poll, and internal polls are assigned 50% of the weight of a publicly released poll.
After calculating these weights, I compute the weighted average for each candidate. However, we aren’t done here - I apply a series of adjustments to each poll result, calculated by a multilevel regression model. I use the previously calculated weighted average as a regressor in this model. The adjustments calculated and applied are as follows:
- House effect adjustment: Many pollsters have unique biases stemming from differences in fielding, weighting, question wording, etc, that may not be captured by other adjustments calculated. Thus, I calculate the “house effect” of each pollster. Like all other adjustments, house effects are calculated relative to the weighted average of all polls, rather than the biases of each pollster relative to election results - this is because systematic, industry-wide polling bias (and, by corollary, the biases of many pollsters relative to actual results) are not predictable and change from cycle to cycle.
- Mode effects adjustment: The choice of how a pollster chooses to field will often have a significant effect on the results of the poll, as different fielding methods will often reach different audiences and different types of people. For example, online panels often reach a younger demographic compared to live phone surveys, and probability panels often present significantly different results compared to non-probability based methods. I correct for this by introducing an adjustment for methodology.
- Likely voter adjustment: Each polling average is trying to measure approval or horse-race standings for a specific population, but often we will have multiple surveys polling different populations for the same measurable variable. To address this, I calculate three population adjustments - likely voter, registered voter, and all adult sample adjustments - and adjust the results of polls surveying different populations towards the likely voter population.
- Partisanship adjustment: Some pollsters are very explicitly partisan in nature, often working with certain political parties or groups affiliated with political parties, consistently polling for candidates of one party, and/or being funded by a certain party or partisan group. For these pollsters, a partisanship adjustment is applied to correct for potential biases introduced by strong partisan affiliation.
- Candidate sponsor adjustment: Similar to the partisanship adjustment, for internal polls I adjust for the candidate that has commissioned the poll, to correct for the biases that these polls may present.
Minor candidates adjustment: I track the major candidates in my averages, but they are not the only candidates who are participating in the race. More marginal candidates, such as Tony Thurmond, Betty Yee, Butch Ware, Leo Zacky, and others have also filed for the race, and have taken their own (very small) slice of the electorate. Not all polls include these candidates as possible options, so I adjust for their absence in polls that exclude these candidates. As these candidates will most likely show up on the ballot come June and win a small slice of the vote share, I apply the adjustment to polls that exclude these candidates, the post-adjustment topline of each of these polls essentially being equivalent to what the toplines would most likely look like if these candidates were included in that specific poll.After some further exploratory analysis, I have made the determination that polling on minor candidates is insufficient, and thus this adjustment may unduly skew the averages. Therefore I have disabled this unless and until further polling on minor candidates is conducted.Drop-in and drop-out adjustments: The California gubernatorial primary has been a rather chaotic race to keep track of, with major and minor candidates alike dropping out and in of the race continuously over the course of the past year. Thus, I adjust for the inclusion and exclusion of candidates that have “dropped in” or “dropped out” of the race in various polls.Applying the drop-in and drop-out adjustments seem to produce rather funky and anomalous effects in the poll averages, which imply associated methodologial issues; thus I will be excluding these adjustments from the overall computation of my average.
These adjustments are summed to get the total adjustment for each poll, which is then added to measured candidate polling estimates. After these adjustments are applied, the weighted average is recalculated to get the final average for each rating/variable. 95% confidence intervals are also computed in order to measure and represent uncertainty in the average for each candidate; they are computed as \(\bar{x}\pm 1.96s_x\), where \(\bar{x}\) is the weighted polling average and \(s_x\) is the weighted standard deviation.
Updates
- March 30, 2026: Disabled the minor candidates adjustment due to insufficient polling data on these candidates.