Williamstown is a town in Oswego County, New York, United States. The population was 1,277 at the 2010 census.
The east town line is the border of Oneida County, New York.
According to the United States Census Bureau, the town has a total area of 39.2 square miles (102 km), of which, 38.7 square miles (100 km) of it is land and 0.5 square miles (1.3 km) of it (1.20%) is water.
As of the census of 2000, there were 1,350 people, 449 households, and 338 families residing in the town. The population density was 34.9 people per square mile (13.5/km²). There were 634 housing units at an average density of 16.4 per square mile (6.3/km²). The racial makeup of the town was 98.07% White, 0.37% African American, 0.15% Native American, 0.37% Asian, 0.30% from other races, and 0.74% from two or more races. Hispanic or Latino of any race were 1.19% of the population.
There were 449 households out of which 43.0% had children under the age of 18 living with them, 55.9% were married couples living together, 11.8% had a female householder with no husband present, and 24.5% were non-families. 19.8% of all households were made up of individuals and 7.3% had someone living alone who was 65 years of age or older. The average household size was 3.01 and the average family size was 3.41.
In the town, the population was spread out with 34.6% under the age of 18, 9.2% from 18 to 24, 28.8% from 25 to 44, 20.0% from 45 to 64, and 7.4% who were 65 years of age or older. The median age was 31 years. For every 100 females, there were 95.1 males. For every 100 females age 18 and over, there were 97.5 males.
The median income for a household in the town was $31,509, and the median income for a family was $34,688. Males had a median income of $32,566 versus $21,375 for females. The per capita income for the town was $12,599. About 13.5% of families and 14.2% of the population were below the poverty line, including 13.8% of those under age 18 and 13.9% of those age 65 or over.