The calculated distance (air line) between Surabaya and Singaraja is approximately 171 miles respectively 275 kilometers.
By car or train, the actual journey to Singaraja is certainly longer, as only the direct route (as the crow flies) between Surabaya and Singaraja has been calculated here.