First three digits · Iowa
ZIP Codes Starting with
33 ZIP codes start with 521, sorted at the Waterloo, IA (SCF 506) sectional center (USPS labeling list L005, effective October 1, 2026) in Iowa: 32 residential ZIP codes across 6 counties and 1 PO Box or single-organization code (Census 2020 ZCTAs and GeoNames postal codes, October 2026).
What do the digits 521 mean?
The first digit, 5, is one of ten national areas (Iowa, Minnesota, Montana, North Dakota, South Dakota and Wisconsin). The first three, 521, route mail to a sectional center: USPS labeling list L005 (effective October 1, 2026) sends letters for 521 to the Waterloo, IA (SCF 506) facility. The last two digits pick the delivery area. By residents, the largest town names among the 521 ZIP codes are Decorah, Waukon, Cresco, Postville, West Union and Monona.
The same facility sorts 4 prefixes, 165 ZIP codes in all: 504, 506, 507, 521.
Where are the 521 ZIP codes?
Source: U.S. Census Bureau, 2020 ZCTA cartographic boundaries; ACS 2020-2024 5-year estimates (B19013).
All ZIP codes starting with 521
| County | ||||||
|---|---|---|---|---|---|---|
| 52101 | Decorah | Winneshiek County | 12,706 | 40 | $74k | $273k |
| 52132 | Calmar | Winneshiek County | 1,759 | 28 | $101k | $232k |
| 52133 | Castalia | Winneshiek County | 673 | 15 | $76k | $246k |
| 52134 | Chester | Howard County | 223 | 8 | $63k | $208k |
| 52135 | Clermont | Fayette County | 834 | 30 | $88k | $121k |
| 52136 | Cresco | Howard County | 5,840 | 28 | $71k | $161k |
| 52140 | Dorchester | Allamakee County | 671 | 9 | $72k | $208k |
| 52141 | Elgin | Fayette County | 1,259 | 15 | $65k | $116k |
| 52142 | Fayette | Fayette County | 1,890 | 25 | $57k | $163k |
| 52144 | Fort Atkinson | Winneshiek County | 1,075 | 14 | $85k | $218k |
| 52146 | Harpers Ferry | Allamakee County | 752 | 9 | $62k | $235k |
| 52147 | Hawkeye | Fayette County | 911 | 13 | $77k | $163k |
| 52149 | Highlandville | Winneshiek County | PO Box or unique | – | – | – |
| 52151 | Lansing | Allamakee County | 1,886 | 16 | $70k | $178k |
| 52154 | Lawler | Chickasaw County | 592 | 8 | $58k | $156k |
| 52155 | Lime Springs | Howard County | 1,110 | 11 | $58k | $117k |
| 52156 | Luana | Clayton County | 769 | 16 | $100k | $226k |
| 52157 | McGregor | Clayton County | 1,451 | 26 | $53k | $194k |
| 52158 | Marquette | Clayton County | 290 | 226 | $47k | $161k |
| 52159 | Monona | Allamakee County | 2,398 | 33 | $74k | $165k |
| 52160 | New Albin | Allamakee County | 818 | 18 | $85k | $211k |
| 52161 | Ossian | Winneshiek County | 1,532 | 29 | $88k | $171k |
| 52162 | Postville | Allamakee County | 3,744 | 39 | $64k | $133k |
| 52163 | Protivin | Howard County | 333 | 188 | $78k | $115k |
| 52164 | Randalia | Fayette County | 187 | 7 | $48k | $137k |
| 52165 | Ridgeway | Winneshiek County | 1,098 | 16 | $85k | $292k |
| 52166 | Saint Lucas | Fayette County | 137 | 531 | $111k | $147k |
| 52168 | Spillville | Winneshiek County | 356 | 939 | $54k | $158k |
| 52169 | Wadena | Fayette County | 367 | 11 | $52k | $113k |
| 52170 | Waterville | Allamakee County | 555 | 11 | $73k | $223k |
| 52171 | Waucoma | Fayette County | 1,314 | 16 | $95k | $192k |
| 52172 | Waukon | Allamakee County | 5,877 | 37 | $69k | $166k |
| 52175 | West Union | Fayette County | 3,484 | 41 | $60k | $161k |
Source: U.S. Census Bureau, ACS 2020-2024 5-year estimates; GeoNames postal codes (CC BY 4.0) for codes without a residential area.