Williamstown is located in Dauphin county Pennsylvania with a geographic area of 0.3 square miles. The total population in Williamstown is 1,172 with 44.3% male and 55.7% female. Children under age 5 represent 3.7% of the population, under age 18 equal 22.3% of the population and over age 65 is 18.1% of the population. The median household income is $49,444, per capita income is $22,902. There are a total of 500 housing units with 62.2% owner occupied. Education includes 50.0% of residents that are high school graduates and 14.4% with a bachelor's degree or higher. The average temperature in Williamstown in the summer is 73 degrees, and in the winter 33 degrees.