EN RO

Distance from Chengdu to Shanghai

Straight line

1,661 km
1,032 mi · 897 NM

By road

1,891 km
1,175 mi

Travel time

21 h 27 min
flight ≈ 2 h 35 min

Direction

E 83°
initial bearing

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

How far is Chengdu from Shanghai?

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

By road, Chengdu to Shanghai is 1,891 km (1,175 miles), about 21 h 27 min by car on the fastest route, without traffic or stops. The road is 14% longer than the straight line.

From Chengdu, Shanghai lies to the east (initial bearing 83°). Both cities are in China. The halfway point is at 31.2374°, 112.7369°.

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

By road it is 1,891 km (1,175 miles) from Chengdu to Shanghai; in a straight line it is 1,661 km (1,032 miles).

How long is the drive from Chengdu to Shanghai?

About 21 h 27 min on the fastest route (1,891 km), without traffic or stops.

In which direction is Shanghai from Chengdu?

Shanghai is to the east of Chengdu, at an initial bearing of 83°.

How long is the flight from Chengdu to Shanghai?

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