10 cities
| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Harlan | 1 | 4,901 | 4,891 | 0.04% | 1,109 | 4 | City |
| Elk Horn | 2 | 646 | 601 | 1.25% | 881 | 1 | City |
| Earling | 3 | 394 | 394 | 0% | 627 | 1 | City |
| Irwin | 4 | 320 | 320 | 0% | 546 | 1 | City |
| Defiance | 5 | 247 | 249 | 0% | 662 | 0 | City |
| Panama | 6 | 234 | 233 | 0% | 807 | 0 | City |
| Portsmouth | 7 | 187 | 186 | 0% | 609 | 0 | City |
| Westphalia | 8 | 134 | 130 | 0.75% | 1,367 | 0 | City |
| Tennant | 9 | 85 | 79 | 1.19% | 118 | 1 | City |
| Kirkman | 10 | 61 | 58 | 1.67% | 237 | 0 | City |
Harlan is the largest city in Shelby County, with a population of 4,901.
Kirkman is the smallest city in Shelby County, with a population of 61.
There are 10 cities in Shelby County, Iowa.