Hannibal, Ohio

Hannibal: a city in Monroe County, Ohio.

About

Hannibal is a city located in the county of Monroe in the U.S. state of Ohio.

Quick Facts about Hannibal

State Ohio (United States)
County Monroe County
Latitude & Longitude 39.6673,-80.8720
Time Zone America/New_York
Local time 14:08:30 (6th November 2026)
Postal code 43931
Weather 63℉ Chance Light Rain 7-days weather

Geography

Hannibal is located at 39°40'2"N 80°52'19"W (39.6673000, -80.8720400).

Hannibal map

Click "full screen" full screen map icon to open full mode. View satellite images

Weather

63°F
Chance Light Rain
2 to 7 mph W Friday

A chance of rain between 11am and 3pm. Partly sunny, with a high near 63. West wind 2 to 7 mph. Chance of precipitation is 40%. New rainfall amounts l...

7-Day Forecast
Hannibal zip code is 43931. County name: Monroe, County fips: 39111
Bares, Bares Landing, Baresville, Bearsville

Nearby Schools and Colleges

Schools and campuses linked to Hannibal, OH. Select a name to open its map and contact details.

Code Name City ZIP
237145 B M Spurr School of Practical Nursing Glen Dale (WV) 26038

Nearby Transit Stations (2)

Rail and bus stations connected to Hannibal, OH. Select a station to open its map and address details.

Code Name Address Type
PGH Union Station 1100 Liberty Avenue RAIL
COV Connellsville station North Water Street and West Peach Street RAIL

Closest post offices linked to Hannibal.

Post Office Name City ZIP
Hannibal Post Office Hannibal (OH) 43931

Other cities in Monroe County

Cities, towns, neighborhoods & other populated places in Monroe County , OH.

City Name Population Title
Lodi 2,913 Village in Medina County, Ohio
Woodsfield 2,202 Village in Ohio
Mechanicsburg 1,615 Village in Champaign County, Ohio