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