EN RO

Distance from Belgrade to Shanghai

Straight line

8,419 km
5,231 mi · 4,546 NM

By road

10,480 km
6,512 mi

Travel time

127 h 48 min
flight ≈ 11 h 1 min

Direction

ENE 60°
initial bearing

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

How far is Belgrade from Shanghai?

Belgrade (Serbia) and Shanghai (China) are very far apart: 8,419 km in a straight line, that is 5,231 miles or 4,546 nautical miles. The distance is measured over the Earth's surface (WGS84 ellipsoid) along the shortest possible path.

By road, Belgrade to Shanghai is 10,480 km (6,512 miles), about 127 h 48 min by car on the fastest route, without traffic or stops. The road is 24% longer than the straight line.

From Belgrade, Shanghai lies to the north-east (initial bearing 60°). The route crosses from Serbia into China. The halfway point is at 50.6829°, 77.4031°.

A direct flight would take about 11 h 1 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 Belgrade from Shanghai?

By road it is 10,480 km (6,512 miles) from Belgrade to Shanghai; in a straight line it is 8,419 km (5,231 miles).

How long is the drive from Belgrade to Shanghai?

About 127 h 48 min on the fastest route (10,480 km), without traffic or stops.

In which direction is Shanghai from Belgrade?

Shanghai is to the north-east of Belgrade, at an initial bearing of 60°.

How long is the flight from Belgrade to Shanghai?

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