The district terrain
Iowa's 150 legislative districts as a 3D map. Each district is a tile you
can turn and zoom; set its height and
color from the menus above. The default view raises the
seats whose last election was closest and lays the lopsided ones flat.
Hover any district for its record: the 2026 race first,
the last election under it.
Iowa's 150 legislative districts as a 3D map of absentee ballots
returned so far (mail and in-person early): each tile's height is the
ballots back in the district, its color the registration of the voters
who returned them, Democratic share minus Republican share of all
returns, No Party included. Party is registration, not vote.
drag to orbit · scroll to zoom · hover to preview · click to isolate a district
Absentee returned: ballots received by county auditors, of ballots
requested, totals to date in the Secretary of State's report of October 21, 2026.
House districts
| District | Member | Last margin | Absentee returned, of requested | 2026 |
| 1 | J.D. Scholten (D) | +6.9% D | 662 of 1,382 | race → |
| 2 | Bob Henderson (R) | +21.4% R | 986 of 2,035 | race → |
| 3 | Thomas M. Jeneary (R) | +57.6% R | 999 of 2,148 | uncontested as of 2026-08-19 → |
| 4 | Skyler Wheeler (R) | unopposed | 471 of 1,784 | race → |
| 5 | Zach Dieken (R) | unopposed | 893 of 1,960 | race → |
| 6 | Megan Jones (R) | unopposed | 1,252 of 2,131 | uncontested as of 2026-08-19 → |
| 7 | Wendy Larson (R) | +40.2% R (2025 special) | 776 of 1,968 | race → |
| 8 | Ann Meyer (R) | unopposed | 924 of 1,913 | race → |
| 9 | Henry Stone (R) | +46.7% R | 1,042 of 2,167 | uncontested as of 2026-08-19 → |
| 10 | John H. Wills (R) | unopposed | 2,184 of 3,772 | uncontested as of 2026-08-19 → |
| 11 | Craig Steven Williams (R) | +44.9% R | 1,306 of 2,632 | race → |
| 12 | Steven C. Holt (R) | +47.6% R | 925 of 1,980 | race → |
| 13 | Travis M. Sitzmann (R) | +59.2% R | 771 of 1,952 | uncontested as of 2026-08-19 → |
| 14 | Jacob Bossman (R) | unopposed | 974 of 2,367 | uncontested as of 2026-08-19 → |
| 15 | Matt W. Windschitl (R) | +38.7% R | 1,364 of 2,563 | race → |
| 16 | David Sieck (R) | +50.2% R | 920 of 1,961 | race → |
| 17 | Devon Wood (R) | unopposed | 1,152 of 2,469 | uncontested as of 2026-08-19 → |
| 18 | Thomas Jay Moore (R) | +47.9% R | 934 of 2,108 | race → |
| 19 | Brent Siegrist (R) | +17.3% R | 1,297 of 2,192 | race → |
| 20 | Josh Turek (D) | +5% D | 812 of 1,424 | race → |
| 21 | Brooke Boden (R) | +17.4% R | 2,188 of 3,562 | race → |
| 22 | Samantha Fett (R) | +18.6% R | 1,867 of 3,663 | race → |
| 23 | Ray Sorensen (R) | +44.4% R | 1,371 of 2,514 | race → |
| 24 | Sam Wengryn (R) | +34% R | 1,155 of 2,017 | race → |
| 25 | Hans C. Wilz (R) | +29.7% R | 1,165 of 1,860 | race → |
| 26 | Austin Harris (R) | +47.5% R | 1,066 of 2,246 | race → |
| 27 | Kenan Judge (D) | +11.5% D | 1,286 of 3,588 | uncontested as of 2026-08-19 → |
| 28 | David E. Young (R) | +6.6% R | 1,386 of 3,505 | race → |
| 29 | Brian Meyer (D) | unopposed | 434 of 1,376 | uncontested as of 2026-08-19 → |
| 30 | Dr. Megan L. Srinivas (D) | +25.3% D | 578 of 1,567 | uncontested as of 2026-08-19 → |
| 31 | Mary Lee Madison (D) | unopposed | 734 of 2,720 | race → |
| 32 | Jennifer Konfrst (D) | unopposed | 1,126 of 2,794 | uncontested as of 2026-08-19 → |
| 33 | Ruth Ann Gaines (D) | +52.8% D | 531 of 1,329 | race → |
| 34 | Rob Johnson (D) | +53.7% D | 843 of 1,487 | uncontested as of 2026-08-19 → |
| 35 | Sean Bagniewski (D) | +38.2% D | 1,444 of 2,615 | uncontested as of 2026-08-19 → |
| 36 | Austin Baeth (D) | unopposed | 1,681 of 3,113 | race → |
| 37 | Barb Kniff McCulla (R) | unopposed | 957 of 2,842 | uncontested as of 2026-08-19 → |
| 38 | vacant | +11.6% R | 1,423 of 2,665 | race → |
| 39 | Rick L. Olson (D) | +9.4% D | 648 of 1,884 | race → |
| 40 | Bill Gustoff (R) | +1.9% R | 661 of 2,346 | race → |
| 41 | Ryan Weldon (R) | +0.6% R | 1,352 of 3,793 | race → |
| 42 | Heather Matson (D) | +0.8% D | 1,150 of 3,303 | race → |
| 43 | Eddie Andrews (R) | +3.4% R | 969 of 3,041 | race → |
| 44 | Larry McBurney (D) | +29.5% D | 639 of 2,588 | uncontested as of 2026-08-19 → |
| 45 | Brian K. Lohse (R) | +29.4% R | 1,320 of 2,901 | race → |
| 46 | Dan Gehlbach (R) | +10.3% R | 1,430 of 3,744 | race → |
| 47 | Carter F. Nordman (R) | +28.2% R | 1,037 of 2,271 | race → |
| 48 | Chad Behn (R) | +20.5% R | 1,501 of 2,958 | race → |
| 49 | Beth Wessel-Kroeschell (D) | +47.9% D | 599 of 1,417 | uncontested as of 2026-08-19 → |
| 50 | Ross Wilburn (D) | unopposed | 1,073 of 2,703 | uncontested as of 2026-08-19 → |
| 51 | Brett Barker (R) | +25.3% R | 1,289 of 2,598 | race → |
| 52 | David L. Blom (R) | +4.6% R | 1,397 of 2,599 | race → |
| 53 | Dean Fisher (R) | +13.7% R | 1,148 of 2,449 | race → |
| 54 | Joshua Meggers (R) | unopposed | 1,001 of 2,713 | race → |
| 55 | Shannon Latham (R) | unopposed | 1,108 of 2,361 | race → |
| 56 | Mark I. Thompson (R) | +48.5% R | 908 of 2,085 | race → |
| 57 | Pat Grassley (R) | +20.4% R | 1,495 of 3,012 | race → |
| 58 | Charley Thomson (R) | +27% R | 1,406 of 2,915 | race → |
| 59 | Christian A. Hermanson (R) | +2.4% R | 1,542 of 2,454 | race → |
| 60 | Jane Bloomingdale (R) | unopposed | 1,260 of 2,443 | race → |
| 61 | Timi M. Brown-Powers (D) | unopposed | 1,552 of 2,542 | race → |
| 62 | Jerome Amos Jr. (D) | +51.7% D | 1,083 of 1,802 | uncontested as of 2026-08-19 → |
| 63 | Michael R. Bergan (R) | unopposed | 2,332 of 3,585 | race → |
| 64 | Jason Gearhart (R) | unopposed | 1,151 of 2,306 | race → |
| 65 | Shannon Lundgren (R) | +28.6% R | 1,609 of 3,629 | race → |
| 66 | Dr. Steven P. Bradley (R) | +10.9% R | 1,402 of 2,982 | race → |
| 67 | Craig P. Johnson (R) | unopposed | 1,512 of 2,760 | race → |
| 68 | Chad Ingels (R) | +34.6% R | 989 of 2,277 | race → |
| 69 | Tom Determann (R) | +14.1% R | 2,279 of 3,433 | race → |
| 70 | Norlin G. Mommsen (R) | +22.8% R | 1,322 of 2,819 | race → |
| 71 | Lindsay James (D) | +12.3% D | 1,809 of 3,062 | uncontested as of 2026-08-19 → |
| 72 | Jennifer J. Smith (R) | +6.6% R | 2,046 of 3,885 | race → |
| 73 | Elizabeth Wilson (D) | unopposed | 1,342 of 3,271 | uncontested as of 2026-08-19 → |
| 74 | Eric J. Gjerde (D) | unopposed | 1,223 of 2,642 | uncontested as of 2026-08-19 → |
| 75 | Bob Kressig (D) | unopposed | 1,548 of 2,829 | uncontested as of 2026-08-19 → |
| 76 | Derek Wulf (R) | +21% R | 1,502 of 2,938 | race → |
| 77 | Jeff Cooling (D) | unopposed | 835 of 2,018 | uncontested as of 2026-08-19 → |
| 78 | Angel Ramirez (D) | +58.4% D (2025 special) | 1,286 of 2,332 | uncontested as of 2026-08-19 → |
| 79 | Tracy A. Ehlert (D) | +21.6% D | 1,130 of 2,415 | race → |
| 80 | Aime Wichtendahl (D) | +4.8% D | 1,358 of 2,719 | uncontested as of 2026-08-19 → |
| 81 | Daniel Gosa (D) | unopposed | 1,127 of 2,603 | race → |
| 82 | Bobby Kaufmann (R) | +21.1% R | 1,083 of 2,579 | race → |
| 83 | Cindy Golding (R) | +17.5% R | 869 of 2,066 | race → |
| 84 | Thomas Gerhold (R) | +46.6% R | 970 of 2,000 | race → |
| 85 | Amy Nielsen (D) | unopposed | 1,746 of 3,157 | uncontested as of 2026-08-19 → |
| 86 | David Jacoby (D) | +52.3% D | 2,293 of 3,554 | uncontested as of 2026-08-19 → |
| 87 | Jeff Shipley (R) | +18.5% R | 1,262 of 2,422 | race → |
| 88 | Helena Hayes (R) | unopposed | 977 of 2,137 | uncontested as of 2026-08-19 → |
| 89 | Elinor A. Levin (D) | unopposed | 2,216 of 3,003 | race → |
| 90 | Adam Zabner (D) | unopposed | 2,828 of 3,807 | uncontested as of 2026-08-19 → |
| 91 | Judd Lawler (R) | +9.7% R | 1,484 of 2,826 | race → |
| 92 | Heather Hora (R) | +21.5% R | 1,443 of 2,709 | race → |
| 93 | Gary M. Mohr (R) | +20.4% R | 2,273 of 4,488 | race → |
| 94 | Mike Vondran (R) | +15.2% R | 1,815 of 3,514 | race → |
| 95 | Taylor R. Collins (R) | +42.8% R | 858 of 2,050 | race → |
| 96 | Mark Cisneros (R) | +17.7% R | 1,431 of 2,480 | race → |
| 97 | Ken Croken (D) | +17.6% D | 1,135 of 2,161 | race → |
| 98 | Monica Kurth (D) | +0.3% D | 911 of 2,124 | race → |
| 99 | Matthew Rinker (R) | +11.4% R | 1,250 of 2,708 | race → |
| 100 | Blaine C. Watkins (R) | +3.3% R (2025 special) | 1,194 of 2,534 | race → |
Senate districts
| District | Member | Last margin | Absentee returned, of requested | 2026 |
| 1 | Catelin Drey (D) | +10.5% D (2025 special) | 1,648 of 3,417 | race → |
| 2 | Jeff Taylor (R) | unopposed | 1,470 of 3,932 | not on the 2026 ballot |
| 3 | Lynn Evans (R) | unopposed | 2,145 of 4,091 | race → |
| 4 | Tim Kraayenbrink (R) | unopposed | 1,700 of 3,881 | not on the 2026 ballot |
| 5 | David D. Rowley (R) | unopposed | 3,226 of 5,939 | race → |
| 6 | Jason Schultz (R) | +62.5% R | 2,231 of 4,612 | not on the 2026 ballot |
| 7 | Kevin Alons (R) | unopposed | 1,745 of 4,319 | uncontested as of 2026-08-19 → |
| 8 | Mark Costello (R) | +41.2% R | 2,284 of 4,524 | not on the 2026 ballot |
| 9 | Tom Shipley (R) | +53.8% R | 2,086 of 4,577 | race → |
| 10 | Dan Dawson (R) | +12.1% R | 2,109 of 3,616 | not on the 2026 ballot |
| 11 | vacant | +23.3% R | 4,055 of 7,225 | race → |
| 12 | Amy Sinclair (R) | +50.3% R | 2,526 of 4,531 | not on the 2026 ballot |
| 13 | Cherielynn Westrich (R) | +29.8% R | 2,231 of 4,106 | race → |
| 14 | Sarah Trone Garriott (D) | +0.1% D | 2,672 of 7,093 | not on the 2026 ballot |
| 15 | Tony Bisignano (D) | unopposed | 1,012 of 2,943 | uncontested as of 2026-08-19 → |
| 16 | Renee Hardman (D) | special election December 30, 2025: result not in our records | 1,860 of 5,514 | not on the 2026 ballot |
| 17 | Izaah Knox (D) | +71.8% D | 1,374 of 2,816 | race → |
| 18 | Janet Petersen (D) | unopposed | 3,125 of 5,728 | not on the 2026 ballot |
| 19 | Ken Rozenboom (R) | +37.3% R | 2,380 of 5,507 | race → |
| 20 | Mike Pike (R) | +0.1% R | 1,309 of 4,230 | not on the 2026 ballot |
| 21 | Mike Bousselot (R) | +1.9% R | 2,502 of 7,096 | race → |
| 22 | Matt Blake (D) | +4.9% D | 1,608 of 5,629 | not on the 2026 ballot |
| 23 | Jack Whitver (R) | +17.4% R | 2,750 of 6,645 | race → |
| 24 | Jesse Green (R) | +25.1% R | 2,538 of 5,229 | not on the 2026 ballot |
| 25 | Herman C. Quirmbach (D) | +52.4% D | 1,672 of 4,120 | race → |
| 26 | Kara Warme (R) | +19.4% R | 2,686 of 5,197 | not on the 2026 ballot |
| 27 | Annette Sweeney (R) | +33.4% R | 2,149 of 5,162 | uncontested as of 2026-08-19 → |
| 28 | Dennis Guth (R) | +39% R | 2,016 of 4,446 | not on the 2026 ballot |
| 29 | Sandy Salmon (R) | +30.9% R | 2,901 of 5,927 | race → |
| 30 | Doug Campbell (R) | +22.7% R | 2,802 of 4,897 | not on the 2026 ballot |
| 31 | William A. Dotzler Jr. (D) | unopposed | 2,635 of 4,344 | uncontested as of 2026-08-19 → |
| 32 | Mike Klimesh (R) | +29.3% R | 3,483 of 5,891 | not on the 2026 ballot |
| 33 | Carrie Koelker (R) | +31.7% R | 3,011 of 6,611 | race → |
| 34 | Dan Zumbach (R) | +33.5% R | 2,501 of 5,037 | not on the 2026 ballot |
| 35 | Mike Zimmer (D) | +3.6% D (2025 special) | 3,601 of 6,252 | race → |
| 36 | Thomas Townsend (D) | +1% D | 3,855 of 6,947 | not on the 2026 ballot |
| 37 | Molly Donahue (D) | +12.1% D | 2,565 of 5,913 | race → |
| 38 | Dave Sires (R) | +1.1% R | 3,050 of 5,767 | not on the 2026 ballot |
| 39 | Liz Bennett (D) | +29.7% D | 2,121 of 4,350 | race → |
| 40 | Art Staed (D) | +10.3% D | 2,488 of 5,134 | not on the 2026 ballot |
| 41 | Kerry Gruenhagen (R) | +16.3% R | 2,210 of 5,182 | race → |
| 42 | Charlie McClintock (R) | unopposed | 1,839 of 4,066 | not on the 2026 ballot |
| 43 | Zach Wahls (D) | unopposed | 4,039 of 6,711 | uncontested as of 2026-08-19 → |
| 44 | Adrian Dickey (R) | unopposed | 2,239 of 4,559 | not on the 2026 ballot |
| 45 | Janice Weiner (D) | +64.1% D | 5,044 of 6,810 | uncontested as of 2026-08-19 → |
| 46 | Dawn Driscoll (R) | +21.5% R | 2,927 of 5,535 | not on the 2026 ballot |
| 47 | Scott Webster (R) | +12.3% R | 4,088 of 8,002 | race → |
| 48 | Mark S. Lofgren (R) | +31.5% R | 2,289 of 4,530 | not on the 2026 ballot |
| 49 | Cindy Winckler (D) | unopposed | 2,046 of 4,285 | race → |
| 50 | Jeff Reichman (R) | +17% R | 2,444 of 5,242 | not on the 2026 ballot |
Geometry: U.S. Census cartographic boundaries. Margins: certified
general-election results from the Iowa Secretary of State, most recent race on the current maps (2022
or 2024). Cash: each incumbent committee's latest state disclosure filing.
Registration: Iowa Secretary of State monthly active-voter totals (Oct 2026); the trend
line compares against Nov 2024, the last general election, on the same
district maps. 2026 candidates: Iowa Secretary of State list.
Absentee ballots: Iowa Secretary of State Daily Absentee Statistics, report
of October 21, 2026 (data pulled 08:00 on October 21, 2026), by State House and State
Senate district. Each report gives the election's totals to date, not that day's
activity; a total can be lower than in the report before it. Party is the voter's
registered party, not how they voted; "returned" means the
ballot reached the county auditor, not that it has been counted. The state
replaces this report every day, and Iowa Ledger has found no copy of earlier
2026 reports on its site, so the day-by-day
series begins October 15, 2026, the first report Iowa Ledger saved, and holds
3 daily reports.
Iowa Ledger has no saved report for 4 days in
that span (October 17, 2026; October 18, 2026; October 19, 2026; October 20, 2026); the state may not have
posted one, or we failed to save it.
Compare each district with 2022 and 2024 → Every district and county, sortable →