Hamilton Township is in central Franklin County and is bordered to the northeast by the borough of Chambersburg, the county seat.
According to the United States Census Bureau, the township has a total area of , all of it land [REF].