The Surabaya to Jakarta route connects Juanda International Airport (SUB) in ID with Soekarno-Hatta International Airport (CGK) in ID. This short-haul flight covers approximately 430 miles (692 km) with a typical flight time of 1h 3m. This route is served by 6 airlines: Bhutan Airlines, Garuda Indonesia, Citilink and others. AirportRoutes has tracked 41 unique flight numbers on this route.
Compare flight prices across hundreds of booking sites
Search SUB → CGK flightsOpens a live price search — just pick your dates
The Surabaya (SUB) → Jakarta (CGK) air route covers 430 miles (692 km), linking East Java’s commercial hub with Indonesia’s capital region. It’s one of the country’s busiest domestic corridors, used heavily by business travelers, government visitors, and weekend city-breakers. Typical nonstop flight time is about 1 hour 20 minutes to 1 hour 40 minutes, depending on traffic and weather. Travelers choose it to avoid long overland journeys and to connect onward from Jakarta to international networks at Soekarno-Hatta. With multiple daily departures, it’s easy to plan same-day meetings, events, or short leisure trips. The route also suits travelers combining Surabaya’s access to East Java with Jakarta’s museums, dining, and shopping districts.
Book earlier for better fares—one-way tickets commonly range around IDR 600,000–1,500,000 (about USD 38–95), with higher prices near holidays and Monday/Friday peaks. For SUB, arrive 90–120 minutes before departure; security and boarding can tighten during morning waves. At CGK, confirm your terminal in advance and allow extra time for transfers between terminals if needed. Expect light snacks or buy-on-board on many services; bring a refillable bottle and charge devices before boarding. Choose an aisle seat if you want quicker deplaning for tight connections. If you’re continuing into central Jakarta, plan ground transport time carefully—traffic can be heavy—so consider rail/bus options or schedule pickups outside rush hours.
Jakarta blends modern skylines with layered history and is best explored by neighborhood. In Kota Tua (Old Town), visit Fatahillah Square and museums that trace Batavia-era heritage. For a city icon, head to Monas (National Monument) and nearby Merdeka Square. Shoppers and food lovers gravitate to Grand Indonesia and the Thamrin–Sudirman corridor, while Kemang and Senopati are known for cafés and nightlife. For a coastal escape, the Thousand Islands (Kepulauan Seribu) offer day trips and resorts. Try local staples like nasi uduk, soto Betawi, and gado-gado, plus street snacks in lively evening markets. Public transport has improved, but planning routes by area makes sightseeing far smoother.
Jakarta is warm year-round, with a drier period typically from June to September and wetter months often from November to March. For smoother travel and fewer weather-related delays, July–September is a popular window, though prices can rise during school holidays. Better value is often found in shoulder months like February–March or October, excluding major holiday weeks. Expect peak pricing around Lebaran (Eid) travel periods and year-end holidays, when fares and hotels in IDR (and USD equivalents) trend higher and flights sell out earlier.
WARRSUBSoekarno-Hatta International Airport
WIIICGK6
Operators41
Tracked Flights430
Miles1h 3m
Flight Duration
| Airline | ICAO | IATA |
|---|---|---|
| Batik Air |
BTK
|
ID
|
| Garuda Indonesia |
GIA
|
GA
|
| Citilink |
CTV
|
QG
|
| Lion Air |
LNI
|
JT
|
| Pelita Air Service P.t. |
PAS
|
IP
|
| MYU |
MYU
|
3Y
|
| Day | Flights Observed | Frequency | Activity |
|---|---|---|---|
| Monday | 81 | 13% |
|
| Tuesday | 85 | 14% |
|
| Wednesday | 85 | 14% |
|
| Thursday | 100 | 17% |
|
| Friday | 67 | 11% |
|
| Saturday | 87 | 14% |
|
| Sunday | 100 | 17% |
|
Pattern Analysis
| Airline | Flight Numbers | Aircraft Type | Typical Time | Days Active | Last Seen | Status |
|---|---|---|---|---|---|---|
|
Batik Air
BTK
/ ID
|
|
A320 | 05:05 5:05 AM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active |
|
Citilink
CTV
/ QG
|
|
A320 | 06:30 6:30 AM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active |
|
Garuda Indonesia
GIA
/ GA
|
|
B738 | 14:35 2:35 PM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active |
|
Lion Air
LNI
/ JT
|
|
B739 | 07:40 7:40 AM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active |
|
MYU
MYU
/ 3Y
|
B733 | 15:15 3:15 PM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active | |
|
Pelita Air Service P.t.
PAS
/ IP
|
A320 | 13:25 1:25 PM (Representative) |
M
T
W
T
F
S
S
|
Jul 2, 2026 | Active |
| Departure Time | Operator | ICAO | IATA |
|---|---|---|---|
| 05:05 5:05 AM | Batik Air |
BTK
|
ID
|
| 06:30 6:30 AM | Citilink |
CTV
|
QG
|
| 07:40 7:40 AM | Lion Air |
LNI
|
JT
|
| 13:25 1:25 PM | Pelita Air Service P.t. |
PAS
|
IP
|
| 14:35 2:35 PM | Garuda Indonesia |
GIA
|
GA
|
| 15:15 3:15 PM | MYU |
MYU
|
3Y
|
Time Information
Times are shown in the departure airport's local timezone (WARR - Asia/Jakarta).