Watsontown is a borough in Northumberland County, Pennsylvania, United States. The population was 2,255 at the 2000 census. It was named for John Watson, a local landowner.
Watsontown is located at 41°5′7″N 76°51′48″W / 41.08528°N 76.86333°W / 41.08528; -76.86333 (41.085319, -76.863325).
According to the United States Census Bureau, the borough has a total area of 0.9 square miles (2.4 km²), of which, 0.7 square miles (1.8 km²) of it is land and 0.2 square miles (0.6 km²) of it (24.47%) is water.