Air Miles Calculator logo

How far is Shanghai from Edinburgh?

The distance between Edinburgh (Edinburgh Airport) and Shanghai (Shanghai Pudong International Airport) is 5625 miles / 9053 kilometers / 4888 nautical miles.

Edinburgh Airport – Shanghai Pudong International Airport

Distance arrow
5625
Miles
Distance arrow
9053
Kilometers
Distance arrow
4888
Nautical miles

Search flights

Distance from Edinburgh to Shanghai

There are several ways to calculate the distance from Edinburgh to Shanghai. Here are two standard methods:

Vincenty's formula (applied above)
  • 5625.318 miles
  • 9053.071 kilometers
  • 4888.267 nautical miles

Vincenty's formula calculates the distance between latitude/longitude points on the earth's surface using an ellipsoidal model of the planet.

Haversine formula
  • 5612.623 miles
  • 9032.641 kilometers
  • 4877.236 nautical miles

The haversine formula calculates the distance between latitude/longitude points assuming a spherical earth (great-circle distance – the shortest distance between two points).

How long does it take to fly from Edinburgh to Shanghai?

The estimated flight time from Edinburgh Airport to Shanghai Pudong International Airport is 11 hours and 9 minutes.

Flight carbon footprint between Edinburgh Airport (EDI) and Shanghai Pudong International Airport (PVG)

On average, flying from Edinburgh to Shanghai generates about 666 kg of CO2 per passenger, and 666 kilograms equals 1 469 pounds (lbs). The figures are estimates and include only the CO2 generated by burning jet fuel.

Map of flight path from Edinburgh to Shanghai

See the map of the shortest flight path between Edinburgh Airport (EDI) and Shanghai Pudong International Airport (PVG).

Airport information

Origin Edinburgh Airport
City: Edinburgh
Country: United Kingdom Flag of United Kingdom
IATA Code: EDI
ICAO Code: EGPH
Coordinates: 55°57′0″N, 3°22′20″W
Destination Shanghai Pudong International Airport
City: Shanghai
Country: China Flag of China
IATA Code: PVG
ICAO Code: ZSPD
Coordinates: 31°8′36″N, 121°48′18″E