| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density (/mi²) | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Spirit Lake | 1 | 5,543 | 5,465 | 0.33% | 1,226 | 5 | City |
| Milford | 2 | 3,186 | 3,335 | -0.72% | 1,481 | 2 | City |
| Arnolds Park | 3 | 1,220 | 1,123 | 1.84% | 683 | 2 | City |
| Lake Park | 4 | 1,099 | 1,173 | -1.08% | 696 | 2 | City |
| Okoboji | 5 | 702 | 764 | -1.4% | 400 | 2 | City |
| Orleans | 6 | 488 | 521 | -1.01% | 433 | 1 | City |
| Wahpeton | 7 | 330 | 347 | -0.9% | 275 | 1 | City |
| West Okoboji | 8 | 309 | 309 | 0% | 246 | 1 | City |
| Terril | 9 | 298 | 335 | -1.97% | 549 | 1 | City |
| Superior | 10 | 122 | 133 | -1.61% | 284 | 0 | City |
| Gruver | 11 | 54 | 59 | -1.82% | 425 | 0 | City |
Spirit Lake is the largest city in Dickinson County, with a population of 5,543.
Gruver is the smallest city in Dickinson County, with a population of 54.
There are 11 cities in Dickinson County, Iowa.