EN RO

Distance from Tehran to Shanghai

Straight line

6,390 km
3,971 mi · 3,450 NM

By road

7,904 km
4,911 mi

Travel time

92 h 21 min
flight ≈ 8 h 29 min

Direction

ENE 73°
initial bearing

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

How far is Tehran from Shanghai?

Tehran (Iran) and Shanghai (China) are very far apart: 6,390 km in a straight line, that is 3,971 miles or 3,450 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

By road, Tehran to Shanghai is 7,904 km (4,911 miles), about 92 h 21 min by car on the fastest route, without traffic or stops. The road is 24% longer than the straight line.

From Tehran, Shanghai lies to the east (initial bearing 73°). The route crosses from Iran into China. The halfway point is at 38.8961°, 87.4756°.

A direct flight would take about 8 h 29 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 Tehran from Shanghai?

By road it is 7,904 km (4,911 miles) from Tehran to Shanghai; in a straight line it is 6,390 km (3,971 miles).

How long is the drive from Tehran to Shanghai?

About 92 h 21 min on the fastest route (7,904 km), without traffic or stops.

In which direction is Shanghai from Tehran?

Shanghai is to the east of Tehran, at an initial bearing of 73°.

How long is the flight from Tehran to Shanghai?

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