Canaan is a town in Essex County, Vermont, United States. The population was 896 at the 2020 census. Canaan contains the village of Beecher Falls, located at the confluence of the Connecticut River and Halls Stream. It is part of the Berlin, NH-VT Micropolitan Statistical Area.