Distance from Bangkok to Shanghai

🇹🇭 Bangkok, Thailand  →  🇨🇳 Shanghai, China

2,891 km
Straight-line distance
1,796 mi
In miles
4h 7m
Est. flight time
Northeast
Initial bearing 44°

The distance between Bangkok and Shanghai is 2,891 kilometres (1,796 miles) measured as a great-circle (straight) line. Flying out of Suvarnabhumi Airport (BKK), the initial heading is roughly northeast (44°), and a typical nonstop flight takes around 4h 7m. Actual flight paths and times vary with routing, winds and air-traffic constraints.

🇹🇭

Bangkok

Thailand

Population (metro)10.7 million
Main airportBKK
RegionSoutheast Asia
Time zoneUTC+7
CurrencyThai Baht (THB)

Thailand's vibrant capital, famous for ornate temples, floating markets, street food and buzzing nightlife along the Chao Phraya River.

Top sights: Grand Palace, Wat Arun, Wat Pho, Chatuchak Market, Khao San Road, floating markets

🇨🇳

Shanghai

China

Population (metro)29.2 million
Main airportPVG
RegionEast Asia
Time zoneUTC+8
CurrencyChinese Yuan (CNY)

China's largest city and global financial center, famous for its futuristic Pudong skyline and historic Bund waterfront along the Huangpu River.

Top sights: The Bund, Oriental Pearl Tower, Yu Garden, Shanghai Tower, Nanjing Road, French Concession

Frequently asked questions

How far is Shanghai from Bangkok?
2,891 km (1,796 miles) in a straight line.
How long is the flight from Bangkok to Shanghai?
About 4h 7m nonstop, at an average 800 km/h cruising speed plus taxi and climb time.
What direction is Shanghai from Bangkok?
Shanghai lies roughly to the northeast of Bangkok (initial bearing 44°).
Which airports serve this route?
Bangkok: Suvarnabhumi Airport (BKK). Shanghai: Shanghai Pudong International Airport (PVG).

More distances from Bangkok

See the country profiles for Thailand and China, or open the Asia distance calculator.