How Iowa's ZIP codes measure up on health
The ZipVitals Score across Iowa — built one ZIP code at a time, then rolled up to the state by resident population.
Data release 2026922 of 933 ZIP codes scored · 3.2M residents represented
Score snapshot
People & national context
Iowa's ZIP codes, ranked
Highest-scoring
Top 50 of 922- 150323in Urbandale · 17,265 residents68.51
- 252767in Pleasant Valley · 386 residents67.83
- 352317in North Liberty · 23,097 residents67.74
- 450263in Waukee · 29,611 residents66.78
- 550266in West Des Moines · 37,523 residents66.44
- 652411in Cedar Rapids · 8,342 residents66.00
- 750069in De Soto · 1,109 residents65.83
- 852340in Tiffin · 6,128 residents65.34
- 952333in Solon · 7,295 residents65.13
- 1050325in Clive · 19,012 residents64.88
- 1150038in Booneville · 235 residents64.77
- 1252328in Robins · 2,712 residents64.74
- 1350007in Alleman · 444 residents64.66
- 1450105in Gilbert · 1,487 residents64.44
- 1550124in Huxley · 4,859 residents64.34
- 1652241in Coralville · 23,250 residents64.29
- 1752338in Shueyville · 3,934 residents63.85
- 1850073in Elkhart · 1,208 residents63.65
- 1952245in Iowa City · 22,853 residents63.61
- 2050309in Des Moines · 10,110 residents63.58
- 2150622in Denver · 3,549 residents63.54
- 2252748in Eldridge · 9,594 residents63.44
- 2350046in Cambridge · 1,554 residents63.43
- 2450035in Bondurant · 10,131 residents63.42
- 2550261in Van Meter · 3,399 residents63.20
- 2652227in Ely · 2,996 residents63.04
- 2750023in Ankeny · 46,306 residents62.96
- 2852341in Toddville · 1,378 residents62.90
- 2950109in Granger · 3,309 residents62.85
- 3050021in Ankeny · 30,283 residents62.73
- 3150244in Slater · 1,729 residents62.71
- 3250243in Sheldahl · 361 residents62.31
- 3350226in Polk City · 7,759 residents62.25
- 3450131in Johnston · 24,583 residents62.19
- 3552722in Bettendorf · 41,264 residents62.14
- 3652002in Dubuque · 17,005 residents62.12
- 3750134in Kelley · 770 residents62.06
- 3852807in Davenport · 15,617 residents62.06
- 3950647in Janesville · 1,978 residents62.00
- 4051554in Mineola · 194 residents61.99
- 4152003in Dubuque · 13,796 residents61.96
- 4252302in Marion · 42,706 residents61.91
- 4350276in Woodward · 2,679 residents61.54
- 4452324in Palo · 2,216 residents61.49
- 4550312in Des Moines · 15,802 residents61.37
- 4650643in Hudson · 3,027 residents61.30
- 4751363in Superior · 111 residents60.89
- 4850003in Adel · 9,948 residents60.86
- 4950211in Norwalk · 16,835 residents60.81
- 5052246in Iowa City · 22,308 residents60.79
Lowest-scoring
Bottom 50 of 922- 92252801in Davenport · 1,788 residents32.06
- 92150314in Des Moines · 10,438 residents32.60
- 92051101in Sioux City · 1,031 residents35.38
- 91951111in Sioux City · 39 residents35.47
- 91851105in Sioux City · 10,415 residents36.94
- 91752066in North Buena Vista · 124 residents37.47
- 91652802in Davenport · 9,466 residents37.73
- 91552339in Tama · 4,326 residents37.81
- 91450316in Des Moines · 16,710 residents38.26
- 91352549in Cincinnati · 487 residents39.40
- 91252555in Exline · 193 residents39.97
- 91150703in Waterloo · 17,952 residents40.58
- 91052044in Elkport · 297 residents42.47
- 90952544in Centerville · 8,121 residents42.69
- 90852158in Marquette · 290 residents42.70
- 90751442in Denison · 9,692 residents42.74
- 90652573in Mount Sterling · 148 residents42.93
- 90551510in Carter Lake · 3,767 residents43.13
- 90450545in Hardy · 139 residents43.13
- 90351103in Sioux City · 16,895 residents43.26
- 90251501in Council Bluffs · 34,618 residents43.31
- 90152134in Chester · 223 residents43.44
- 90050317in Des Moines · 36,548 residents43.75
- 89950533in Eagle Grove · 3,977 residents43.79
- 89852632in Keokuk · 11,711 residents43.98
- 89750313in Des Moines · 17,440 residents43.99
- 89652048in Garber · 201 residents44.08
- 89552542in Cantril · 588 residents44.11
- 89450707in Evansdale · 7,784 residents44.16
- 89350268in What Cheer · 908 residents44.23
- 89250558in Livermore · 653 residents44.33
- 89150213in Osceola · 7,489 residents44.44
- 89050173in Montour · 705 residents44.48
- 88951040in Onawa · 3,500 residents44.54
- 88852157in McGregor · 1,451 residents44.59
- 88750590in Swea City · 718 residents44.65
- 88650451in Lakota · 432 residents44.77
- 88550174in Murray · 1,259 residents44.79
- 88452552in Drakesville · 940 residents44.82
- 88350104in Gibson · 103 residents44.82
- 88250136in Keswick · 376 residents44.89
- 88150577in Renwick · 341 residents44.94
- 88050625in Dumont · 930 residents44.96
- 87950628in Elma · 1,423 residents44.99
- 87852590in Seymour · 1,464 residents45.02
- 87750108in Grand River · 376 residents45.07
- 87650591in Thor · 405 residents45.09
- 87550022in Atlantic · 8,526 residents45.18
- 87450853in Massena · 716 residents45.23
- 87351601in Shenandoah · 5,629 residents45.25
What the distribution shows
Across Iowa’s 933 ZIP codes, the ZipVitals Score spans a wide range. 922 of them carry enough measured coverage across all nine health domains to enter the population-weighted composite above; the rest are held out rather than filled from a coarser geography.
Assembled from the same ZIP-level data as every per-ZIP page. Read the full method →
Where Iowa stands, domain by domain
The ZipVitals Score above combines nine domains of health into one number. This is where Iowa's ZIP codes sit against ZIP codes across the country on each of them, weighted by how many residents live in each one — strongest at the top.
Disability · 65th
Weighted by residents, this state’s ZIP codes sit around the 65th percentile of US ZIP codes here — its highest of the nine scoring domains.
Environmental Hazard · 26th
Weighted by residents, this state’s ZIP codes sit around the 26th percentile of US ZIP codes here — its lowest of the nine scoring domains.
Read each bar as a national percentile from 0 to 100. The dark line marks the national median: a bar past it means Iowa's ZIP codes typically place above most ZIP codes in the country on that domain. A domain Iowa cannot place honestly is shown greyed as "Not enough data" rather than given a number.
Each figure is the population-weighted average of this state's ZIP codes' standing on that domain, compared with the ZIP codes measured across all nine scoring domains — not with all US ZIP codes. A ZIP code counts toward a domain only if it carries enough measured data on it and enough of Iowa's residents live in the ZIP codes that do; the rest are held out rather than filled in from a coarser geography. Read the full method →
Why this matters
The ZipVitals Score combines nine domains of health — from chronic disease and preventive care to environmental hazard, social need, and healthcare access — into one 0–100 index for each ZIP code, computed the same way everywhere from public federal and academic data. The Iowa figures on this page are population-weighted rollups of those per-ZIP scores, so they describe Iowa's residents rather than a coarser geography relabeled as the state.
A high score describes favorable documented conditions; it is not a claim about individual residents, and it does not capture everything that shapes a community's health. Where a ZIP code scores low, that pattern reflects structural conditions — investment, environment, and access — far more than the choices of the people who live there.