State Senator, District 21
⚠ 18
Final Results·192,073 ballots cast
Judith ZaffiriniI
67.6%129,894
Grant Rostig
29.2%56,032
Joseph Morse
3.2%6,147
Early vote vs Election Day
Judith Zaffirini gained 67.6 percentage points on Election Day.
Judith Zaffirini+67.6pp on E-day
Early 0 (0.0%)E-day 129,894 (100.0%)
Grant Rostig+29.2pp on E-day
Early 0 (0.0%)E-day 56,032 (100.0%)
Joseph Morse+3.2pp on E-day
Early 0 (0.0%)E-day 6,147 (100.0%)
Race totals192,073 ballots
Early 0 (0.0%)E-day 192,073 (100.0%)
Hue = county leader · Saturation = √(votes / max county votes)
Noted (18)
- Underperform6.9WILSONJudith Zaffirini's margin -7.6pp vs statewide +38.5pp
- Underperform6.7GUADALUPEJudith Zaffirini's margin -8.5pp vs statewide +38.5pp
- Underperform6.5SAN PATRICIOJudith Zaffirini's margin -1.6pp vs statewide +38.5pp
- Landslide5.8WEBBJudith Zaffirini won by +74.7pp vs statewide +38.5pp
- Crossover4.7KARNESJudith Zaffirini (DEM) won a county with 77.5% REP lean
- Landslide4.5STARRJudith Zaffirini won by +83.6pp vs statewide +38.5pp
- Crossover4.0BEEJudith Zaffirini (DEM) won a county with 67.0% REP lean
- Underperform3.8LIVE OAKJudith Zaffirini's margin -13.5pp vs statewide +38.5pp
- Underperform3.7CALDWELLJudith Zaffirini's margin +7.1pp vs statewide +38.5pp
- Landslide2.1DUVALJudith Zaffirini won by +73.3pp vs statewide +38.5pp
- Landslide1.9ZAPATAJudith Zaffirini won by +73.4pp vs statewide +38.5pp
- Crossover1.8CALDWELLJudith Zaffirini (DEM) won a county with 56.4% REP lean
- Crossover1.7MCMULLENJudith Zaffirini (DEM) won a county with 88.2% REP lean
- Landslide1.6JIM HOGGJudith Zaffirini won by +80.5pp vs statewide +38.5pp
- Underperform1.4KARNESJudith Zaffirini's margin +18.6pp vs statewide +38.5pp
- Underperform0.9ATASCOSAJudith Zaffirini's margin -0.5pp vs statewide +38.5pp
- Underperform0.7MCMULLENJudith Zaffirini's margin +9.1pp vs statewide +38.5pp
- Crossover0.5LASALLEJudith Zaffirini (DEM) won a county with 54.9% REP lean
County results — early vs Election Day
| County | Zaffirini | Rostig | Morse | Total | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Early | E-day | Total | Early | E-day | Total | Early | E-day | Total | ||
| ATASCOSA | 0 | 188 | 188 | 0 | 190 | 190 | 0 | 6 | 6 | 384 |
| BEE | 0 | 4,753 | 4,753 | 0 | 2,672 | 2,672 | 0 | 144 | 144 | 7,569 |
| BEXAR | 0 | 1,267 | 1,267 | 0 | 759 | 759 | 0 | 56 | 56 | 2,082 |
| CALDWELL | 0 | 5,511 | 5,511 | 0 | 4,752 | 4,752 | 0 | 444 | 444 | 10,707 |
| DUVAL | 0 | 3,551 | 3,551 | 0 | 527 | 527 | 0 | 45 | 45 | 4,123 |
| GUADALUPE | 0 | 6,868 | 6,868 | 0 | 8,188 | 8,188 | 0 | 410 | 410 | 15,466 |
| HAYS | 0 | 6,628 | 6,628 | 0 | 3,910 | 3,910 | 0 | 601 | 601 | 11,139 |
| JIM HOGG | 0 | 1,442 | 1,442 | 0 | 152 | 152 | 0 | 8 | 8 | 1,602 |
| KARNES | 0 | 2,341 | 2,341 | 0 | 1,594 | 1,594 | 0 | 73 | 73 | 4,008 |
| LASALLE | 0 | 1,090 | 1,090 | 0 | 425 | 425 | 0 | 21 | 21 | 1,536 |
| LIVE OAK | 0 | 1,682 | 1,682 | 0 | 2,221 | 2,221 | 0 | 85 | 85 | 3,988 |
| MCMULLEN | 0 | 237 | 237 | 0 | 197 | 197 | 0 | 6 | 6 | 440 |
| SAN PATRICIO | 0 | 9,319 | 9,319 | 0 | 9,638 | 9,638 | 0 | 477 | 477 | 19,434 |
| STARR | 0 | 10,391 | 10,391 | 0 | 854 | 854 | 0 | 157 | 157 | 11,402 |
| TRAVIS | 0 | 23,012 | 23,012 | 0 | 5,328 | 5,328 | 0 | 1,878 | 1,878 | 30,218 |
| WEBB | 0 | 41,233 | 41,233 | 0 | 5,426 | 5,426 | 0 | 1,291 | 1,291 | 47,950 |
| WILSON | 0 | 7,518 | 7,518 | 0 | 8,785 | 8,785 | 0 | 385 | 385 | 16,688 |
| ZAPATA | 0 | 2,863 | 2,863 | 0 | 414 | 414 | 0 | 60 | 60 | 3,337 |
- ATASCOSA384 totalZaffiriniEarly 0 · E-day 188188RostigEarly 0 · E-day 190190MorseEarly 0 · E-day 66
- BEE7,569 totalZaffiriniEarly 0 · E-day 4,7534,753RostigEarly 0 · E-day 2,6722,672MorseEarly 0 · E-day 144144
- BEXAR2,082 totalZaffiriniEarly 0 · E-day 1,2671,267RostigEarly 0 · E-day 759759MorseEarly 0 · E-day 5656
- CALDWELL10,707 totalZaffiriniEarly 0 · E-day 5,5115,511RostigEarly 0 · E-day 4,7524,752MorseEarly 0 · E-day 444444
- DUVAL4,123 totalZaffiriniEarly 0 · E-day 3,5513,551RostigEarly 0 · E-day 527527MorseEarly 0 · E-day 4545
- GUADALUPE15,466 totalZaffiriniEarly 0 · E-day 6,8686,868RostigEarly 0 · E-day 8,1888,188MorseEarly 0 · E-day 410410
- HAYS11,139 totalZaffiriniEarly 0 · E-day 6,6286,628RostigEarly 0 · E-day 3,9103,910MorseEarly 0 · E-day 601601
- JIM HOGG1,602 totalZaffiriniEarly 0 · E-day 1,4421,442RostigEarly 0 · E-day 152152MorseEarly 0 · E-day 88
- KARNES4,008 totalZaffiriniEarly 0 · E-day 2,3412,341RostigEarly 0 · E-day 1,5941,594MorseEarly 0 · E-day 7373
- LASALLE1,536 totalZaffiriniEarly 0 · E-day 1,0901,090RostigEarly 0 · E-day 425425MorseEarly 0 · E-day 2121
- LIVE OAK3,988 totalZaffiriniEarly 0 · E-day 1,6821,682RostigEarly 0 · E-day 2,2212,221MorseEarly 0 · E-day 8585
- MCMULLEN440 totalZaffiriniEarly 0 · E-day 237237RostigEarly 0 · E-day 197197MorseEarly 0 · E-day 66
- SAN PATRICIO19,434 totalZaffiriniEarly 0 · E-day 9,3199,319RostigEarly 0 · E-day 9,6389,638MorseEarly 0 · E-day 477477
- STARR11,402 totalZaffiriniEarly 0 · E-day 10,39110,391RostigEarly 0 · E-day 854854MorseEarly 0 · E-day 157157
- TRAVIS30,218 totalZaffiriniEarly 0 · E-day 23,01223,012RostigEarly 0 · E-day 5,3285,328MorseEarly 0 · E-day 1,8781,878
- WEBB47,950 totalZaffiriniEarly 0 · E-day 41,23341,233RostigEarly 0 · E-day 5,4265,426MorseEarly 0 · E-day 1,2911,291
- WILSON16,688 totalZaffiriniEarly 0 · E-day 7,5187,518RostigEarly 0 · E-day 8,7858,785MorseEarly 0 · E-day 385385
- ZAPATA3,337 totalZaffiriniEarly 0 · E-day 2,8632,863RostigEarly 0 · E-day 414414MorseEarly 0 · E-day 6060