Air Miles Calculator logo

How far is Shanghai from London?

The distance between London (London Stansted Airport) and Shanghai (Shanghai Hongqiao International Airport) is 5696 miles / 9167 kilometers / 4950 nautical miles.

London Stansted Airport – Shanghai Hongqiao International Airport

Distance arrow
5696
Miles
Distance arrow
9167
Kilometers
Distance arrow
4950
Nautical miles

Search flights

Distance from London to Shanghai

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

Vincenty's formula (applied above)
  • 5695.860 miles
  • 9166.598 kilometers
  • 4949.567 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
  • 5683.062 miles
  • 9146.001 kilometers
  • 4938.446 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 London to Shanghai?

The estimated flight time from London Stansted Airport to Shanghai Hongqiao International Airport is 11 hours and 17 minutes.

Flight carbon footprint between London Stansted Airport (STN) and Shanghai Hongqiao International Airport (SHA)

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

Map of flight path from London to Shanghai

See the map of the shortest flight path between London Stansted Airport (STN) and Shanghai Hongqiao International Airport (SHA).

Airport information

Origin London Stansted Airport
City: London
Country: United Kingdom Flag of United Kingdom
IATA Code: STN
ICAO Code: EGSS
Coordinates: 51°53′5″N, 0°14′5″E
Destination Shanghai Hongqiao International Airport
City: Shanghai
Country: China Flag of China
IATA Code: SHA
ICAO Code: ZSSS
Coordinates: 31°11′52″N, 121°20′9″E