Cities in Ohio by population, 2025
Columbus, OH had the highest population of 176 cities in 2025, at 938,396. Cambridge, OH had the lowest, at 10,055. The median was 19,715 and the figure for Ohio was 11.9 million. Source: the U.S. Census Bureau.
Top 40 cities, 2025
Full ranking
| Rank | Cities | 2025 | Change on 2024 |
|---|---|---|---|
| 1 | Columbus, OH | 938,396 | +0.8% |
| 2 | Cleveland, OH | 363,608 | +0.1% |
| 3 | Cincinnati, OH | 314,367 | -0.2% |
| 4 | Toledo, OH | 263,423 | -0.4% |
| 5 | Akron, OH | 189,691 | +0.2% |
| 6 | Dayton, OH | 136,688 | +0.3% |
| 7 | Parma, OH | 78,581 | -0.3% |
| 8 | Canton, OH | 69,001 | -0.2% |
| 9 | Lorain, OH | 65,366 | -0.2% |
| 10 | Hamilton, OH | 64,644 | +0.8% |
| 11 | Youngstown, OH | 58,832 | +0.1% |
| 12 | Springfield, OH | 58,281 | -0.6% |
| 13 | Kettering, OH | 57,396 | +0.3% |
| 14 | Elyria, OH | 53,634 | +0.5% |
| 15 | Middletown, OH | 52,146 | +0.1% |
| 16 | Newark, OH | 51,473 | +0.5% |
| 17 | Cuyahoga Falls, OH | 50,975 | +0.3% |
| 18 | Dublin, OH | 49,094 | -0.3% |
| 19 | Lakewood, OH | 49,027 | -0.4% |
| 20 | Beavercreek, OH | 48,134 | +0.7% |
| 21 | Euclid, OH | 47,962 | -0.3% |
| 22 | Mansfield, OH | 47,381 | -0.4% |
| 23 | Mentor, OH | 47,010 | 0% |
| 24 | Delaware, OH | 46,636 | +2.6% |
| 25 | Strongsville, OH | 45,629 | +0.2% |
| 26 | Grove City, OH | 45,180 | +2.9% |
| 27 | Fairfield, OH | 44,682 | -0.3% |
| 28 | Huber Heights, OH | 43,905 | +0.6% |
| 29 | Cleveland Heights, OH | 43,750 | -0.1% |
| 30 | Reynoldsburg, OH | 43,350 | +1.3% |
| 31 | Lancaster, OH | 41,956 | +0.5% |
| 32 | Findlay, OH | 40,370 | +0.6% |
| 33 | Hilliard, OH | 38,898 | +0.6% |
| 34 | Warren, OH | 38,328 | -0.6% |
| 35 | Westerville, OH | 38,165 | -0.5% |
| 36 | North Ridgeville, OH | 37,786 | +0.9% |
| 37 | Gahanna, OH | 35,986 | +1.4% |
| 38 | Upper Arlington, OH | 35,893 | -0.5% |
| 39 | Mason, OH | 35,834 | -0.2% |
| 40 | Fairborn, OH | 35,754 | +2.2% |
| 41 | Marion, OH | 35,587 | +0.2% |
| 42 | Brunswick, OH | 35,114 | 0% |
| 43 | Lima, OH | 34,695 | -0.3% |
| 44 | Stow, OH | 33,941 | -0% |
| 45 | Westlake, OH | 33,904 | +0.2% |
| 46 | Massillon, OH | 32,168 | +0.3% |
| 47 | North Olmsted, OH | 31,542 | +0.2% |
| 48 | Bowling Green, OH | 31,182 | +1.6% |
| 49 | North Royalton, OH | 30,936 | -0.3% |
| 50 | Marysville, OH | 30,190 | +2.4% |
| 51 | Garfield Heights, OH | 28,790 | -0.4% |
| 52 | Shaker Heights, OH | 28,466 | -0.4% |
| 53 | Kent, OH | 27,737 | +0.5% |
| 54 | Green, OH | 27,553 | +0.4% |
| 55 | Troy, OH | 27,344 | +0.8% |
| 56 | Wooster, OH | 27,115 | +0.4% |
| 57 | Avon Lake, OH | 26,486 | +1% |
| 58 | Xenia, OH | 26,425 | +1.6% |
| 59 | Pickerington, OH | 26,333 | +1.8% |
| 60 | Medina, OH | 25,692 | -0.1% |
| 61 | Avon, OH | 25,611 | +0.7% |
| 62 | Perrysburg, OH | 25,441 | +0.6% |
| 63 | Athens, OH | 25,313 | +1.2% |
| 64 | Centerville, OH | 25,194 | +0.5% |
| 65 | Zanesville, OH | 25,138 | +1.1% |
| 66 | Barberton, OH | 24,748 | +0.7% |
| 67 | Wadsworth, OH | 24,720 | 0% |
| 68 | Riverside, OH | 24,706 | +0.6% |
| 69 | Willoughby, OH | 24,234 | +0.2% |
| 70 | Sandusky, OH | 24,001 | -0.7% |
| 71 | Solon, OH | 23,679 | -0.2% |
| 72 | Trotwood, OH | 23,190 | +0.6% |
| 73 | Hudson, OH | 23,085 | +0.3% |
| 74 | Maple Heights, OH | 22,902 | -0.3% |
| 75 | Oxford, OH | 22,387 | -0.2% |
| 76 | Lebanon, OH | 22,110 | +1.1% |
| 77 | Chillicothe, OH | 21,815 | +0.1% |
| 78 | Alliance, OH | 21,582 | +0.6% |
| 79 | Rocky River, OH | 21,397 | +0.2% |
| 80 | South Euclid, OH | 21,248 | -0% |
| 81 | Piqua, OH | 21,064 | +0.7% |
| 82 | Painesville, OH | 20,660 | 0% |
| 83 | Miamisburg, OH | 20,414 | +0.7% |
| 84 | Parma Heights, OH | 20,327 | -0.3% |
| 85 | Sidney, OH | 20,124 | -1.5% |
| 86 | Forest Park, OH | 20,041 | -0% |
| 87 | Whitehall, OH | 19,805 | -0.5% |
| 88 | Broadview Heights, OH | 19,755 | +0.1% |
| 89 | Oregon, OH | 19,674 | +0.1% |
| 90 | Mayfield Heights, OH | 19,667 | -0.2% |
| 91 | Norwood, OH | 19,658 | +1.1% |
| 92 | Springboro, OH | 19,606 | +0.3% |
| 93 | Twinsburg, OH | 18,939 | -0.1% |
| 94 | Sylvania, OH | 18,883 | 0% |
| 95 | Ashland, OH | 18,730 | -0.1% |
| 96 | Pataskala, OH | 18,529 | +0.5% |
| 97 | Tallmadge, OH | 18,521 | +0.3% |
| 98 | Powell, OH | 18,269 | +6.3% |
| 99 | Brook Park, OH | 18,195 | +0.8% |
| 100 | Niles, OH | 18,116 | -0.5% |
| 101 | Aurora, OH | 18,014 | +0.7% |
| 102 | Steubenville, OH | 17,922 | -0.5% |
| 103 | Berea, OH | 17,920 | 0% |
| 104 | Tiffin, OH | 17,803 | -0.1% |
| 105 | Streetsboro, OH | 17,730 | -0.2% |
| 106 | North Canton, OH | 17,692 | +0.1% |
| 107 | Ashtabula, OH | 17,474 | -0.3% |
| 108 | New Philadelphia, OH | 17,424 | +0.1% |
| 109 | Eastlake, OH | 17,357 | -0.3% |
| 110 | Mount Vernon, OH | 17,287 | +0.4% |
| 111 | Portsmouth, OH | 17,282 | -1% |
| 112 | Norwalk, OH | 17,191 | 0% |
| 113 | Defiance, OH | 17,009 | -0.1% |
| 114 | Fairview Park, OH | 16,748 | -0.3% |
| 115 | Monroe, OH | 15,880 | +0.5% |
| 116 | Bay Village, OH | 15,792 | -0.2% |
| 117 | Fremont, OH | 15,765 | -0.1% |
| 118 | Middleburg Heights, OH | 15,558 | -0.3% |
| 119 | Vandalia, OH | 15,014 | +0.4% |
| 120 | Circleville, OH | 14,634 | +1.1% |
| 121 | Worthington, OH | 14,543 | -0.5% |
| 122 | Washington Court House, OH | 14,375 | -0.2% |
| 123 | Trenton, OH | 14,241 | +1.4% |
| 124 | Willowick, OH | 14,178 | 0% |
| 125 | Bellefontaine, OH | 14,151 | +0.3% |
| 126 | Sharonville, OH | 13,997 | -0% |
| 127 | New Franklin, OH | 13,873 | +0.4% |
| 128 | Brecksville, OH | 13,843 | -0.2% |
| 129 | Harrison, OH | 13,795 | +1.5% |
| 130 | Blue Ash, OH | 13,707 | +0.6% |
| 131 | Beachwood, OH | 13,673 | -0% |
| 132 | Lyndhurst, OH | 13,522 | -0.5% |
| 133 | Maumee, OH | 13,521 | -0.4% |
| 134 | Clayton, OH | 13,397 | +0.5% |
| 135 | Warrensville Heights, OH | 13,353 | -0.2% |
| 136 | Englewood, OH | 13,343 | +0.3% |
| 137 | Loveland, OH | 13,288 | +0.1% |
| 138 | East Cleveland, OH | 13,229 | -0.4% |
| 139 | University Heights, OH | 13,200 | -0.2% |
| 140 | Marietta, OH | 13,053 | -0.4% |
| 141 | Amherst, OH | 12,974 | -0.3% |
| 142 | West Carrollton, OH | 12,963 | +0.4% |
| 143 | Dover, OH | 12,947 | -0% |
| 144 | Fostoria, OH | 12,920 | -0.6% |
| 145 | Wilmington, OH | 12,802 | +1% |
| 146 | Bedford, OH | 12,723 | -0.3% |
| 147 | Greenville, OH | 12,680 | +0.2% |
| 148 | Wickliffe, OH | 12,649 | +0.2% |
| 149 | Bexley, OH | 12,452 | -2.5% |
| 150 | Conneaut, OH | 12,247 | 0% |
| 151 | Macedonia, OH | 12,147 | +0.2% |
| 152 | New Albany, OH | 11,803 | +0.7% |
| 153 | Salem, OH | 11,655 | -0.2% |
| 154 | Franklin, OH | 11,647 | -0.3% |
| 155 | Bucyrus, OH | 11,631 | +0.9% |
| 156 | Norton, OH | 11,493 | +0.7% |
| 157 | Seven Hills, OH | 11,464 | -0.2% |
| 158 | Van Wert, OH | 11,200 | +0.7% |
| 159 | Coshocton, OH | 11,169 | +0.5% |
| 160 | Urbana, OH | 11,140 | +0.2% |
| 161 | Ravenna, OH | 11,136 | -0.4% |
| 162 | Springdale, OH | 11,134 | -0.2% |
| 163 | Brooklyn, OH | 11,072 | +0.2% |
| 164 | Celina, OH | 10,936 | +0.2% |
| 165 | Montgomery, OH | 10,922 | +0.1% |
| 166 | Heath, OH | 10,859 | +0.8% |
| 167 | London, OH | 10,813 | +0.8% |
| 168 | Vermilion, OH | 10,695 | -0.2% |
| 169 | Bedford Heights, OH | 10,691 | -0.3% |
| 170 | Tipp City, OH | 10,644 | +0.7% |
| 171 | Reading, OH | 10,491 | -0% |
| 172 | Richmond Heights, OH | 10,475 | -0% |
| 173 | Galion, OH | 10,370 | +0.8% |
| 174 | Ironton, OH | 10,148 | -0.3% |
| 175 | Canal Winchester, OH | 10,058 | +0.8% |
| 176 | Cambridge, OH | 10,055 | 0% |
Other periods
About this ranking
Resident population. Spain and the EU: 1 January, with Spanish figures from the official municipal register (Padrón). Norway: Statistics Norway, 1 January. United States: Census Bureau population estimates for 1 July. United Kingdom regions and local authorities: Office for National Statistics estimates for 30 June. Other countries and the World: World Bank mid-year estimates, which count all residents regardless of legal status or citizenship.
The World Bank series exists for every country, so use it (through compare) to rank countries on one basis.
Every value in the ranking comes from the same publisher and the same period, so the cities are compared on one definition. Equal values share a rank.
How to cite
U.S. Census Bureau. Annual estimates of the resident population for incorporated places, 1 July (Population Estimates Program, subcounty totals). https://www2.census.gov/programs-surveys/popest/datasets/2020-2025/. Retrieved 2026-10-12.
Use this data in your AI agent
Invokely serves this figure to AI assistants through MCP and to code through a REST API, with the source and citation attached. Ask your assistant:
Rank Cities in Ohio by population using official data, and cite the source.
rank_places {"indicator":"population","level":"municipality","within":"Ohio","limit":10}
GET https://invokely.ai/api/v1/rank?indicator=population&level=municipality&within=Ohio&limit=10
Questions
Which city has the highest population?
Columbus, OH, with 938,396 in 2025, according to the U.S. Census Bureau.
Which city has the lowest population?
Cambridge, OH, with 10,055 in 2025.
Where does this ranking come from?
Every value comes from one source and one period, so the places are comparable: U.S. Census Bureau, Annual estimates of the resident population for incorporated places, 1 July (Population Estimates Program, subcounty totals). Retrieved 2026-10-12.