Jakarta to Surabaya (CGK–SUB) — Airlines, Schedules & Connections

CGK Airport Page →
430 mi airlines 431/wk
On-time Some delays Frequent delays
Flight Schedule 126 flights Verified 18h ago
Nonstop 1-Stop 2-Stop Hide separate tickets Hide overnight Hide codeshares
  Flight Airline AC Dep Arr Dur OTP Sched  
✈ Nonstop
JT690
JT Lion
739
3:30 AM
WIB TT1
5:00 AM
WIB
1h 30m
M T W T F S S
Prices
QG170
QG Citilink
320
5:25 AM
WIB T1C
6:33 AM
WIB
1h 8m
M T W T F S S
Prices
ID6572+1
ID Interlink Airlines
32A
6:00 AM
WIB TT2
7:30 AM
WIB
1h 30m
M T W T F S S
Prices
EK3564cs
EK Emirates
738
6:00 AM
WIB T2
7:30 AM
WIB
1h 30m
M T W T F S S
Prices
QG724
QG Citilink
320
6:05 AM
WIB T1C
7:45 AM
WIB
1h 40m
M T W T F S S
Prices
QG738
QG Citilink
320
6:25 AM
WIB T1C
8:05 AM
WIB
1h 40m
M T W T F S S
Prices
EK7298cs
EK Emirates
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
PR3288cs
PR Philippine
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
MH4401cs
MH Malaysia
738
6:50 AM
WIB T3
8:25 AM
WIB
1h 35m
M T W T F S S
Prices
EY8177cs
EY Etihad
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
GA304+7
GA Garuda Indonesia
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
SV6150cs
SV Saudia
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
CI9668cs
CI China
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
VN3884cs
VN Vietnam
738
6:50 AM
WIB T3
8:30 AM
WIB
1h 40m
M T W T F S S
Prices
ID6584
ID Interlink Airlines
32A
8:00 AM
WIB T2
9:30 AM
WIB
1h 30m
M T W T F S S
Prices
QG722
QG Citilink
320
8:10 AM
WIB T1C
9:40 AM
WIB
1h 30m
M T W T F S S
Prices
MH4018cs
MH Malaysia
738
8:45 AM
WIB T3
10:25 AM
WIB
1h 40m
M T W T F S S
Prices
KL4054cs
KL KLM
738
8:45 AM
WIB T3
10:25 AM
WIB
1h 40m
M T W T F S S
Prices
VN3876cs
VN Vietnam
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
SV6151cs
SV Saudia
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
EK7275cs
EK Emirates
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
GA322+9
GA Garuda Indonesia
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
EY8138cs
EY Etihad
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
CI9782cs
CI China
738
8:50 AM
WIB T3
10:25 AM
WIB
1h 35m
M T W T F S S
Prices
QG718
QG Citilink
320
8:55 AM
WIB T1C
10:30 AM
WIB
1h 35m
M T W T F S S
Prices
JT241
JT Lion
739
9:00 AM
WIB TT1
10:25 AM
WIB
1h 25m
M T W T F S S
Prices
JT694
JT Lion
738
9:00 AM
WIB T1
10:30 AM
WIB
1h 30m
M T W T F S S
Prices
QG716
QG Citilink
320
10:15 AM
WIB T1
11:45 AM
WIB
1h 30m
M T W T F S S
Prices
QG736
QG Citilink
320
12:00 PM
WIB T1C
1:40 PM
WIB
1h 40m
M T W T F S S
Prices
MH4031cs
MH Malaysia
738
12:05 PM
WIB T3
1:45 PM
WIB
1h 40m
M T W T F S S
Prices
VN3872cs
VN Vietnam
738
12:10 PM
WIB T3
1:50 PM
WIB
1h 40m
M T W T F S S
Prices
GA312+7
GA Garuda Indonesia
738
12:10 PM
WIB T3
1:50 PM
WIB
1h 40m
M T W T F S S
Prices
SV6149cs
SV Saudia
738
12:10 PM
WIB T3
1:50 PM
WIB
1h 40m
M T W T F S S
Prices
CI8604cs
CI China
738
12:10 PM
WIB T3
1:50 PM
WIB
1h 40m
M T W T F S S
Prices
ID6578
ID Interlink Airlines
32A
12:59 PM
WIB TT2
1:59 PM
WIB
1h
M T W T F S S
Prices
ID6863
ID Interlink Airlines
32A
1:30 PM
WIB T2
3:00 PM
WIB
1h 30m
M T W T F S S
Prices
ID6406
ID Interlink Airlines
32A
1:30 PM
WIB T2
3:00 PM
WIB
1h 30m
M T W T F S S
Prices
MH4040cs
MH Malaysia
738
2:00 PM
WIB T3
3:35 PM
WIB
1h 35m
M T W T F S S
Prices
GA310+6
GA Garuda Indonesia
738
2:10 PM
WIB T3
3:50 PM
WIB
1h 40m
M T W T F S S
Prices
VN3282cs
VN Vietnam
738
2:10 PM
WIB T3
3:50 PM
WIB
1h 40m
M T W T F S S
Prices
SV6148cs
SV Saudia
738
2:10 PM
WIB T3
3:50 PM
WIB
1h 40m
M T W T F S S
Prices
JT171
JT Lion
739
2:50 PM
WIB TT1
4:20 PM
WIB
1h 30m
M T W T F S S
Prices
JT692
JT Lion
739
2:50 PM
WIB T1
4:20 PM
WIB
1h 30m
M T W T F S S
Prices
GA320+6
GA Garuda Indonesia
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
VN3958cs
VN Vietnam
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
MH5772cs
MH Malaysia
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
EY7121cs
EY Etihad
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
CI9774cs
CI China
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
SV6153cs
SV Saudia
738
4:00 PM
WIB T3
5:40 PM
WIB
1h 40m
M T W T F S S
Prices
MH5774cs
MH Malaysia
738
4:55 PM
WIB T3
6:35 PM
WIB
1h 40m
M T W T F S S
Prices
ID6576
ID Interlink Airlines
32A
5:00 PM
WIB T2
6:30 PM
WIB
1h 30m
M T W T F S S
Prices
GA326+6
GA Garuda Indonesia
738
5:20 PM
WIB T3
7:00 PM
WIB
1h 40m
M T W T F S S
Prices
VN3902cs
VN Vietnam
738
5:20 PM
WIB T3
7:00 PM
WIB
1h 40m
M T W T F S S
Prices
6E3575cs
6E IndiGo
738
5:20 PM
WIB T3
7:00 PM
WIB
1h 40m
M T W T F S S
Prices
CI9684cs
CI China
738
5:20 PM
WIB T3
7:00 PM
WIB
1h 40m
M T W T F S S
Prices
QG174
QG Citilink
320
6:00 PM
WIB T1C
7:40 PM
WIB
1h 40m
M T W T F S S
Prices
QG726
QG Citilink
320
7:10 PM
WIB T1C
8:50 PM
WIB
1h 40m
M T W T F S S
Prices
ID6588
ID Interlink Airlines
32A
8:00 PM
WIB TT2
9:30 PM
WIB
1h 30m
M T W T F S S
Prices
VN3750cs
VN Vietnam
738
8:10 PM
WIB T3
9:50 PM
WIB
1h 40m
M T W T F S S
Prices
GA324+5
GA Garuda Indonesia
738
8:10 PM
WIB T3
9:50 PM
WIB
1h 40m
M T W T F S S
Prices
SV6380cs
SV Saudia
738
8:10 PM
WIB T3
9:50 PM
WIB
1h 40m
M T W T F S S
Prices
EY7064cs
EY Etihad
738
8:10 PM
WIB T3
9:50 PM
WIB
1h 40m
M T W T F S S
Prices
QG728
QG Citilink
320
9:15 PM
WIB T1C
10:55 PM
WIB
1h 40m
M T W T F S S
Prices
ID6391+1
ID Interlink Airlines
32A
5:05 AM
WIB TT1
6:35 AM
WIB
1h 30m
M T W T F S S
Prices
QG727
QG Citilink
320
5:30 AM
WIB T1
7:10 AM
WIB
1h 40m
M T W T F S S
Prices
QG725
QG Citilink
320
6:30 AM
WIB T1
8:05 AM
WIB
1h 35m
M T W T F S S
Prices
EY8181cs
EY Etihad
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
6E3560cs
6E IndiGo
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
MH5773cs
MH Malaysia
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
CI9775cs
CI China
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
VN3887cs
VN Vietnam
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
GA305+5
GA Garuda Indonesia
738
7:05 AM
WIB T1
8:40 AM
WIB
1h 35m
M T W T F S S
Prices
QG175
QG Citilink
320
7:35 AM
WIB TT1
9:00 AM
WIB
1h 25m
M T W T F S S
Prices
JT176
JT Lion
739
7:40 AM
WIB T1
9:10 AM
WIB
1h 30m
M T W T F S S
Prices
JT693
JT Lion
739
7:40 AM
WIB TT1
9:10 AM
WIB
1h 30m
M T W T F S S
Prices
GA323
GA Garuda Indonesia
738
8:20 AM
WIB T1
10:00 AM
WIB
1h 40m
M T W T F S S
Prices
ID6573+1
ID Interlink Airlines
32A
8:30 AM
WIB TT1
10:00 AM
WIB
1h 30m
M T W T F S S
Prices
EK3546cs
EK Emirates
738
8:30 AM
WIB T1
10:00 AM
WIB
1h 30m
M T W T F S S
Prices
QG739
QG Citilink
320
9:15 AM
WIB T1
10:50 AM
WIB
1h 35m
M T W T F S S
Prices
QG715
QG Citilink
320
9:15 AM
WIB TT1
10:50 AM
WIB
1h 35m
M T W T F S S
Prices
ID6898
ID Interlink Airlines
738
10:10 AM
WIB TT1
11:40 AM
WIB
1h 30m
M T W T F S S
Prices
QG723
QG Citilink
320
10:20 AM
WIB T1
11:45 AM
WIB
1h 25m
M T W T F S S
Prices
JT697
JT Lion
738
11:05 AM
WIB TT1
12:35 PM
WIB
1h 30m
M T W T F S S
Prices
QG719
QG Citilink
320
11:20 AM
WIB TT1
12:55 PM
WIB
1h 35m
M T W T F S S
Prices
6E3576cs
6E IndiGo
738
11:30 AM
WIB T1
1:10 PM
WIB
1h 40m
M T W T F S S
Prices
CI8619cs
CI China
738
11:30 AM
WIB T1
1:10 PM
WIB
1h 40m
M T W T F S S
Prices
GA327+9
GA Garuda Indonesia
738
11:30 AM
WIB T1
1:10 PM
WIB
1h 40m
M T W T F S S
Prices
VN3873cs
VN Vietnam
738
11:30 AM
WIB T1
1:10 PM
WIB
1h 40m
M T W T F S S
Prices
SV6156cs
SV Saudia
738
11:30 AM
WIB T1
1:10 PM
WIB
1h 40m
M T W T F S S
Prices
MH4029cs
MH Malaysia
738
11:35 AM
WIB T1
1:10 PM
WIB
1h 35m
M T W T F S S
Prices
QG717
QG Citilink
320
12:30 PM
WIB T1
2:10 PM
WIB
1h 40m
M T W T F S S
Prices
ID6585
ID Interlink Airlines
32A
1:45 PM
WIB TT1
2:53 PM
WIB
1h 8m
M T W T F S S
Prices
QG737
QG Citilink
320
2:00 PM
WIB T1
3:35 PM
WIB
1h 35m
M T W T F S S
Prices
GA317+6
GA Garuda Indonesia
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
SV6157cs
SV Saudia
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
VN3871cs
VN Vietnam
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
CI8617cs
CI China
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
MH4017cs
MH Malaysia
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
KL4042cs
KL KLM
738
2:35 PM
WIB T1
4:10 PM
WIB
1h 35m
M T W T F S S
Prices
ID6401
ID Interlink Airlines
32A
3:50 PM
WIB TT1
5:20 PM
WIB
1h 30m
M T W T F S S
Prices
ID6862
ID Interlink Airlines
32A
4:25 PM
WIB TT1
5:55 PM
WIB
1h 30m
M T W T F S S
Prices
MH4039cs
MH Malaysia
738
4:30 PM
WIB T1
6:10 PM
WIB
1h 40m
M T W T F S S
Prices
VN3279cs
VN Vietnam
738
4:35 PM
WIB T1
6:15 PM
WIB
1h 40m
M T W T F S S
Prices
CI8615cs
CI China
738
4:35 PM
WIB T1
6:15 PM
WIB
1h 40m
M T W T F S S
Prices
SV6160cs
SV Saudia
738
4:35 PM
WIB T1
6:15 PM
WIB
1h 40m
M T W T F S S
Prices
GA315+6
GA Garuda Indonesia
738
4:35 PM
WIB T1
6:15 PM
WIB
1h 40m
M T W T F S S
Prices
JT695
JT Lion
739
4:40 PM
WIB T1
6:10 PM
WIB
1h 30m
M T W T F S S
Prices
JT581
JT Lion
738
5:00 PM
WIB TT1
6:30 PM
WIB
1h 30m
M T W T F S S
Prices
SV6381cs
SV Saudia
738
6:00 PM
WIB T1
7:40 PM
WIB
1h 40m
M T W T F S S
Prices
CI9681cs
CI China
738
6:00 PM
WIB T1
7:40 PM
WIB
1h 40m
M T W T F S S
Prices
GA313+8
GA Garuda Indonesia
738
6:00 PM
WIB T1
7:40 PM
WIB
1h 40m
M T W T F S S
Prices
KL4061cs
KL KLM
738
6:00 PM
WIB T1
7:35 PM
WIB
1h 35m
M T W T F S S
Prices
VN3877cs
VN Vietnam
738
6:00 PM
WIB T1
7:40 PM
WIB
1h 40m
M T W T F S S
Prices
MH5777cs
MH Malaysia
738
6:00 PM
WIB T1
7:35 PM
WIB
1h 35m
M T W T F S S
Prices
ID7579
ID Interlink Airlines
32A
6:02 PM
WIB T1
7:12 PM
WIB
1h 10m
M T W T F S S
Prices
KL4031cs
KL KLM
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
GA325+9
GA Garuda Indonesia
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
EY7120cs
EY Etihad
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
MH4027cs
MH Malaysia
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
VN3925cs
VN Vietnam
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
CI8613cs
CI China
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
6E3574cs
6E IndiGo
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
SV6154cs
SV Saudia
738
7:00 PM
WIB T1
8:35 PM
WIB
1h 35m
M T W T F S S
Prices
EK3560cs
EK Emirates
738
7:15 PM
WIB T1
8:45 PM
WIB
1h 30m
M T W T F S S
Prices
ID6575+1
ID Interlink Airlines
32A
7:15 PM
WIB T1
8:45 PM
WIB
1h 30m
M T W T F S S
Prices
QG171
QG Citilink
320
8:15 PM
WIB TT1
10:00 PM
WIB
1h 45m
M T W T F S S
Prices

No flights match your filters.

No nonstop flights on this route. connecting options below.

1-STOP More options, longer trips
2-STOP Loading... Reach the hardest destinations
Jakarta to Surabaya
4 carriers, 431 flights/week nonstop.
4 Airlines 431 Flights/wk 430 mi 1h nonstop 32 1-stop hubs

CGK–SUB is served by 4 airlines with nonstop service. Citilink, Garuda Indonesia and Interlink Airlines lead the route. The flight covers 430 miles in approximately 1h. Beyond nonstop, 32 hubs offer 1-stop connections.

Airline Landscape

All carriers operating nonstop CGK–SUB service, compared side by side.
Airline Freq/wk Aircraft Duration Dep OTP Alliance Codeshares
QG Citilink 67 320 1h08-1h40
GA Garuda Indonesia Also: 6E, CI, EK, EY, KL, MH, PG, PR, SV, VN 49 738 1h35-1h40 SkyTeam 6E, CI, EK, EY, KL, MH, PG, PR, SV, VN
ID Interlink Airlines Also: EK 49 32A 1h-1h30 EK
JT Lion Air 30 738, 739 1h25-1h30
Aircraft on this route
320 Airbus A320 – QG
32A Airbus A320 – ID
738 Boeing 737-800 – 6E, CI, EK, EY, GA, JT, KL, MH, PR, SV, VN
739 Boeing 737-900 – JT
Alliance coverage
Unaffiliated: ID + JT + QG (146 flights/wk, 75%)
SkyTeam: GA (49 flights/wk, 25%)
OTP based on airport-level delay snapshots. Duration ranges reflect seasonal/directional variation.

Weekly Schedule Pattern

Nonstop flight frequency by day of week, CGK to SUB direction.
Mon
62
flights
Tue
62
flights
Wed
61
flights
Thu
61
flights
Fri
62
flights
Sat
61
flights
Sun
62
flights
Departure time distribution
12 AM6 AM12 PM6 PM12 AM
Morning departures
Afternoon/evening departures
63
Nonstop flights
431
Outbound / wk
430
Return / wk

Connection Landscape

Beyond nonstop. 1-stop and 2-stop options for CGK to SUB.
1-STOP
One-Stop Connections
32
Hubs
~5h
Fastest
~30h
Longest
Verified with published schedule alignment and minimum connection time.
2-STOP
Two-Stop Connections
411
Candidates
Two-stop connections loaded in the connections tab above.
Connections computed from published schedules with minimum connection time verification. Use the interactive explorer above the fold to filter by airline, tier, and layover time.

Other ways to reach Surabaya from Jakarta

Nearby airports with service to Juanda International Airport.
Metric CGK→SUB HLP→SUB
Distance from CGK 19 mi
Nonstop airlines 4 3
Weekly flights 431 70
Flight time 1h 1h 25m
Airports within 200 miles of CGK with service to Juanda International Airport.

Travel Essentials

Practical planning for this route.
Time Difference
0h
Surabaya is 0 hours the same as Jakarta.
CGK: WIB · SUB: WIB

When it's 6:00 PM in Jakarta, it's 6:00 PM in Surabaya.
Distance & Flight Time
430 mi / 691 km
Nonstop flight time is approximately 1h 0m to 1h 40m.
Getting to CGK

The airport rail link from BNI City Station (Sudirman Baru) takes 45 minutes (IDR 70,000-100,000 depending on promotions). Trains run every 30-60 minutes from early morning to late evening. BNI City connects to the Sudirman MRT station by foot, making it reachable from most central Jakarta neighborhoods. Buy tickets at the station counter or online at reservation.kci.id.

Grab and Gojek are the go-to ride-hail apps. From central Jakarta to CGK, expect IDR 124,000-200,000 and 45 minutes without traffic. Rush hour (7:00-10:00, 16:00-19:00) can stretch that to two hours. Regular taxis from the city to the airport cost IDR 150,000-250,000 by meter. The DAMRI airport bus runs from Gambir and other hubs for IDR 40,000-60,000 but takes 90+ minutes.

CGK–SUB Quick Facts

Key statistics for the Jakarta to Surabaya route.
Route details
Distance430 mi / 691 km
Flight time1h to 1h 40m
Time difference0 hours
Airlines (nonstop)4
Weekly flights431 out / 430 return
1-stop connections32 hubs
Origin: CGK
IATA / ICAOCGK / WIII
TimezoneAsia/Jakarta
Passengers/yr54.8M
Elevation34 ft / 10 m
Destination: SUB
IATA / ICAOSUB / WARR
TimezoneAsia/Jakarta
Passengers/yr14.0M
Elevation9 ft / 3 m

Frequently Asked Questions

Common questions about CGK to SUB flights.
Nonstop flights from Soekarno-Hatta International Airport to Juanda International Airport take approximately 1h to 1h 40m. The route covers 430 miles.
4 airlines operate nonstop service: Garuda Indonesia, Interlink Airlines, Lion Air and Citilink. Plus 10 codeshare partners.
There are approximately 431 nonstop flights per week from CGK to SUB. The return direction has about 430 weekly flights.
Yes, 1-stop connections are available through SMQ, JHB, PLW, TTE, DMK, MDC, KDI, PEN, AMQ, CAN, KOE, BEJ, BTH, PKY, PKN, UPG, DPS, PNK, BWN, BDJ, BPN, SRG, TRK, SIN, KUL, PKU, PLM, JED, LOP, AAP, HKG and FOC. These options provide additional schedule flexibility.
Yes, return flights from SUB to CGK are available. Use the direction toggle at the top to view the return schedule.
Nearby alternatives include HLP. See the Alternatives section for a full comparison.
Click the 'Search Flights' button to check availability and prices on Google Flights. You can also compare airlines and schedules on this page to find the best option.
Route data is updated regularly from official airline schedules. On-time performance data comes from recent airport delay snapshots.
Block time is 1 hour 30 minutes to 1 hour 45 minutes for the 430-mile route across Java. Actual air time is about 1 hour 10 minutes. CGK taxi times can be long, especially at Terminal 3 during peak hours. Surabaya Juanda is less congested and gate arrivals are usually quick.
Garuda Indonesia operates 5 to 8 daily nonstops. Lion Air and Batik Air (Lion Group) combine for 8 to 12 daily frequencies. Citilink (Garuda's low-cost subsidiary) adds 5 to 8 more. Super Air Jet contributes additional departures. Total nonstop options often exceed 25 per day, making this one of Indonesia's busiest domestic corridors.
Garuda Indonesia is the full-service flag carrier with included meals, baggage, and wider seat pitch. Citilink is Garuda's low-cost arm with buy-on-board service. Lion Air and Batik Air are Lion Group carriers: Batik offers slightly better service and newer aircraft, while Lion is pure low-cost. Super Air Jet is the newest budget entrant. All fly 737 or A320 family aircraft.
Garuda Indonesia uses Terminal 3 at Soekarno-Hatta, the newest and most modern terminal. Lion Air and Batik Air operate from Terminal 1. Citilink uses Terminal 2. The terminals are spread across CGK's large campus, so confirm your terminal before heading to the airport. The Skytrain connects all three terminals but adds 10 to 15 minutes to transfer time.
Indonesian Railways runs executive-class trains between Jakarta Gambir and Surabaya Gubeng in about 9 to 10 hours. The Argo Bromo Anggrek is the premium service with reclining seats and meals. Train travel offers scenic views of Java's rice paddies and volcanoes. Flying saves 7 to 8 hours and is often comparable in price for advance bookings.

Jakarta to Surabaya: Java's Premier Domestic Route

CGK-SUB is one of Indonesia's highest-traffic air corridors, connecting the capital to East Java's largest city. Over 25 daily nonstops spread across Garuda Indonesia, Lion Air, Batik Air, Citilink, and Super Air Jet. The 430-mile flight takes about 1 hour 35 minutes. Competition keeps fares low, and travelers can choose between full-service (Garuda) and several low-cost options depending on baggage and service preferences.

Surabaya is the gateway to East Java and Bali overland. Juanda Airport sits 20 km south of the city center with good road connections. For Jakarta departures, check terminal assignments carefully: Garuda uses Terminal 3, Lion is in Terminal 1, and Citilink operates from Terminal 2. The rail alternative takes 9 to 10 hours but is popular for travelers who want to see Java's interior landscape without flying.