Hannibal, MO
Population 16,825 · Missouri
About Hannibal, MO
Hannibal is a mid-sized city in Missouri with a population of 16,825 residents. The median household income is $54,071 per year, which is near the national average. The median age in Hannibal is 38.3 years.
Housing in Hannibal has a median home value of $126,300 and median monthly rent of $821. Of the 7,746 total housing units, the majority are owner-occupied, with 4,297 owner-occupied and 2,470 renter-occupied units.
The unemployment rate in Hannibal is 4.8% and the poverty rate is 17.3%. 22.3% of residents hold a bachelor's degree or higher. The average commute time is 16 minutes.
Cost of Living in Hannibal, MO
Compared to national averages, Hannibal has a median household income of $54,071 (28% below the national median of $75,149). Home values average $126,300, which is 48% below the national median. Monthly rent at $821 is 29% below the US average of $1,163. Within Missouri, Hannibal's income is 11% below the state average of $61,047, and home values are 16% below the state median of $150,786.
Why Live in Hannibal, MO?
Hannibal offers affordable housing with a median home value of $126,300, below the US average of $244,900, and rent that’s lower than the national average at $821/month, and short commute times averaging just 16 minutes.
Potential considerations include median household income ($54,071) that falls below the national average. However, Hannibal’s smaller community size offers a quieter lifestyle and tight-knit neighborhoods.
Hannibal has a population of 16,825 with a median age of 38.3 years. Compare Hannibal with other cities to see how it stacks up, or explore all cities in Missouri.
Similar Cities Near Hannibal
Cities in Missouri with a similar population size.
| City | Population | Median Income | Home Value | |
|---|---|---|---|---|
| Lemay | 16,431 | $59,026 | $139,100 | Compare |
| Clayton | 17,282 | $128,898 | $799,200 | Compare |
| Poplar Bluff | 16,243 | $42,035 | $109,700 | Compare |
| Sikeston | 16,231 | $53,203 | $158,100 | Compare |
| Kirksville | 17,493 | $48,063 | $145,300 | Compare |
| Lake St. Louis | 17,538 | $123,427 | $375,300 | Compare |
| Grain Valley | 15,967 | $87,266 | $269,800 | Compare |
| Overland | 15,762 | $57,755 | $121,500 | Compare |
Demographics
Racial & Ethnic Composition
Economy & Education
Housing
Other Cities in Missouri
Data source: US Census Bureau ACS 5-Year Estimates. Last updated: 2026-04-05.
Compare Hannibal With Other Cities
Frequently Asked Questions about Hannibal
What is the population of Hannibal, MO?
The population of Hannibal, MO is 16,825 according to the latest Census data.
What is the median household income in Hannibal?
The median household income in Hannibal, MO is $54,071 per year.
What is the median home value in Hannibal?
The median home value in Hannibal, MO is $126,300.
What is the average rent in Hannibal?
The median monthly rent in Hannibal, MO is $821.
What is the unemployment rate in Hannibal?
The unemployment rate in Hannibal, MO is 4.8%.