Changi Airport to the city: what runs and what a taxi costs, hour by hour
On most nights the last city-bound bus out of Changi Airport leaves at 23:58 and the first train is at 05:31 — 5 h 33 min with no train and no bus at all. After a Saturday the gap is longer still, 5 h 55 min. From midnight that window also carries the 50% night surcharge, so a metered ride to the centre costs about S$44–74 against S$31–51 in the early afternoon. The hours with no alternative are also, very nearly, the most expensive ones.
- Cheapest, weekdays: 09:30–16:59 — no percentage surcharge, MRT running at about S$2.
- Cheapest, weekends and public holidays: 06:00–09:59 and 14:00–16:59 — the morning peak does not apply, but a 10:00–13:59 one does.
- Most expensive: 00:00–05:59 — 50% night surcharge plus the S$6 airport surcharge.
- Evening: 17:00–23:59 — 25% peak surcharge and the airport surcharge rises to S$8, giving about S$39–64.
Interval by interval
Rows are intervals between events — a surcharge boundary, the first or last train, the first or last bus, the moment 36 becomes 36A — so nothing changes inside a row. That is deliberate: an hourly table would have to claim one price for 09:00–09:59, when the peak surcharge ends at 09:29, and would say the train is running at 05:00 and at 23:30, when it is not.
Direction: airport → city. The flat airport surcharge applies in this direction only, which is why the same trip back to Changi is cheaper at the same hour. The hourly fare bands are for a trip to the city centre, where the metered fare is S$25–45. Longer or shorter trips have their own metered range — see the district table — so add the same surcharges to that range instead.
Monday to Friday
| Interval | Train to the city | Bus 36 | Taxi surcharge | Metered taxi to the centre | Cheapest way |
|---|---|---|---|---|---|
| 00:00–05:30 | — | —no train, no bus: taxi, ride-hailing or a pre-booked transfer only | +50% + S$6 | S$44–74 | taxi / ride-hailing / transfer, from about S$44 |
| 05:31–05:59 | runs | — | +50% + S$6 | S$44–74 | MRT ≈ S$2 |
| 06:00–09:29 | runs | 36 | +25% + S$6 | S$37–62 | MRT ≈ S$2 |
| 09:30–16:59 | runs | 36 | none + S$6 | S$31–51 | MRT ≈ S$2 |
| 17:00–23:01 | runs | 36 | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:02–23:18 | runs | 36A36A goes only to Tomlinson Rd (Orchard area); last city-bound train 23:18; the 00:06 goes to Pasir Ris | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:19–23:58 | — | 36A36A goes only to Tomlinson Rd (Orchard area) | +25% + S$8 | S$39–64 | bus 36A ≈ S$2 |
| 23:59–23:59 | — | —no train, no bus: taxi, ride-hailing or a pre-booked transfer only | +25% + S$8 | S$39–64 | taxi / ride-hailing / transfer, from about S$39 |
Saturday
| Interval | Train to the city | Bus 36 | Taxi surcharge | Metered taxi to the centre | Cheapest way |
|---|---|---|---|---|---|
| 00:00–05:30 | — | —no train, no bus: taxi, ride-hailing or a pre-booked transfer only | +50% + S$6 | S$44–74 | taxi / ride-hailing / transfer, from about S$44 |
| 05:31–05:59 | runs | — | +50% + S$6 | S$44–74 | MRT ≈ S$2 |
| 06:00–09:59 | runs | 36 | none + S$6 | S$31–51 | MRT ≈ S$2 |
| 10:00–13:59 | runs | 36 | +25% + S$6 | S$37–62 | MRT ≈ S$2 |
| 14:00–16:59 | runs | 36 | none + S$6 | S$31–51 | MRT ≈ S$2 |
| 17:00–23:02 | runs | 36 | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:03–23:18 | runs | 36A36A goes only to Tomlinson Rd (Orchard area); last city-bound train 23:18; the 00:06 goes to Pasir Ris | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:19–23:59 | — | 36A36A goes only to Tomlinson Rd (Orchard area) | +25% + S$8 | S$39–64 | bus 36A ≈ S$2 |
Sunday and public holidays
| Interval | Train to the city | Bus 36 | Taxi surcharge | Metered taxi to the centre | Cheapest way |
|---|---|---|---|---|---|
| 00:00–00:04 | — | 36Alast 36A of the Saturday service, 00:04 | +50% + S$6 | S$44–74 | bus 36A ≈ S$2 |
| 00:05–05:58 | — | —no train, no bus: taxi, ride-hailing or a pre-booked transfer only | +50% + S$6 | S$44–74 | taxi / ride-hailing / transfer, from about S$44 |
| 05:59–05:59 | runs | — | +50% + S$6 | S$44–74 | MRT ≈ S$2 |
| 06:00–09:59 | runs | 36 | none + S$6 | S$31–51 | MRT ≈ S$2 |
| 10:00–13:59 | runs | 36 | +25% + S$6 | S$37–62 | MRT ≈ S$2 |
| 14:00–16:59 | runs | 36 | none + S$6 | S$31–51 | MRT ≈ S$2 |
| 17:00–23:03 | runs | 36 | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:04–23:18 | runs | 36A36A goes only to Tomlinson Rd (Orchard area); last city-bound train 23:18; the 00:06 goes to Pasir Ris | +25% + S$8 | S$39–64 | MRT ≈ S$2 |
| 23:19–23:58 | — | 36A36A goes only to Tomlinson Rd (Orchard area) | +25% + S$8 | S$39–64 | bus 36A ≈ S$2 |
| 23:59–23:59 | — | —no train, no bus: taxi, ride-hailing or a pre-booked transfer only | +25% + S$8 | S$39–64 | taxi / ride-hailing / transfer, from about S$39 |
The nights with nothing running
Counted per night rather than per weekday, because a night belongs to two calendar days: the last bus leaves on one, the first train arrives on the next. On Saturday nights the 36A runs past midnight, but the Sunday timetable then starts the trains later — the two shifts do not cancel out, they add up.
| Night | Last city-bound bus | First train next morning | Nothing runs for |
|---|---|---|---|
| Monday to Thursday night | 23:58 | 05:31 | 5 h 33 min |
| Friday night | 23:58 | 05:31 | 5 h 33 min |
| Saturday night | 00:04 | 05:59 | 5 h 55 min |
| Sunday night | 23:58 | 05:31 | 5 h 33 min |
One honest detail: on the nights that begin at 23:58, the first two minutes of the gap are still on the evening rate — the 50% night surcharge starts at 00:00, not when the bus leaves. Public holidays are the ragged case: the gap depends on which calendar days sit either side of the holiday, so treat the Sunday row as the shape rather than the exact figure.
The same trip to ten districts
Metered taxi fares here are before the surcharges — add the flat airport surcharge (S$6, or S$8 from 17:00) and any percentage from the tables above. That is also why the hourly bands cannot be reused for every destination: they are built on the city-centre range S$25–45, while Jurong East and Changi Village have their own.
A dash means the mode does not serve that destination directly — Changi Village has no MRT station, and Sentosa is reached by MRT plus the Sentosa Express rather than a single bus. For Sentosa the taxi figure is the ride to HarbourFront; going onto the island adds the island entry charge.
| Destination | MRT | Public bus | Taxi, metered only | Private transfer |
|---|---|---|---|---|
| Marina Bay | ≈ S$245–55 min | ≈ S$260–75 min | S$25–4520–30 min | Fixed quote20–30 min |
| Orchard Road | ≈ S$255–65 min | ≈ S$270–90 min | S$25–4525–35 min | Fixed quote25–35 min |
| the CBD / Raffles Place | ≈ S$240–50 min | ≈ S$255–70 min | S$25–4520–25 min | Fixed quote20–25 min |
| Sentosa | ≈ S$2 + island entry60–70 min | — | S$25–4525–35 min | Fixed quote25–35 min |
| Chinatown | ≈ S$245–55 min | ≈ S$260–75 min | S$25–4520–25 min | Fixed quote20–25 min |
| Little India | ≈ S$245–55 min | ≈ S$260–80 min | S$25–4520–25 min | Fixed quote20–25 min |
| Bugis | ≈ S$240–50 min | ≈ S$255–70 min | S$25–4520–25 min | Fixed quote20–25 min |
| Clarke Quay | ≈ S$245–55 min | ≈ S$260–75 min | S$25–4520–30 min | Fixed quote20–30 min |
| Jurong East | ≈ S$2–360–75 min | ≈ S$2–385–110 min | S$35–5030–40 min | Fixed quote30–40 min |
| Changi Village | — | ≈ S$1–220–30 min | S$10–1810–15 min | Fixed quote10–15 min |
Download the full table
The CSV holds all 26 intervals across the three day types, plus the 4 night windows as a second block — with the surcharge percentage, the flat airport surcharge, the computed fare band and the cheapest available option for each interval.
changi-to-city-cost-by-hour.csv
Free to reuse, including commercially, with attribution to Singapore Airport Guide and a link to this page (CC BY 4.0).
Method, sources and what this dataset is not
Snapshot date: 2026-08-17. Two kinds of numbers appear above and the difference matters:
- Taken from the operators: the surcharge windows and percentages, the flat airport surcharge, the city-centre metered band S$25–45, the first and last trains, and the bus 36 timings.
- Computed by us: the total fare band for each interval — metered band × (1 + surcharge percentage) + the flat airport surcharge, rounded to the nearest dollar — which modes are available in that interval, and the length of each night gap.
- Not measured: we did not time real journeys, so there are no median or 90th-percentile travel times here. The per-district journey times are our own editorial estimates from our route guides — built on operator timetables and normal traffic, not published by any operator and not stopwatch data.
Sources and verification dates: taxi fares and surcharges — changiairport.com · Leaving the airport → Midnight and Peak-hour surcharges, checked 2026-08-17; MRT — changiairport.com · Leaving the airport (first/last train) + sgtrains/SMRT tables for Sunday & PH, checked 2026-08-17; bus 36 — Go-Ahead Singapore service 36 · SimplyGo service 36 · Land Transport Guru bus 36, checked 2026-08-17.
One caveat we would rather state than hide: the operator and SimplyGo publish one set of timings for the whole route — SimplyGo states explicitly that the first bus 06:00 and last bus 23:58 (00:04 on Saturdays) apply to all stops, with Changi Airport Terminal 2 as the reference point. The loop calls the terminals a few minutes apart, so our own check of 2026-07-27 put the city-bound bus at T3 around 06:00, T1 around 06:03 and T4 around 06:08 — treat those as our reading of a secondary timetable, not as published times, and if you are at T4 just after 06:00, assume the bus has not reached you yet.
Ride-hailing cars (Grab, Gojek, TADA, Ryde, Zig, Geolah) and pre-booked transfers run at all hours and are included in the «cheapest way» column whenever nothing else runs — but not in the fare columns: app pricing is dynamic and a transfer is a fixed quote, so any number we printed would be wrong by the time you read it.
What this dataset still does not answer: the next actual departure from a specific terminal at a specific minute. Intervals tell you what is running and what it costs; they do not tell you that your bus from T4 is eleven minutes away. A terminal-level version is the obvious next step and we would rather say so than imply this table is more precise than it is.
Questions this dataset answers
- What is the cheapest time to leave Changi Airport for the city?
- On a weekday, 09:30–16:59: no percentage taxi surcharge applies, so a metered ride to the centre is about S$31–51 including the S$6 airport surcharge, and the MRT is running at about S$2. On Saturdays, Sundays and public holidays the morning peak does not apply but a 10:00–13:59 one does, so there the surcharge-free stretches are 06:00–09:59 and 14:00–16:59. The MRT itself costs the same all day, so if you only care about the cheapest ride rather than the cheapest taxi, any hour the train runs is equally cheap.
- Is there any public transport from Changi Airport at 3 am?
- No. On most nights the last city-bound bus leaves at 23:58 and the first train is at 05:31, which leaves 5 h 33 min with no train and no bus at all. After a Saturday the gap is longer — 5 h 55 min, because the last 36A leaves at 00:04 but the first Sunday train is only at 05:59. From midnight the metered fare also carries the 50% night surcharge, so a taxi to the centre runs about S$44–74.
- The last train to the city is 23:18. How do I reach Marina Bay or Chinatown after that?
- Not by public transport in one ride. After 23:18 the only bus still running is 36A, and it covers just half of the loop, ending at Tomlinson Rd (Orchard area) — useful for Orchard, not for Marina Bay, Chinatown, Bugis or Little India. For those districts between the last train and the last 36A your options are a taxi, a ride-hailing car or a pre-booked transfer; the metered fare is still on the evening rate (S$39–64) until midnight, when it jumps to the night rate.
- Why is an evening taxi more expensive than a midday one?
- Two separate charges change at 17:00: the 25% peak surcharge applies daily from 17:00 to 23:59, and the flat airport surcharge rises from S$6 to S$8 in the same window. A midday metered ride of about S$31–51 becomes about S$39–64.