20 cities
| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Shawnee | 1 | 12,550 | 12,512 | 0.24% | 433 | 29 | Township |
| Pike | 2 | 6,712 | 6,681 | 0.12% | 210 | 32 | Township |
| Thorn | 3 | 4,799 | 4,555 | 0.84% | 129 | 37 | Township |
| Reading | 4 | 4,486 | 4,356 | 0.63% | 89 | 50 | Township |
| New Lexington | 5 | 4,477 | 4,434 | 0.16% | 2,299 | 2 | Village |
| Crooksville | 6 | 2,390 | 2,422 | -0.21% | 1,473 | 2 | Village |
| Bearfield | 7 | 1,484 | 1,478 | 0.2% | 54 | 27 | Township |
| Somerset | 8 | 1,484 | 1,481 | 0.07% | 1,274 | 1 | Village |
| Somerset | 9 | 1,209 | 1,244 | -0.33% | 35 | 35 | Township |
| Thornville | 10 | 1,098 | 1,083 | 0.27% | 2,064 | 1 | Village |
| Salt Lick | 11 | 1,086 | 1,083 | 0.18% | 52 | 21 | Township |
| Coal | 12 | 950 | 939 | 0.42% | 69 | 14 | Township |
| Pleasant | 13 | 868 | 868 | 0.12% | 54 | 16 | Township |
| Junction City | 14 | 723 | 723 | 0% | 1,124 | 1 | Village |
| Monday Creek | 15 | 667 | 675 | -0.15% | 26 | 25 | Township |
| New Straitsville | 16 | 647 | 653 | -0.15% | 498 | 1 | Village |
| Shawnee | 17 | 501 | 506 | -0.2% | 223 | 2 | Village |
| Corning | 18 | 481 | 489 | -0.21% | 1,119 | 0 | Village |
| Glenford | 19 | 161 | 166 | -0.62% | 1,425 | 0 | Village |
| Hemlock | 20 | 147 | 147 | 0% | 395 | 0 | Village |
Shawnee is the largest city in Perry County, with a population of 12,550.
Hemlock is the smallest city in Perry County, with a population of 147.
There are 20 cities in Perry County, Ohio.