EN RO

Distance from Shanghai to Xi’an

Straight line

1,221 km
759 mi · 659 NM

By road

1,373 km
853 mi

Travel time

15 h 19 min
flight ≈ 2 h 2 min

Direction

WNW 289°
initial bearing

Open in the calculator (stops, directions, fuel cost) → Xi’an → Shanghai

How far is Shanghai from Xi’an?

Shanghai (China) and Xi’an (China) are quite far apart: 1,221 km in a straight line, that is 759 miles or 659 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

By road, Shanghai to Xi’an is 1,373 km (853 miles), about 15 h 19 min by car on the fastest route, without traffic or stops. The road is 12% longer than the straight line.

From Shanghai, Xi’an lies to the west (initial bearing 289°). Both cities are in China. The halfway point is at 32.8965°, 115.3005°.

A direct flight would take about 2 h 2 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 Xi’an?

By road it is 1,373 km (853 miles) from Shanghai to Xi’an; in a straight line it is 1,221 km (759 miles).

How long is the drive from Shanghai to Xi’an?

About 15 h 19 min on the fastest route (1,373 km), without traffic or stops.

In which direction is Xi’an from Shanghai?

Xi’an is to the west of Shanghai, at an initial bearing of 289°.

How long is the flight from Shanghai to Xi’an?

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