My quick answer: take the nonstop when the whole fare works
Phuket (HKT) to Chiang Mai (CNX) is long enough that flying is the sensible default. A nonstop avoids a Bangkok airport and keeps the air journey to roughly two hours, but service and departure times move with airline schedules. I search the exact date on airline sites, then compare the total fare after baggage, seats and payment fees rather than relying on a headline price.
If the nonstop is badly timed or expensive, a single-ticket connection through Bangkok is the next option. I would not add a connection merely to save a small amount: another take-off, a longer travel day and more disruption exposure have a real cost.
Do not trust an undated airline list
Carriers add, reduce and seasonally suspend domestic routes. That makes an old article saying “three airlines fly daily” less useful than the live booking results for your date. AirAsia's current destination pages include Chiang Mai and the official Chiang Mai airport site provides live arrivals and departures; I use those as starting points, then verify the operating carrier printed on the itinerary.
A codeshare or travel-agent result may show the marketing airline more prominently than the operator. The operator determines the check-in desk, baggage process and many disruption rules. Save the flight number and operating airline, not just the reseller's logo.
Compare the fare as a bundle
On low-cost fares, checked baggage, a chosen seat, food and flexibility may all cost extra. A fare that initially looks cheapest can finish above a bundled alternative. Before paying, I compare:
- checked and cabin baggage allowances for the exact fare family;
- seat and payment charges;
- change, cancellation and missed-flight conditions;
- departure time and the cost of reaching Phuket airport;
- arrival time and the first-night plan in Chiang Mai.
Weigh bags before leaving the hotel. Buying an allowance online before check-in is commonly cheaper than solving an overweight bag at the airport, but the current airline rule is the one that matters.
Phuket airport: leave island-time optimism at the hotel
Phuket road journeys are variable. Traffic can build around resort areas, the airport corridor and bad weather, so I plan from the actual hotel pin rather than a generic “Phuket” transfer time. An early flight from the far south of the island may justify an airport-area night if missing it would damage the wider itinerary.
Confirm the terminal and check-in closing time through the operating airline. Carry the identification that the airline accepts for domestic travel; international visitors should normally keep their passport accessible. An airport handling international flights does not turn this domestic leg into an international journey, but identification and security rules still apply.
How early should you arrive?
Airports of Thailand currently advises passengers using Chiang Mai airport to allow at least two hours before a flight. Airline cut-offs can be much earlier than the departure time printed on the ticket, and queues change. I use two hours as a conservative domestic planning baseline at both ends, then add road contingency in Phuket rather than subtracting time because online check-in worked.
Online check-in is helpful, not a promise that you can arrive at the gate late. Checked bags still have a cut-off, security can queue and gates close before departure.
When a Bangkok connection makes sense
A protected connection can win when it is substantially cheaper, fits hotel check-in better or operates on a date without a useful nonstop. Bangkok has two airports: Suvarnabhumi (BKK) and Don Mueang (DMK). I reject any “connection” that secretly requires changing between them unless the saving is enormous and the schedule includes several hours of margin.
For one ticket through one airport, confirm whether baggage is checked to Chiang Mai. For separate tickets, assume you must collect it, enter the public arrivals area, check in again and carry the risk yourself. I leave a large buffer and would usually choose an overnight stop rather than build a fragile same-day self-transfer.
Build a humane beach-to-mountains day
Hotel checkout, a cross-island transfer, airport time, the flight and another transfer make this a full travel block even when the aircraft is airborne for only about two hours. I avoid putting a prepaid Chiang Mai food tour or long drive immediately after arrival. A delayed flight should not destroy the first evening.
If travelling during Phuket's wetter months, monitor the airline's status before leaving and keep notifications enabled. Heavy rain can slow the road even when the flight itself is operating normally.
Arrival at Chiang Mai
CNX is close to the city, but arrival time still matters. Use the official airport transport information and the pickup method you are comfortable with; ignore anyone steering you away from the clearly marked official options. Save the accommodation name and address in Thai and pin the correct entrance.
For an onward journey outside the city, I would normally sleep in Chiang Mai first. Linking a same-day flight from Phuket to a last bus, mountain transfer or separate international flight creates avoidable risk.
My booking checklist
- Search the exact date on operating-airline sites, including nearby departure times.
- Compare nonstop and protected one-stop totals after baggage and seats.
- Reject accidental BKK–DMK transfers and identify separate tickets.
- Choose a Phuket pickup time with road and check-in margin.
- Keep accepted ID, booking reference and baggage allowance offline.
- Leave the Chiang Mai arrival evening flexible.
Sources checked for this guide
I checked AirAsia's live route search and the official Chiang Mai airport passenger information on 15 September 2026. Route availability, fares and cut-offs remain date-specific.
Cheers, Carpe Diem & letting the nonstop earn its baggage fee! 🍻⏳✈️
TATS Man
your whole-fare-counting beach-to-mountains correspondent