Iowa county websites: security rankings

Security scores, grades, and the most common failures for 97 Iowa county government websites, from ScanGov homepage scans.

  • Sites: 97
  • Last scan: 9/20/2026

A 94

Average security score of 80 fully scanned Iowa county sites

4th

of 48 states, ranked by average security score

80 of 97

Sites fully scanned. We couldn't fully scan 17, so they're listed without grades

B 88

U.S. county average security score, 2435 fully scanned sites

Iowa's state site, iowa.gov, ranks 3rd of 51 state sites with an A. State rankings.

How Iowa county security scores are distributed

Smoothed distribution of the 80 fully scanned Iowa county sites, score 0 to 100. Height shows how many sites score near each value.

Distribution of 80 scores. The data table lists counts by score range.

  • Iowa average
  • U.S. county average
View the data table
How Iowa county security scores are distributed
Score rangeSites
0 to 90
10 to 190
20 to 290
30 to 390
40 to 490
50 to 590
60 to 690
70 to 791
80 to 8935
90 to 10044

Iowa counties by security grade

Each county with a site on our list is colored by that site's grade. Select a county to open its report. The table lists every site.

Adair County, IA: grade A, security score 100 Adams County, IA: grade A, security score 100 Allamakee County, IA: grade B, security score 87 Appanoose County, IA: grade A, security score 100 Audubon County, IA: grade B, security score 85 Benton County, IA: grade A, security score 100 Black Hawk County, IA: grade A, security score 100 Boone County, IA: grade A, security score 100 Bremer County, IA: grade B, security score 85 Buchanan County, IA: grade A, security score 100 Buena Vista County, IA: grade C, security score 75 Butler County, IA: grade B, security score 87 Calhoun County, IA: grade B, security score 87 Carroll County, IA: not fully scanned, so not graded (status 995) Cass County, IA: grade A, security score 100 Cedar County, IA: grade A, security score 100 Cerro Gordo County, IA: grade A, security score 100 Cherokee County, IA: not fully scanned, so not graded (status 998) Chickasaw County, IA: grade B, security score 85 Clarke County, IA: grade A, security score 100 Clay County, IA: grade B, security score 87 Clayton County, IA: grade A, security score 100 Clinton County, IA: grade B, security score 85 Crawford County, IA: grade A, security score 100 Dallas County, IA: grade A, security score 100 Davis County, IA: grade B, security score 87 Decatur County, IA: not fully scanned, so not graded (status 403) Delaware County, IA: grade B, security score 87 Des Moines County, IA: grade A, security score 100 Dickinson County, IA: grade B, security score 87 Dubuque County, IA: grade A, security score 100 Emmet County, IA: not fully scanned, so not graded (status 996) Fayette County, IA: grade B, security score 87 Floyd County, IA: grade A, security score 100 Franklin County, IA: grade B, security score 85 Fremont County, IA: grade A, security score 100 Greene County, IA: not fully scanned, so not graded (status 403) Grundy County, IA: grade B, security score 87 Guthrie County, IA: not fully scanned, so not graded (status 995) Hamilton County, IA: not fully scanned, so not graded (status 998) Hancock County, IA: grade B, security score 85 Hardin County, IA: not fully scanned, so not graded (status 995) Harrison County, IA: grade B, security score 87 Henry County, IA: grade A, security score 100 Howard County, IA: grade B, security score 87 Humboldt County, IA: grade B, security score 85 Ida County, IA: grade B, security score 85 Iowa County, IA: grade A, security score 100 Jackson County, IA: grade A, security score 100 Jasper County, IA: grade B, security score 85 Jefferson County, IA: grade B, security score 87 Johnson County, IA: grade A, security score 100 Jones County, IA: grade A, security score 100 Keokuk County, IA: grade B, security score 85 Kossuth County, IA: grade A, security score 100 Lee County, IA: not fully scanned, so not graded (status 995) Linn County, IA: grade A, security score 100 Louisa County, IA: grade A, security score 100 Lucas County, IA: grade A, security score 100 Lyon County, IA: grade A, security score 100 Madison County, IA: grade B, security score 87 Mahaska County, IA: grade B, security score 85 Marion County, IA: grade A, security score 100 Marshall County, IA: grade B, security score 85 Mills County, IA: grade A, security score 100 Mitchell County, IA: grade B, security score 87 Monona County, IA: grade A, security score 100 Monroe County, IA: grade B, security score 87 Montgomery County, IA: not fully scanned, so not graded (status 995) Muscatine County, IA: grade A, security score 100 O'Brien County, IA: not fully scanned, so not graded (status 996) Osceola County, IA: not fully scanned, so not graded (status 996) Page County, IA: grade B, security score 87 Palo Alto County, IA: grade B, security score 87 Plymouth County, IA: not fully scanned, so not graded (status 996) Pocahontas County, IA: not fully scanned, so not graded (status 995) Polk County, IA: not fully scanned, so not graded (status 995) Pottawattamie County, IA: grade A, security score 100 Poweshiek County, IA: grade A, security score 100 Ringgold County, IA: grade B, security score 85 Sac County, IA: grade A, security score 100 Scott County, IA: grade A, security score 100 Shelby County, IA: grade B, security score 85 Sioux County, IA: not fully scanned, so not graded (status 996) Story County, IA: grade A, security score 100 Tama County, IA: grade B, security score 85 Taylor County, IA: grade A, security score 100 Union County, IA: grade A, security score 100 Van Buren County, IA: grade B, security score 85 Wapello County, IA: grade B, security score 85 Warren County, IA: grade A, security score 100 Washington County, IA: grade A, security score 100 Wayne County, IA: grade A, security score 100 Webster County: not scanned Winnebago County, IA: grade A, security score 100 Winneshiek County: not scanned Woodbury County, IA: grade A, security score 100 Worth County, IA: grade B, security score 85 Wright County, IA: not fully scanned, so not graded (status 998)
  • A (90 to 100)
  • B to C (70 to 89)
  • D to F (below 70)
  • Not fully scanned
  • No site on our list

Iowa counties by security grade, compared with all U.S. counties

Share of fully scanned sites in each grade band. Iowa: 80 sites. U.S.: 2435 sites.

  1. IowaA (90 to 100): 55% (44 sites)B to C (70 to 89): 45% (36 sites)
  2. All U.S. countiesA (90 to 100): 34% (823 sites)B to C (70 to 89): 65% (1,574 sites)D to F (below 70): 2% (38 sites)
  • A (90 to 100)
  • B to C (70 to 89)
  • D to F (below 70)
View the data table
Iowa counties by security grade, compared with all U.S. counties
GroupA (90 to 100)B to C (70 to 89)D to F (below 70)
Iowa55% (44)45% (36)0% (0)
All U.S. counties34% (823)65% (1,574)2% (38)

Top 3 Iowa county sites by security score

#1 in Iowa · U.S. rank 1

Adair County, IA

A 100 security

  • Accessibility C
  • Botability B
  • Security A
  • Usability C

#1 in Iowa · U.S. rank 1

Adams County, IA

A 100 security

  • Accessibility C
  • Botability C
  • Security A
  • Usability B

#1 in Iowa · U.S. rank 1

Appanoose County, IA

A 100 security

  • Accessibility B
  • Botability A
  • Security A
  • Usability B

Most common security failures among Iowa county sites

Share of the 80 fully scanned Iowa county sites failing each check. A site can fail more than one check. Each check links to its standard and how to fix it.

  1. Errors in the console35% (28 of 80 sites)
  2. Security.txt6% (5 of 80 sites)
  3. Sponsored top-level domain (sTLD)3% (2 of 80 sites)
  4. X-Content-Type-Options3% (2 of 80 sites)
View the data table
Most common security failures among Iowa county sites
CheckShare failingSites failing
Errors in the console35%28
Security.txt6%5
Sponsored top-level domain (sTLD)3%2
X-Content-Type-Options3%2

What each check means

  • Errors in the console. The page loads without JavaScript or network errors. Site may have hidden bugs that break features.
  • Security.txt. The site has a security.txt file so researchers know how to report issues. Security researchers cannot report problems to you.
  • Sponsored top-level domain (sTLD). The site uses a government-issued domain (.gov, .edu, or .mil). People cannot tell if your site is real government.
  • X-Content-Type-Options. The site tells browsers not to guess the type of files it serves. Browsers might run dangerous files by mistake.

All Iowa county sites by security score

Iowa county sites ranked by security score
Rank Site Checks passed Grade
1 adaircounty.iowa.gov
Adair County, IA U.S. rank 1
7 of 7 checks pass A
1 adamscounty.iowa.gov
Adams County, IA U.S. rank 1
7 of 7 checks pass A
1 appanoosecounty.iowa.gov
Appanoose County, IA U.S. rank 1
8 of 8 checks pass A
1 bentoncountyia.gov
Benton County, IA U.S. rank 1
7 of 7 checks pass A
1 blackhawkcounty.iowa.gov
Black Hawk County, IA U.S. rank 1
8 of 8 checks pass A
1 boonecounty.iowa.gov
Boone County, IA U.S. rank 1
7 of 7 checks pass A
1 buchanancounty.iowa.gov
Buchanan County, IA U.S. rank 1
7 of 7 checks pass A
1 casscountyia.gov
Cass County, IA U.S. rank 1
8 of 8 checks pass A
1 cedarcounty.iowa.gov
Cedar County, IA U.S. rank 1
7 of 7 checks pass A
1 cerrogordo.gov
Cerro Gordo County, IA U.S. rank 1
8 of 8 checks pass A
1 clarkecounty.iowa.gov
Clarke County, IA U.S. rank 1
7 of 7 checks pass A
1 claytoncountyia.gov
Clayton County, IA U.S. rank 1
7 of 7 checks pass A
1 crawfordcounty.iowa.gov
Crawford County, IA U.S. rank 1
7 of 7 checks pass A
1 dallascountyiowa.gov
Dallas County, IA U.S. rank 1
8 of 8 checks pass A
1 desmoinescounty.iowa.gov
Des Moines County, IA U.S. rank 1
7 of 7 checks pass A
1 dubuquecountyiowa.gov
Dubuque County, IA U.S. rank 1
8 of 8 checks pass A
1 floydco.iowa.gov
Floyd County, IA U.S. rank 1
8 of 8 checks pass A
1 fremontcountyia.gov
Fremont County, IA U.S. rank 1
8 of 8 checks pass A
1 henrycounty.iowa.gov
Henry County, IA U.S. rank 1
8 of 8 checks pass A
1 iowacounty.iowa.gov
Iowa County, IA U.S. rank 1
7 of 7 checks pass A
1 jacksoncounty.iowa.gov
Jackson County, IA U.S. rank 1
7 of 7 checks pass A
1 johnsoncountyiowa.gov
Johnson County, IA U.S. rank 1
7 of 7 checks pass A
1 jonescountyiowa.gov
Jones County, IA U.S. rank 1
7 of 7 checks pass A
1 kossuthcounty.iowa.gov
Kossuth County, IA U.S. rank 1
7 of 7 checks pass A
1 linncountyiowa.gov
Linn County, IA U.S. rank 1
8 of 8 checks pass A
1 louisacountyia.gov
Louisa County, IA U.S. rank 1
8 of 8 checks pass A
1 lucascounty.iowa.gov
Lucas County, IA U.S. rank 1
7 of 7 checks pass A
1 lyoncounty.iowa.gov
Lyon County, IA U.S. rank 1
7 of 7 checks pass A
1 marioncountyiowa.gov
Marion County, IA U.S. rank 1
7 of 7 checks pass A
1 millscountyiowa.gov
Mills County, IA U.S. rank 1
8 of 8 checks pass A
1 mononacountyiowa.gov
Monona County, IA U.S. rank 1
7 of 7 checks pass A
1 muscatinecountyiowa.gov
Muscatine County, IA U.S. rank 1
7 of 7 checks pass A
1 pottcounty-ia.gov
Pottawattamie County, IA U.S. rank 1
8 of 8 checks pass A
1 poweshiekcountyiowa.gov
Poweshiek County, IA U.S. rank 1
7 of 7 checks pass A
1 saccountyiowa.gov
Sac County, IA U.S. rank 1
7 of 7 checks pass A
1 scottcountyiowa.gov
Scott County, IA U.S. rank 1
8 of 8 checks pass A
1 storycountyiowa.gov
Story County, IA U.S. rank 1
8 of 8 checks pass A
1 taylorcounty.iowa.gov
Taylor County, IA U.S. rank 1
7 of 7 checks pass A
1 unioncountyiowa.gov
Union County, IA U.S. rank 1
8 of 8 checks pass A
1 warrencountyia.gov
Warren County, IA U.S. rank 1
8 of 8 checks pass A
1 washingtoncounty.iowa.gov
Washington County, IA U.S. rank 1
8 of 8 checks pass A
1 waynecounty.iowa.gov
Wayne County, IA U.S. rank 1
8 of 8 checks pass A
1 winnebagocountyiowa.gov
Winnebago County, IA U.S. rank 1
7 of 7 checks pass A
1 woodburycountyiowa.gov
Woodbury County, IA U.S. rank 1
7 of 7 checks pass A
2 allamakeecounty.iowa.gov
Allamakee County, IA U.S. rank 3
7 of 8 checks pass B
2 butlercounty.iowa.gov
Butler County, IA U.S. rank 3
7 of 8 checks pass B
2 calhouncounty.iowa.gov
Calhoun County, IA U.S. rank 3
7 of 8 checks pass B
2 claycounty.iowa.gov
Clay County, IA U.S. rank 3
7 of 8 checks pass B
2 daviscountyiowa.gov
Davis County, IA U.S. rank 3
7 of 8 checks pass B
2 delawarecounty.iowa.gov
Delaware County, IA U.S. rank 3
7 of 8 checks pass B
2 dickinsoncountyiowa.gov
Dickinson County, IA U.S. rank 3
7 of 8 checks pass B
2 fayettecounty.iowa.gov
Fayette County, IA U.S. rank 3
7 of 8 checks pass B
2 grundycountyiowa.gov
Grundy County, IA U.S. rank 3
7 of 8 checks pass B
2 harrisoncounty.iowa.gov
Harrison County, IA U.S. rank 3
7 of 8 checks pass B
2 howardcounty.iowa.gov
Howard County, IA U.S. rank 3
7 of 8 checks pass B
2 jeffersoncounty.iowa.gov
Jefferson County, IA U.S. rank 3
7 of 8 checks pass B
2 madisoncounty.iowa.gov
Madison County, IA U.S. rank 3
7 of 8 checks pass B
2 mitchellcounty.iowa.gov
Mitchell County, IA U.S. rank 3
7 of 8 checks pass B
2 monroecounty.iowa.gov
Monroe County, IA U.S. rank 3
7 of 8 checks pass B
2 pagecounty.iowa.gov
Page County, IA U.S. rank 3
7 of 8 checks pass B
2 paloaltocounty.iowa.gov
Palo Alto County, IA U.S. rank 3
7 of 8 checks pass B
3 auduboncountyia.gov
Audubon County, IA U.S. rank 4
6 of 7 checks pass B
3 bremercounty.iowa.gov
Bremer County, IA U.S. rank 4
6 of 7 checks pass B
3 chickasawcounty.iowa.gov
Chickasaw County, IA U.S. rank 4
6 of 7 checks pass B
3 clintoncounty-ia.gov
Clinton County, IA U.S. rank 4
6 of 7 checks pass B
3 franklincountyia.gov
Franklin County, IA U.S. rank 4
6 of 7 checks pass B
3 hancockcountyia.gov
Hancock County, IA U.S. rank 4
6 of 7 checks pass B
3 humboldtcounty.iowa.gov
Humboldt County, IA U.S. rank 4
6 of 7 checks pass B
3 idacounty.iowa.gov
Ida County, IA U.S. rank 4
6 of 7 checks pass B
3 jasperia.org
Jasper County, IA U.S. rank 4
6 of 7 checks pass B
3 keokukcounty.iowa.gov
Keokuk County, IA U.S. rank 4
6 of 7 checks pass B
3 mahaskacountyia.gov
Mahaska County, IA U.S. rank 4
6 of 7 checks pass B
3 marshallcountyia.gov
Marshall County, IA U.S. rank 4
6 of 7 checks pass B
3 ringgoldcounty.iowa.gov
Ringgold County, IA U.S. rank 4
6 of 7 checks pass B
3 shelbycounty.iowa.gov
Shelby County, IA U.S. rank 4
6 of 7 checks pass B
3 tamacounty.iowa.gov
Tama County, IA U.S. rank 4
6 of 7 checks pass B
3 vanburencounty.iowa.gov
Van Buren County, IA U.S. rank 4
6 of 7 checks pass B
3 wapellocounty.org
Wapello County, IA U.S. rank 4
6 of 7 checks pass B
3 worthcountyiowa.gov
Worth County, IA U.S. rank 4
6 of 7 checks pass B
4 buenavistacounty.iowa.gov
Buena Vista County, IA U.S. rank 7
6 of 8 checks pass C
carrollcountyiowa.gov
Carroll County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
cherokeecounty.iowa.gov
Cherokee County, IA
Not fully scanned, so not graded. We didn't scan your site because its robots.txt asked us not to. Status 998 -
decaturcountyiowa.gov
Decatur County, IA
Not fully scanned, so not graded. We weren't able to fully scan your site. Status 403 -
emmetcountyia.gov
Emmet County, IA
Not fully scanned, so not graded. We couldn't scan your site because it showed our bot a captcha or browser check instead of the page. Status 996 -
co.greene.ia.us
Greene County, IA
Not fully scanned, so not graded. We weren't able to fully scan your site. Status 403 -
guthriecounty.gov
Guthrie County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
hamiltoncounty.iowa.gov
Hamilton County, IA
Not fully scanned, so not graded. We didn't scan your site because its robots.txt asked us not to. Status 998 -
hardincountyia.gov
Hardin County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
leecounty.org
Lee County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
montgomerycountyia.gov
Montgomery County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
obriencounty.iowa.gov
O'Brien County, IA
Not fully scanned, so not graded. We couldn't scan your site because it showed our bot a captcha or browser check instead of the page. Status 996 -
osceolacountyia.gov
Osceola County, IA
Not fully scanned, so not graded. We couldn't scan your site because it showed our bot a captcha or browser check instead of the page. Status 996 -
plymouthcountyiowa.gov
Plymouth County, IA
Not fully scanned, so not graded. We couldn't scan your site because it showed our bot a captcha or browser check instead of the page. Status 996 -
pocahontascounty.iowa.gov
Pocahontas County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
polkcountyiowa.gov
Polk County, IA
Not fully scanned, so not graded. We couldn't fully scan your site because it responded without any page content. Status 995 -
siouxcountyia.gov
Sioux County, IA
Not fully scanned, so not graded. We couldn't scan your site because it showed our bot a captcha or browser check instead of the page. Status 996 -
wrightcounty.iowa.gov
Wright County, IA
Not fully scanned, so not graded. We didn't scan your site because its robots.txt asked us not to. Status 998 -

About this data

ScanGov scans the homepage of each county government site on our county list in Iowa. Scores come from the checks listed on standards.scangov.org. Sites were scanned between 7/19/2026 and 9/18/2026; each site's report shows its own scan date. A site counts as fully scanned when its homepage returned successfully and sent the scanner its page content. Averages, grade shares, failure rates, and ranks use fully scanned sites only. We weren't able to fully scan 17 sites because they did not respond, blocked the scanner, or returned no page content. They appear in the table without grades, each with its scan status, and are left out of every figure. Grades follow the ScanGov grade scale, and rank follows the ScanGov ranking method. The full dataset, including every county's raw results, is published in the ScanGov data repository.