Bus data

Thailand bus stations with source confidence.

Thailand bus data is usable, but it is not one clean realtime API. Use Namtang GTFS as the static route/stop spine, MOT passenger bus terminals as the official station master, BKS resources for intercity context, DLT/MOT statistics for regulatory context, OSM for missing stop/facility hints, and app or commercial feeds only with documented permission.

Authority order

Use this priority order when two sources disagree.

RankSource layer
1Official source of record: MOT, DLT, BMTA, BKS, OTP
2Official open transit feed: Namtang GTFS
3Official app data via partnership: BMTA BUS, TSB Go, Namtang
4Commercial booking partner: ThaiRoute, 12Go, BusOnlineTicket
5Normalized public catalog: Transitland, Mobility Database
6Crowdsourced supplement: OpenStreetMap / Overpass

Coordinate priority

Station coordinates need source ranking because terminals, platforms, ticket counters, and stops can be confused.

RankCoordinate source
1MOT terminal coordinate
2BKS facility coordinate
3GTFS stop coordinate
4OSM coordinate
5Commercial page coordinate
6Manual geocode
Bangkok

Bangkok Mochit 2 Bus Terminal

Primary Bangkok terminal for many north and northeast intercity routes; useful for Bangkok to Chiang Mai, Isaan, and long-distance bus pages.

Northern Thailand buses / Northeastern / Isaan buses
Bangkok

Bangkok Southern Bus Terminal

Key Bangkok terminal for western and southern bus logic, including Kanchanaburi and long-haul southbound routes.

Southern Thailand buses / Kanchanaburi and western routes
Bangkok

Bangkok Ekkamai Bus Terminal

Useful for Bangkok to Pattaya/Chonburi and eastern Gulf short-trip pages.

Eastern Gulf routes / Pattaya / Chonburi
Chiang Mai

Chiang Mai Bus Terminal

Connects Chiang Mai route pages to the bus spine and helps decide whether bus, train, or flight is the better move.

Bangkok to Chiang Mai buses / Northern intercity buses
Phuket

Phuket Bus Terminal

Helps Phuket pages explain the gap between arriving by bus and reaching the correct beach base.

Bangkok to Phuket buses / Andaman overland routes
Krabi

Krabi Bus Terminal

Connects Krabi route pages to overland transport and reminds users that Ao Nang/Railay still require onward movement.

Bangkok to Krabi buses / Krabi to Phuket/Lanta/Surat Thani transfers

Bus routes by data confidence

These route pages explain which bus source layer can support the route and where static schedule confidence ends.

By bus

Bangkok to Chiang Mai by Bus

Officially important long-distance route, but the travel decision depends on PM2.5, duration tolerance, and whether train or flight is cleaner.

Use bus when price matters and time is flexible; use flight or train if comfort, AQI timing, or arrival quality matters more.
By bus

Bangkok to Phuket by Bus

Long southbound route where the terminal-to-beach transfer matters almost as much as the intercity leg.

Use bus for cost and overland continuity; use flight when beach time is more valuable than the long road leg.
By bus

Bangkok to Krabi by Bus

Overnight/long-haul route into Andaman scenery, with onward movement to Ao Nang, Railay, or Lanta still required.

Use bus if the travel day is acceptable and the coast plan has transfer slack; fly if boat/weather windows are tight.
By bus

Bangkok to Kanchanaburi by Bus

Lower-friction western route where bus, van, train, and private transfer can all be valid depending on timing and comfort.

Use bus/van when it lines up cleanly; choose private transfer if the route includes spread-out waterfalls or river stays.
By bus

Bangkok to Ayutthaya by Bus

Short central route where bus/van can work, but train or private transfer may be simpler for temple-day timing.

Use bus/van if the pickup point is convenient; use train/private transfer when heat and timing matter more.
By bus

Chiang Mai to Pai by Bus or Van

Mountain-road route where the data decision is less about distance and more about road comfort, weather, carsickness, and smoke.

Use only when northern AQI, mountain rain, and road comfort are acceptable. Treat Pai as optional, not mandatory.