EN RO

Distance from Surabaya to Shenzhen

Straight line

3,299 km
2,050 mi · 1,781 NM

By road

…
calculating

Travel time

…
flight ≈ 4 h 37 min

Direction

N 2°
initial bearing

Open in the calculator (stops, directions, fuel cost) → Shenzhen → Surabaya

How far is Surabaya from Shenzhen?

Surabaya (Indonesia) and Shenzhen (China) are very far apart: 3,299 km in a straight line, that is 2,050 miles or 1,781 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

From Surabaya, Shenzhen lies to the north (initial bearing 2°). The route crosses from Indonesia into China. The halfway point is at 7.6487°, 113.3860°.

A direct flight would take about 4 h 37 min (800 km/h cruise plus take-off and landing). The road distance and driving time are calculated on the map from OpenStreetMap roads.

Frequently asked questions

How far is Surabaya from Shenzhen?

The straight-line distance between Surabaya and Shenzhen is 3,299 km (2,050 miles). The road distance is longer and is calculated on the map.

In which direction is Shenzhen from Surabaya?

Shenzhen is to the north of Surabaya, at an initial bearing of 2°.

How long is the flight from Surabaya to Shenzhen?

A direct flight would take about 4 h 37 min at an average cruising speed of 800 km/h.

How is the distance calculated?

The straight-line distance is computed on the WGS84 ellipsoid with the Vincenty formula, accurate to the metre. The road distance comes from OpenStreetMap roads.