| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density (/mi²) | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Selmer | 1 | 4,607 | 4,473 | 0.7% | 482 | 10 | Town |
| Adamsville | 2 | 2,079 | 2,083 | -0.1% | 445 | 5 | Town |
| Eastview | 3 | 776 | 766 | 0.13% | 152 | 5 | Town |
| Bethel Springs | 4 | 757 | 745 | 0.13% | 339 | 2 | Town |
| Michie | 5 | 670 | 658 | 0.15% | 119 | 6 | Town |
| Guys | 6 | 420 | 416 | 0% | 37 | 11 | Town |
| Stantonville | 7 | 344 | 335 | 0.29% | 305 | 1 | Town |
| Ramer | 8 | 326 | 327 | -0.31% | 182 | 2 | City |
| Finger | 9 | 279 | 276 | 0% | 178 | 2 | City |
| Milledgeville | 10 | 276 | 270 | 0.36% | 172 | 2 | Town |
Selmer is the largest city in McNairy County, with a population of 4,607.
Milledgeville is the smallest city in McNairy County, with a population of 276.
There are 10 cities in McNairy County, Tennessee.