The calculated distance (air line) between Richterswil and Schaffhausen is approximately 34 miles respectively 55 kilometers.
By car or train, the actual journey to Schaffhausen is certainly longer, as only the direct route (as the crow flies) between Richterswil and Schaffhausen has been calculated here.
Air line (approximately)
55 kilometers
30 nautical miles