EN RO

Distance from Bangkok to Shanghai

Straight line

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

By road

3,562 km
2,214 mi

Travel time

41 h 53 min
flight ≈ 4 h 6 min

Direction

NE 44°
initial bearing

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

How far is Bangkok from Shanghai?

Bangkok (Thailand) and Shanghai (China) 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, Bangkok to Shanghai is 3,562 km (2,214 miles), about 41 h 53 min by car on the fastest route, without traffic or stops. The road is 23% longer than the straight line.

From Bangkok, Shanghai lies to the north-east (initial bearing 44°). The route crosses from Thailand into China. 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 Bangkok from Shanghai?

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

How long is the drive from Bangkok to Shanghai?

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

In which direction is Shanghai from Bangkok?

Shanghai is to the north-east of Bangkok, at an initial bearing of 44°.

How long is the flight from Bangkok to Shanghai?

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.