Obviously, the Republicans did well in Harris County this year, better than I expected for sure. They won some judicial races – they’re probably kicking themselves for not contesting more of them – and in general came a lot closer to winning the county executive offices for the first time since 2012. They obviously did better than they did in 2020 in terms of winning races. But how did they do in terms of getting votes? Let’s take a closer look.
Year Office Candidate Votes
==================================
2020 President Trump 700,630
2024 President Trump 720,046
2020 Senate Cornyn 718,228
2024 Senate Cruz 663,483
2020 RRC Wright 696,847
2024 RRC Craddick 700,380
So up front, Donald Trump got 19,416 more votes in 2024 than he did in 2020. That’s an increase of 2.8% of his previous total. Let’s put that into some context:
Year Candidate Votes
========================
2004 Bush 584,723
2008 McCain 571,883
2012 Romney 586,073
2016 Trump 545,955
2020 Trump 700,630
2024 Trump 720,046
There was definitely a surge from 2016 to 2020, but that came in the context of over 300K more votes being cast in the county, and over 360K more votes being given to the two major party candidates for President. His increase from 2020 is his second-greatest, so props for that. But while Trump got 155K more votes from 2016 to 2020, Joe Biden got 210K more votes than Hillary Clinton got. His 2024 total would still have lagged well behind in a 2020 context. But this year there was a big decline in Democratic votes, and that made the difference.
To be very clear, I’m not saying this isn’t a problem. It’s a big problem! What I am saying is that it’s a different problem than it would be if Trump had garnered 800,000 votes while Harris had just matched Biden. That would be a story of turnout increasing and Republicans being the main beneficiary of it, which would be a complete reversal of what we’ve experienced since 2004. This is a story of turnout decreasing and Democrats feeling the brunt of it. That at least is something we’ve seen before. It suggests the need for different solutions than the first scenario.
It would also be a different situation it turnout had been the same with Trump gaining about as many votes as Harris lost. That would point to people switching sides as the problem, and that would require yet another solution set. There were probably some switchers – the variance in the vote across other races shows that some people voted mostly but not entirely one way – but there always are, and by the very fact that Trump’s gain was limited, there couldn’t have been that many. To the extent that it’s a problem, it’s much smaller than the “100K Dems didn’t turn out” problem. I just want to make sure we’re prioritizing the right things.
This election and this post are about more than just Trump, and we’ve got a lot of numbers to look at. And the very next race, for US Senate, is the complete opposite of the Presidential race. All those polls showing Colin Allred outrunning Kamala Harris while Ted Cruz lagged Donald Trump were indeed accurate. Cruz collected 55K fewer votes than John Cornyn. Indeed, Allred had a larger vote margin (182K to 136K) and percentage margin (11.2 to 8.5) than MJ Hegar had over Cornyn four years ago. Seems I’ll be on the lookout for some Trump/Allred voters to see what made them tick. We will see that Republicans overall did at least a little better in 2024 than they did in 2020. That modestly rising tide did not lift Ted Cruz’s boat.
The Railroad Commissioner race was basically a push from a Republican perspective, and a bigger drop in vote total on the Democratic side. A contributing factor there may have been the change from a Latino Democrat and and Anglo Green candidate in 2020 to an Anglo Dem and a Latino Green in 2024 – the Libertarian candidate got nearly identical totals across the two elections, while the Green candidate got 36K more votes in 2024. This too is a phenomenon we’ve seen before.
Let’s look at the judicial races, my preferred venue for measuring partisan levels in a given election.
Year Type Num High Low Avg
==============================================
2020 State 4 740,194 716,761 726,405
2024 State 5 752,297 722,052 743,295
2020 State 3 711,666 702,618 708,187
2024 State 1 720,395 720,395 720,395
2020 Appeals 4 739,791 719,066 730,172
2024 Appeals 10 744,425 720,309 728,066
2020 District 14 737,544 690,050 712,975
2024 District 17 740,375 699,041 722,411
I’ve broken the statewide judicial races into two buckets, races that include a Libertarian candidate (there were no Greens in these races; indeed, the only Greens at all were for President and RRC). The presence of a Libertarian candidate always reduces the number of votes the other two get, with the Republican usually getting the worst of it. I wanted to separate these out to make a cleaner comparison. The two-candidate races are the first group, and however you look at it in either group, the increase over 2020 is less than the increase in votes that Trump got. At the Appellate and District court levels (the latter includes the one or two County courts that happened to be on the ballot as well), the increases are even smaller. I don’t see anything remarkable here.
You may look at the higher Republican vote totals in the judicial races than in the Presidential race and ask if those “stop Houston murder” PAC ads might have had an effect here. I can’t say there was no effect, but the same gap between Presidential and judicial race vote totals existed in 2020 as well. My interpretation of that is that the judicial average turnout is the best proxy for the partisan index in an election, and the variations from there are your vote splitters. In other words, the “true” Republican level in this election was somewhere between 722K and 743K (*), with some number of these people voting for Kamala Harris and Colin Allred. Just as in 2020 it was somewhere between 713K and 730K, with Joe Biden and to a much lesser extent MJ Hegar getting the excess votes. Also, that 722K votegetter was John Devine, and I have to think there was enough bad press about him to have affected a few people. That’s consistent with the numbers.
(*) Remember that by the time we get to the District Court races, a significant number of voters have tapped out. In 2020, that was about 60K at the State level and 90-110K at the District level. That obviously has an effect on those averages. Do you consider the people who participate at the top levels only to be the base, or do you limit that to those who vote the whole ballot? I leave that up to you.
Here are the county executive races:
Year Office Candidate Votes
==================================
2020 DA Huffman 720,407
2024 DA Simons 719,161
2020 CountyAty Nation 703,771
2024 CountyAty Smith 719,666
2020 Sheriff Danna 668,997
2024 Sheriff Knox 691,226
2020 HCTA Daniel 685,791
2024 HCTA Radack 717,076
2020 HCDE5 Wolfe 689,198
2020 HCDE7 Sumners 703,223
2024 HCDE3 Dick 690,312
There was a Libertarian candidate in the Tax Assessor race in 2020, which had its usual effect on Chris Daniel’s vote total. I have to say, for all the caterwauling about crime, it’s hilarious to me that Dan Simons fell short of Mary Nan Huffman’s vote total. (Yes, there are still provisional ballots to be counted. I’ll keep this in regardless of that.) Against that, Mike Knox gained more votes over Joe Danna than Trump did against himself. To be sure, Knox was a more serious candidate than the perennial Danna – Sheriff Ed Gonzalez was the second-highest votgetter in 2020, surely collecting a ton of votes from Republicans, some of whom likely reverted back – and the troubles with the Harris County Jail have been widely publicized. Sheriff Gonzalez was still the third-highest votegetter this year and still won by over 93K.
Any way I look at it, Republicans performed at slightly above their 2020 benchmark, which was enough to let them win some judicial races but not enough to break through at the county executive level. As I said at the beginning, there were other scenarios that would have bothered me more. The big problem, which we need to thoroughly study and understand, is the drop in Democratic turnout. I’ve focused entirely on Republican vote totals here, as that was my thesis, but I do want to take one brief look at the Democratic side of this. These are the uncontested judicial races:
Year Type Num High Low Avg
====================================================
2020 District 11 1,042,520 1,010,328 1,024,145
2024 District 12 936,951 877,562 897,257
I could do the same exercise for the Democratic candidates, and you’d see dips in the vote totals of roughly the same magnitude across most of the races. I’ll get to those in more detail when I have the full canvass because I’m very interested in the possible variations across different parts of the counties, but at a macro level, the story is clear: There were about 100K fewer votes cast this year compared to 2020. Basically all of those missing votes were Democratic. Wherever we go from here, figuring that out is step one. The Houston Landing, which looked at undervotes in the judicial races, has more.
Count as often as needed, but the fact remains that the Democratic Party has become the party of elites. The majority probably never earned a day’s wages working with their hands.
While I often disagree with David Fagan, he is considered a working-class voter. Assuming he fought fires once, he risks his life to protect primarily property.
CAUSALITY REVERSAL
Regarding Democrats “feeling the brunt” of decreased turnout. That’s really a misattribution of causality. Turnout must be treated as a dependent variable, the independent variable being the voters’ decisions to vote or not to vote (or simply to fail to vote by default, i.e. not bothering without a conscious decision to abstain). Turnout is not a cause. It is not a person or entity, and can take no blame. Nor is it an environmental condiction. It’s an empirical aggregate-level measure of voting behavior and it’s obviously related to the decision WHO or WHAT to vote for.
So, the better way to conceptualize this is in terms of parties and candidates succeeding in appealing to turning out supporters (not only their “base” but all others including independents and new voters). Stated differently: A meaningful analysis requires that the vote-seekers and their conduct be treated as the cause (independent variable) and the number of votes cast (or percentage) as the measure of their respective performance (dependent variable). Meaningful here refers to causal conclusions from which actionable prescription can be derived.
Of course, unlike in PR systems elsewhere, there is no voting for parties per se, so a more nuanced race- and candidate-focused analysis is needed and the above is a good start. So, kudos to Kuff.
MEASURING TURNOUT AS RAW NUMBER OF VOTES CAST: PROBLEMATIC
I would caution, however, that the comparison between successive elections involves two different electorates in terms of who is legally eligible to vote (and registered) although there is of course much overlap. The composition and the size of the electorate (here that of Harris County) change within four years due to deaths and four cohorts of adolescents reaching voting age (i.e., ongoing demographic replacement) as well as due to in- and out-migration.
Because of that change in composition and size, it’s not particularly meaningful to compare vote counts from 2020 to vote counts in 2024 for just a SINGLE candidate (or a single party) rather than comparing vote gain/loss with a competitor, and thereby gauge relative performance.
If you’re looking for those 100k voters, they found their way to the undervote column in all the county-wide judges races.