The calculated distance (air line) between Altstätten and Schaffhausen is approximately 48 miles respectively 77 kilometers.
By car or train, the actual journey to Schaffhausen is certainly longer, as only the direct route (as the crow flies) between Altstätten and Schaffhausen has been calculated here.
Air line (approximately)
77 kilometers
42 nautical miles