Distance Calculator
Bangkok, Thailand → Shanghai, China
Distance Result
1,795 miles
2,889 km | 1,560 nautical miles
Straight-line (great circle) distance
The distance from Bangkok to Shanghai is about 2,889 km (1,795 miles) as the crow flies, or 1,560 nautical miles.
This is the great-circle distance — the shortest path over the surface of the Earth, computed with the haversine formula from the coordinates of both cities. Road or rail distance is always longer, and the gap widens with every mountain range or coastline in between.
Putting the number to use
- At a cruising speed near 800 km/h the airborne time is about 3.6 hours; add 30-45 minutes for taxi, climb and descent.
- Time zone difference changes the arrival time on your ticket far more than the flying time does.
- For shipping, use road or sea distance instead — great-circle figures understate real routes.
Driving
≈ 1d 8h
Estimated at 90 km/h average. Actual road distance is typically 15-30% longer than the straight line.
Flying
≈ 4h 9min
Estimated at 850 km/h cruising speed plus takeoff and landing time.
Route Map
Distances from Bangkok to Nearby Cities
Frequently Asked Questions
The straight-line (great circle) distance between Bangkok and Shanghai is 1,795 miles (2,889 kilometers).
A direct flight from Bangkok to Shanghai takes approximately 4h 9min, based on an average cruising speed of 850 km/h plus takeoff and landing time.
Driving from Bangkok to Shanghai takes approximately 1d 8h, assuming an average speed of 90 km/h. Actual time depends on the route and traffic.