EN RO

Distance from Shanghai to Shenzhen

Straight line

1,209 km
751 mi · 653 NM

By road

1,400 km
870 mi

Travel time

16 h 3 min
flight ≈ 2 h 1 min

Direction

SW 219°
initial bearing

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

How far is Shanghai from Shenzhen?

Shanghai (China) and Shenzhen (China) are quite far apart: 1,209 km in a straight line, that is 751 miles or 653 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

By road, Shanghai to Shenzhen is 1,400 km (870 miles), about 16 h 3 min by car on the fastest route, without traffic or stops. The road is 16% longer than the straight line.

From Shanghai, Shenzhen lies to the south-west (initial bearing 219°). Both cities are in China. The halfway point is at 26.9319°, 117.6209°.

A direct flight would take about 2 h 1 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 Shanghai from Shenzhen?

By road it is 1,400 km (870 miles) from Shanghai to Shenzhen; in a straight line it is 1,209 km (751 miles).

How long is the drive from Shanghai to Shenzhen?

About 16 h 3 min on the fastest route (1,400 km), without traffic or stops.

In which direction is Shenzhen from Shanghai?

Shenzhen is to the south-west of Shanghai, at an initial bearing of 219°.

How long is the flight from Shanghai to Shenzhen?

A direct flight would take about 2 h 1 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.