Air Miles Calculator logo

How far is Xi'an from Barcelona?

The distance between Barcelona (Barcelona–El Prat Airport) and Xi'an (Xi'an Xianyang International Airport) is 5452 miles / 8774 kilometers / 4737 nautical miles.

Barcelona–El Prat Airport – Xi'an Xianyang International Airport

Distance arrow
5452
Miles
Distance arrow
8774
Kilometers
Distance arrow
4737
Nautical miles

Search flights

Distance from Barcelona to Xi'an

There are several ways to calculate the distance from Barcelona to Xi'an. Here are two standard methods:

Vincenty's formula (applied above)
  • 5451.751 miles
  • 8773.742 kilometers
  • 4737.442 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
  • 5439.279 miles
  • 8753.671 kilometers
  • 4726.604 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 Barcelona to Xi'an?

The estimated flight time from Barcelona–El Prat Airport to Xi'an Xianyang International Airport is 10 hours and 49 minutes.

Flight carbon footprint between Barcelona–El Prat Airport (BCN) and Xi'an Xianyang International Airport (XIY)

On average, flying from Barcelona to Xi'an generates about 643 kg of CO2 per passenger, and 643 kilograms equals 1 418 pounds (lbs). The figures are estimates and include only the CO2 generated by burning jet fuel.

Map of flight path from Barcelona to Xi'an

See the map of the shortest flight path between Barcelona–El Prat Airport (BCN) and Xi'an Xianyang International Airport (XIY).

Airport information

Origin Barcelona–El Prat Airport
City: Barcelona
Country: Spain Flag of Spain
IATA Code: BCN
ICAO Code: LEBL
Coordinates: 41°17′49″N, 2°4′42″E
Destination Xi'an Xianyang International Airport
City: Xi'an
Country: China Flag of China
IATA Code: XIY
ICAO Code: ZLXY
Coordinates: 34°26′49″N, 108°45′7″E