According to the United States Census Bureau, the town has a total area of , of which, of it is land and of it (0.24%) is water.
The north town line is the border of Schenectady County and the east town line is the border of Albany County.