Halifax Township is in northwestern Dauphin County and is bordered by the Susquehanna River to the northwest, Berry Mountain to the north, and Peters Mountain to the south.
According to the United States Census Bureau, the township has a total area of , of which is land and , or 12.99%, is water [REF].