Hannibal is a village located in Oswego County, New York. Hannibal has a 2026 population of 538. Hannibal is currently growing at a rate of 0.56% annually but its population has decreased by -0.92% since the most recent census, which recorded a population of 543 in 2020.