EN RO

Distance from Shanghai to Chengdu

Straight line

1,661 km
1,032 mi · 897 NM

By road

1,888 km
1,173 mi

Travel time

21 h 25 min
flight ≈ 2 h 35 min

Direction

W 272°
initial bearing

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

How far is Shanghai from Chengdu?

Shanghai (China) and Chengdu (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, Shanghai to Chengdu is 1,888 km (1,173 miles), about 21 h 25 min by car on the fastest route, without traffic or stops. The road is 14% longer than the straight line.

From Shanghai, Chengdu lies to the west (initial bearing 272°). 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 Shanghai from Chengdu?

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

How long is the drive from Shanghai to Chengdu?

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

In which direction is Chengdu from Shanghai?

Chengdu is to the west of Shanghai, at an initial bearing of 272°.

How long is the flight from Shanghai to Chengdu?

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.