According to the United States Census Bureau, the town has a total area of , of which is land and , or 0.23%, is water [REF].
The south town line, marked by Cattaraugus Creek, is the northern border of Cattaraugus County.