Air Miles Calculator logo

How far is Shanghai from London?

The distance between London (London Heathrow Airport) and Shanghai (Shanghai Hongqiao International Airport) is 5737 miles / 9233 kilometers / 4986 nautical miles.

London Heathrow Airport – Shanghai Hongqiao International Airport

Distance arrow
5737
Miles
Distance arrow
9233
Kilometers
Distance arrow
4986
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)
  • 5737.302 miles
  • 9233.292 kilometers
  • 4985.579 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
  • 5724.421 miles
  • 9212.563 kilometers
  • 4974.386 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 Heathrow Airport to Shanghai Hongqiao International Airport is 11 hours and 21 minutes.

Flight carbon footprint between London Heathrow Airport (LHR) and Shanghai Hongqiao International Airport (SHA)

On average, flying from London to Shanghai generates about 681 kg of CO2 per passenger, and 681 kilograms equals 1 502 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 Heathrow Airport (LHR) and Shanghai Hongqiao International Airport (SHA).

Airport information

Origin London Heathrow Airport
City: London
Country: United Kingdom Flag of United Kingdom
IATA Code: LHR
ICAO Code: EGLL
Coordinates: 51°28′14″N, 0°27′42″W
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