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