EN RO

Distance from Shanghai to Bangkok

Straight line

2,886 km
1,793 mi · 1,558 NM

By road

3,569 km
2,217 mi

Travel time

41 h 58 min
flight ≈ 4 h 6 min

Direction

SW 232°
initial bearing

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

How far is Shanghai from Bangkok?

Shanghai (China) and Bangkok (Thailand) are very far apart: 2,886 km in a straight line, that is 1,793 miles or 1,558 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

By road, Shanghai to Bangkok is 3,569 km (2,217 miles), about 41 h 58 min by car on the fastest route, without traffic or stops. The road is 24% longer than the straight line.

From Shanghai, Bangkok lies to the south-west (initial bearing 232°). The route crosses from China into Thailand. The halfway point is at 22.8292°, 110.3058°.

A direct flight would take about 4 h 6 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 Bangkok?

By road it is 3,569 km (2,217 miles) from Shanghai to Bangkok; in a straight line it is 2,886 km (1,793 miles).

How long is the drive from Shanghai to Bangkok?

About 41 h 58 min on the fastest route (3,569 km), without traffic or stops.

In which direction is Bangkok from Shanghai?

Bangkok is to the south-west of Shanghai, at an initial bearing of 232°.

How long is the flight from Shanghai to Bangkok?

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