Ohio · 254 places of 5,000+
Largest cities in Ohio by population
Short answer
- Largest
- 933,263
- Places 5,000+
- 254
- 100,000+
- 6
The 20 largest
Columbus leads with 933,263 residents, 2.6 times the 365,379 of second-place Cleveland. The ten largest places hold 2,483,470 people, 21% of the state's 11,883,304. 6 places have 100,000 or more.
The median place of 5,000+ is New Franklin at 13,859. Within the top ten, Columbus grew most since July 2020 (+3.0%) and Parma least (-2.0%). 29 of the 254 places cross a county line; their totals include every county part.
- 01Columbus933,263
- 02Cleveland365,379
- 03Cincinnati314,915
- 04Toledo265,638
- 05Akron189,664
- 06Dayton136,346
- 07Parma79,350
- 08Canton69,211
- 09Lorain65,751
- 10Hamilton63,953
- 11Youngstown59,123
- 12Springfield58,138
- 13Kettering57,028
- 14Elyria53,604
- 15Middletown52,291
- 16Newark51,424
- 17Cuyahoga Falls50,979
- 18Lakewood49,517
- 19Dublin49,456
- 20Euclid48,421
Dots: the 20 places in the chart. Orange pin: Columbus, ranked first.
All 254 places of 5,000+ ranked
| # | Place | 2024 | Since 2020 | County |
|---|---|---|---|---|
| 1 | Columbus | 933,263 | +3.0% | Franklin County +2 |
| 2 | Cleveland | 365,379 | -1.7% | Cuyahoga County |
| 3 | Cincinnati | 314,915 | +1.7% | Hamilton County |
| 4 | Toledo | 265,638 | -1.7% | Lucas County |
| 5 | Akron | 189,664 | -0.3% | Summit County |
| 6 | Dayton | 136,346 | -0.9% | Montgomery County |
| 7 | Parma | 79,350 | -2.0% | Cuyahoga County |
| 8 | Canton | 69,211 | -2.0% | Stark County |
| 9 | Lorain | 65,751 | +0.8% | Lorain County |
| 10 | Hamilton | 63,953 | +0.8% | Butler County |
| 11 | Youngstown | 59,123 | -1.3% | Mahoning County +1 |
| 12 | Springfield | 58,138 | -0.8% | Clark County |
| 13 | Kettering | 57,028 | -1.4% | Montgomery County +1 |
| 14 | Elyria | 53,604 | +1.7% | Lorain County |
| 15 | Middletown | 52,291 | +2.5% | Butler County +1 |
| 16 | Newark | 51,424 | +2.8% | Licking County |
| 17 | Cuyahoga Falls | 50,979 | -0.1% | Summit County |
| 18 | Lakewood | 49,517 | -2.6% | Cuyahoga County |
| 19 | Dublin | 49,456 | +0.2% | Franklin County +2 |
| 20 | Euclid | 48,421 | -2.3% | Cuyahoga County |
| 21 | Beavercreek | 48,012 | +3.0% | Greene County |
| 22 | Mansfield | 47,593 | +0.1% | Richland County |
| 23 | Mentor | 47,113 | -0.7% | Lake County |
| 24 | Delaware | 46,521 | +11.5% | Delaware County |
| 25 | Strongsville | 45,768 | -1.4% | Cuyahoga County |
| 26 | Fairfield | 45,094 | +0.4% | Butler County |
| 27 | Cleveland Heights | 44,064 | -2.6% | Cuyahoga County |
| 28 | Grove City | 44,019 | +6.5% | Franklin County |
| 29 | Huber Heights | 43,590 | +0.3% | Montgomery County +1 |
| 30 | Reynoldsburg | 42,897 | +4.5% | Franklin County +2 |
| 31 | Lancaster | 41,671 | +2.6% | Fairfield County |
| 32 | Findlay | 40,343 | +0.2% | Hancock County |
| 33 | Hilliard | 38,832 | +4.4% | Franklin County |
| 34 | Warren | 38,683 | -1.2% | Trumbull County |
| 35 | Westerville | 38,612 | -1.6% | Franklin County +1 |
| 36 | North Ridgeville | 37,504 | +5.8% | Lorain County |
| 37 | Upper Arlington | 36,140 | -1.7% | Franklin County |
| 38 | Mason | 36,046 | +3.3% | Warren County |
| 39 | Marion | 35,576 | -1.3% | Marion County |
| 40 | Gahanna | 35,544 | -0.5% | Franklin County |
| 41 | Brunswick | 35,166 | -0.7% | Medina County |
| 42 | Fairborn | 35,105 | +1.5% | Greene County |
| 43 | Lima | 34,690 | -2.2% | Allen County |
| 44 | Westlake | 34,232 | +0.1% | Cuyahoga County |
| 45 | Stow | 34,101 | -1.0% | Summit County |
| 46 | Massillon | 32,750 | +2.2% | Stark County |
| 47 | North Olmsted | 31,690 | -2.1% | Cuyahoga County |
| 48 | North Royalton | 30,894 | -1.2% | Cuyahoga County |
| 49 | Bowling Green | 30,463 | -1.1% | Wood County |
| 50 | Marysville | 29,276 | +13.9% | Union County |
| 51 | Garfield Heights | 29,014 | -2.4% | Cuyahoga County |
| 52 | Shaker Heights | 28,689 | -2.4% | Cuyahoga County |
| 53 | Kent | 27,720 | -1.6% | Portage County |
| 54 | Green | 27,476 | +0.1% | Summit County |
| 55 | Troy | 27,122 | +2.8% | Miami County |
| 56 | Wooster | 26,982 | -0.9% | Wayne County |
| 57 | Avon Lake | 26,342 | +4.2% | Lorain County |
| 58 | Centerville | 26,311 | +8.8% | Montgomery County +1 |
| 59 | Xenia | 26,067 | +2.4% | Greene County |
| 60 | Pickerington | 25,814 | +11.1% | Fairfield County +1 |
| 61 | Medina | 25,757 | -1.2% | Medina County |
| 62 | Avon | 25,573 | +2.6% | Lorain County |
| 63 | Perrysburg | 25,313 | +1.1% | Wood County |
| 64 | Zanesville | 24,916 | +0.6% | Muskingum County |
| 65 | Athens | 24,824 | +4.2% | Athens County |
| 66 | Wadsworth | 24,753 | +2.8% | Medina County |
| 67 | Barberton | 24,624 | -2.0% | Summit County |
| 68 | Riverside | 24,472 | -0.0% | Montgomery County |
| 69 | Willoughby | 24,208 | +1.4% | Lake County |
| 70 | Sandusky | 24,174 | -3.6% | Erie County |
| 71 | Solon | 23,875 | -1.4% | Cuyahoga County |
| 72 | Maple Heights | 23,081 | -2.3% | Cuyahoga County |
| 73 | Hudson | 23,073 | +0.0% | Summit County |
| 74 | Trotwood | 23,073 | -0.0% | Montgomery County |
| 75 | Oxford | 22,585 | -2.0% | Butler County |
| 76 | Lebanon | 21,995 | +5.3% | Warren County |
| 77 | Chillicothe | 21,769 | -1.2% | Ross County |
| 78 | Alliance | 21,523 | -0.5% | Stark County +1 |
| 79 | Rocky River | 21,468 | -1.2% | Cuyahoga County |
| 80 | South Euclid | 21,363 | -2.2% | Cuyahoga County |
| 81 | Piqua | 20,940 | +2.6% | Miami County |
| 82 | Painesville | 20,660 | +1.8% | Lake County |
| 83 | Parma Heights | 20,524 | -1.4% | Cuyahoga County |
| 84 | Sidney | 20,392 | -0.8% | Shelby County |
| 85 | Miamisburg | 20,253 | +1.7% | Montgomery County |
| 86 | Forest Park | 20,033 | -0.7% | Hamilton County |
| 87 | Whitehall | 19,940 | -0.8% | Franklin County |
| 88 | Mayfield Heights | 19,886 | -2.1% | Cuyahoga County |
| 89 | Broadview Heights | 19,792 | -0.7% | Cuyahoga County |
| 90 | Oregon | 19,726 | -1.0% | Lucas County |
| 91 | Springboro | 19,646 | +2.7% | Warren County +1 |
| 92 | Twinsburg | 19,504 | +1.3% | Summit County |
| 93 | Norwood | 19,455 | +2.3% | Hamilton County |
| 94 | Sylvania | 19,102 | +0.3% | Lucas County |
| 95 | Ashland | 18,770 | -2.4% | Ashland County |
| 96 | Pataskala | 18,493 | +3.2% | Licking County |
| 97 | Tallmadge | 18,412 | +0.0% | Summit County +1 |
| 98 | Niles | 18,238 | -1.0% | Trumbull County |
| 99 | Brook Park | 18,142 | -2.2% | Cuyahoga County |
| 100 | Steubenville | 18,029 | -0.7% | Jefferson County |
| 101 | Berea | 17,998 | -2.7% | Cuyahoga County |
| 102 | Aurora | 17,985 | +4.2% | Portage County |
| 103 | Streetsboro | 17,877 | +3.2% | Portage County |
| 104 | Ashtabula | 17,775 | -1.1% | Ashtabula County |
| 105 | Tiffin | 17,729 | -1.7% | Seneca County |
| 106 | North Canton | 17,677 | -0.8% | Stark County |
| 107 | Portsmouth | 17,489 | -3.9% | Scioto County |
| 108 | Eastlake | 17,423 | -1.3% | Lake County |
| 109 | New Philadelphia | 17,378 | -1.7% | Tuscarawas County |
| 110 | Mount Vernon | 17,329 | +1.6% | Knox County |
| 111 | Defiance | 17,180 | +0.8% | Defiance County |
| 112 | Norwalk | 17,172 | +0.8% | Huron County |
| 113 | Fairview Park | 16,860 | -2.4% | Cuyahoga County |
| 114 | Monroe | 15,950 | +3.2% | Butler County +1 |
| 115 | Bay Village | 15,903 | -1.5% | Cuyahoga County |
| 116 | Fremont | 15,814 | -0.5% | Sandusky County |
| 117 | Middleburg Heights | 15,672 | -2.0% | Cuyahoga County |
| 118 | Vandalia | 15,013 | -1.2% | Montgomery County |
| 119 | Worthington | 14,649 | -0.9% | Franklin County |
| 120 | Powell | 14,613 | +2.5% | Delaware County |
| 121 | Washington Court House | 14,446 | +0.0% | Fayette County |
| 122 | Circleville | 14,433 | +3.4% | Pickaway County |
| 123 | Willowick | 14,159 | -0.5% | Lake County |
| 124 | Trenton | 14,131 | +8.1% | Butler County |
| 125 | Bellefontaine | 14,100 | -0.1% | Logan County |
| 126 | Sharonville | 14,040 | -0.4% | Hamilton County +1 |
| 127 | Brecksville | 13,951 | +2.6% | Cuyahoga County |
| 128 | New Franklin | 13,859 | -0.0% | Summit County |
| 129 | Beachwood | 13,820 | -1.4% | Cuyahoga County |
| 130 | Lyndhurst | 13,700 | -2.3% | Cuyahoga County |
| 131 | Maumee | 13,625 | -1.7% | Lucas County |
| 132 | Blue Ash | 13,616 | +1.6% | Hamilton County |
| 133 | Harrison | 13,526 | +7.1% | Hamilton County |
| 134 | Warrensville Heights | 13,450 | -2.1% | Cuyahoga County |
| 135 | East Cleveland | 13,402 | -2.6% | Cuyahoga County |
| 136 | Clayton | 13,296 | -0.1% | Montgomery County |
| 137 | Englewood | 13,282 | -1.4% | Montgomery County |
| 138 | Loveland | 13,277 | -0.2% | Hamilton County +2 |
| 139 | University Heights | 13,265 | -4.5% | Cuyahoga County |
| 140 | Fostoria | 13,063 | +0.1% | Seneca County +2 |
| 141 | Amherst | 13,048 | +2.5% | Lorain County |
| 142 | Marietta | 13,039 | -2.4% | Washington County |
| 143 | Dover | 12,946 | -1.8% | Tuscarawas County |
| 144 | West Carrollton | 12,911 | -1.4% | Montgomery County |
| 145 | Bedford | 12,834 | -2.2% | Cuyahoga County |
| 146 | Bexley | 12,793 | -8.0% | Franklin County |
| 147 | Greenville | 12,701 | -0.8% | Darke County |
| 148 | Wickliffe | 12,659 | -0.1% | Lake County |
| 149 | Wilmington | 12,639 | -0.2% | Clinton County |
| 150 | Conneaut | 12,357 | +0.4% | Ashtabula County |
| 151 | Macedonia | 12,139 | -0.3% | Summit County |
| 152 | Franklin | 11,758 | +0.6% | Warren County |
| 153 | Salem | 11,685 | -1.6% | Columbiana County +1 |
| 154 | New Albany | 11,604 | +4.8% | Franklin County +1 |
| 155 | Bucyrus | 11,567 | -1.0% | Crawford County |
| 156 | Seven Hills | 11,560 | -1.3% | Cuyahoga County |
| 157 | Norton | 11,423 | -2.0% | Summit County +1 |
| 158 | Ravenna | 11,236 | -0.7% | Portage County |
| 159 | Urbana | 11,211 | +0.2% | Champaign County |
| 160 | Springdale | 11,183 | +1.6% | Hamilton County |
| 161 | Van Wert | 11,123 | +0.1% | Van Wert County |
| 162 | Coshocton | 11,114 | +0.6% | Coshocton County |
| 163 | Brooklyn | 11,072 | -2.3% | Cuyahoga County |
| 164 | Montgomery | 10,952 | +0.9% | Hamilton County |
| 165 | Celina | 10,945 | +0.1% | Mercer County |
| 166 | Heath | 10,822 | +3.4% | Licking County |
| 167 | Bedford Heights | 10,791 | -1.9% | Cuyahoga County |
| 168 | London | 10,743 | +4.6% | Madison County |
| 169 | Vermilion | 10,733 | +0.7% | Lorain County +1 |
| 170 | Tipp City | 10,596 | +2.9% | Miami County |
| 171 | Richmond Heights | 10,552 | -2.1% | Cuyahoga County |
| 172 | Reading | 10,482 | -1.0% | Hamilton County |
| 173 | Galion | 10,304 | -1.3% | Crawford County |
| 174 | Ironton | 10,147 | -3.8% | Lawrence County |
| 175 | Canal Winchester | 10,060 | +9.4% | Franklin County +1 |
| 176 | Cambridge | 10,036 | -0.7% | Guernsey County |
| 177 | Willoughby Hills | 9,986 | -0.3% | Lake County |
| 178 | Struthers | 9,891 | -1.2% | Mahoning County |
| 179 | Wapakoneta | 9,817 | -1.4% | Auglaize County |
| 180 | Louisville | 9,793 | +3.0% | Stark County |
| 181 | Sunbury | 9,705 | +44.3% | Delaware County |
| 182 | East Liverpool | 9,651 | -2.8% | Columbiana County |
| 183 | North College Hill | 9,552 | -1.0% | Hamilton County |
| 184 | Madeira | 9,542 | +0.5% | Hamilton County |
| 185 | Girard | 9,454 | -1.3% | Trumbull County |
| 186 | Oakwood | 9,400 | -1.7% | Montgomery County |
| 187 | Shelby | 9,238 | -0.5% | Richland County |
| 188 | Grandview Heights | 9,184 | +11.4% | Franklin County |
| 189 | Sheffield Lake | 9,035 | +0.9% | Lorain County |
| 190 | Wyoming | 8,781 | +0.3% | Hamilton County |
| 191 | Napoleon | 8,724 | -1.5% | Henry County |
| 192 | Olmsted Falls | 8,676 | +0.3% | Cuyahoga County |
| 193 | Cheviot | 8,640 | -1.3% | Hamilton County |
| 194 | Highland Heights | 8,612 | -1.1% | Cuyahoga County |
| 195 | Bryan | 8,601 | -1.4% | Williams County |
| 196 | Oberlin | 8,587 | +0.3% | Lorain County |
| 197 | Orrville | 8,442 | -0.2% | Wayne County |
| 198 | St. Marys | 8,376 | -0.3% | Auglaize County |
| 199 | Eaton | 8,337 | -0.6% | Preble County |
| 200 | Bellevue | 8,166 | -0.8% | Sandusky County +2 |
| 201 | Kenton | 7,857 | -1.2% | Hardin County |
| 202 | Fairlawn | 7,773 | +0.9% | Summit County |
| 203 | Campbell | 7,751 | -1.1% | Mahoning County |
| 204 | Canfield | 7,628 | -0.7% | Mahoning County |
| 205 | Hubbard | 7,565 | -0.7% | Trumbull County |
| 206 | Bellbrook | 7,532 | +3.0% | Greene County |
| 207 | Independence | 7,518 | -0.9% | Cuyahoga County |
| 208 | Wauseon | 7,455 | -1.4% | Fulton County |
| 209 | Obetz | 7,306 | +32.3% | Franklin County |
| 210 | Logan | 7,142 | -2.1% | Hocking County |
| 211 | Mentor-on-the-Lake | 7,106 | -0.3% | Lake County |
| 212 | Union | 7,076 | +2.6% | Montgomery County +1 |
| 213 | Delphos | 7,074 | -0.6% | Allen County +1 |
| 214 | Cortland | 7,069 | -0.4% | Trumbull County |
| 215 | South Lebanon | 6,923 | +7.1% | Warren County |
| 216 | Mount Healthy | 6,916 | -1.0% | Hamilton County |
| 217 | Kirtland | 6,914 | -0.3% | Lake County |
| 218 | Pepper Pike | 6,881 | +1.0% | Cuyahoga County |
| 219 | Columbiana | 6,773 | +3.0% | Columbiana County +1 |
| 220 | Ontario | 6,648 | -0.3% | Richland County |
| 221 | Huron | 6,630 | -3.8% | Erie County |
| 222 | Upper Sandusky | 6,627 | -0.9% | Wyandot County |
| 223 | Moraine | 6,603 | +2.5% | Montgomery County |
| 224 | Hillsboro | 6,599 | +2.3% | Highland County |
| 225 | Belpre | 6,588 | -1.9% | Washington County |
| 226 | Milford | 6,433 | -2.1% | Clermont County +1 |
| 227 | Clyde | 6,360 | +0.8% | Sandusky County |
| 228 | Rossford | 6,353 | +0.8% | Wood County |
| 229 | Granville | 6,308 | +5.9% | Licking County |
| 230 | Jackson | 6,226 | -0.5% | Jackson County |
| 231 | Rittman | 6,119 | -0.3% | Wayne County +1 |
| 232 | Willard | 6,106 | -1.5% | Huron County |
| 233 | The Village of Indian Hill | 6,090 | +0.1% | Hamilton County |
| 234 | Martins Ferry | 6,050 | -3.0% | Belmont County |
| 235 | Waterville | 6,022 | +0.1% | Lucas County |
| 236 | Brookville | 5,946 | -0.7% | Montgomery County |
| 237 | Port Clinton | 5,915 | -1.7% | Ottawa County |
| 238 | Geneva | 5,871 | -0.8% | Ashtabula County |
| 239 | Groveport | 5,867 | -2.3% | Franklin County |
| 240 | Germantown | 5,863 | +1.0% | Montgomery County |
| 241 | Carlisle | 5,855 | +6.3% | Warren County +1 |
| 242 | Grafton | 5,804 | -2.2% | Lorain County |
| 243 | New Carlisle | 5,511 | -0.9% | Clark County |
| 244 | Wellston | 5,493 | +1.4% | Jackson County |
| 245 | Deer Park | 5,437 | +0.3% | Hamilton County |
| 246 | Canal Fulton | 5,382 | +1.1% | Stark County |
| 247 | Johnstown | 5,356 | +3.1% | Licking County |
| 248 | Reminderville | 5,345 | -1.7% | Summit County |
| 249 | Ada | 5,293 | -0.7% | Hardin County |
| 250 | Chardon | 5,233 | -0.2% | Geauga County |
| 251 | Northwood | 5,222 | +1.1% | Wood County |
| 252 | Toronto | 5,187 | -2.1% | Jefferson County |
| 253 | Uhrichsville | 5,122 | -2.6% | Tuscarawas County |
| 254 | Whitehouse | 5,083 | +1.6% | Lucas County |
Questions people ask
What is the largest city in Ohio?
Columbus, with 933,263 residents on July 1, 2024 in the Census Vintage 2024 estimates.
What is the second largest city in Ohio?
Cleveland, with 365,379 residents, 567,884 fewer than Columbus.
How many cities in Ohio have more than 100,000 people?
6: Columbus, Cleveland, Cincinnati, Toledo, Akron, Dayton.
How is city size measured here?
By the Census Bureau's July 1, 2024 population estimate for each incorporated place, inside its legal city limits. Metro areas and census-designated places are not ranked.
Sources and data as of
Data as of: Census Vintage 2024 population estimates, 2024 Gazetteer land area and internal points, SAIPE 2023 median household income.
How every number is computed: methodology. Spotted a wrong figure? Report an error.