Impact-Site-Verification: 9e0dad4c-1ecb-4b27-8cf1-32aa58dbb403

Skip to content
Search AI Planner

Yogyakarta to Semarang by bus

Typical ride 3h 00m over 120 km. Starting fares around $4 ($4–9). Compare operators - we don't sell tickets.

Route snapshot

Duration
3h 00m
Distance
120 km
Typical price
$4–9
Tip
Buses run via Magelang or via Solo, depending on the operator, and take roughly three hours. Giwangan terminal in Yogyakarta is outside the centre, so allow time to get there.

Over 120 km the starting fare works out at $3.33 per 100 km - cheaper per kilometre than 289 of the 475 $-priced routes we track. See the bus fare index. Fares are editorial starting prices, not live quotes.

Trip plannerEstimates

Yogyakarta to Semarang: bus, train, flight or drive?

We compared the ways to travel for Mon 2 Nov 2026 and 1 traveller. Bus figures come from our route data; train, flight and drive are our estimates, not live prices. We don’t sell tickets - the real fares are with the operators below.

Best overall

Train

Strong on time and CO2. Scores 80/100 on our weighted mix of time, cost, comfort and CO2.

Score weights: time 35% · cost 30% · comfort 20% · CO₂ 15%

Search trains
Door to door
2h 30m1h 40m on the move
Estimated fare
$6–15per person
Carbon
4.8 kgCO₂e per traveller

Cheapest

Bus

$4–9

About 37% less than the next cheapest option (train), counting typical fares.

See live bus fares

Quickest

Train

2h 30m door to door

Door to door about 2h 30m - effectively level with drive.

Search trains

Greenest

Bus

3.6 kg CO₂e each

About 3.6 kg CO2e per traveller, roughly 82% less than drive.

See live bus fares

Door-to-door time

The real trip, not just the ride: getting to the station or airport, check-in and waiting all count.

Door-to-door time by way of travelling Bus 3h 55m (3h on the move, 55 min getting there and waiting); Train 2h 30m (1h 40m on the move, 50 min getting there and waiting); Drive 2h 30m (2h 05m on the move, 25 min getting there and waiting). Estimates. Bus 3h 55m 3h 3h on the move + 55 min transfers & waiting Train QUICKEST 2h 30m 1h 40m 1h 40m on the move + 50 min transfers & waiting Drive 2h 30m 2h 05m 2h 05m on the move + 25 min transfers & waiting Door-to-door time by way of travelling Bus 3h 55m (3h on the move, 55 min getting there and waiting); Train 2h 30m (1h 40m on the move, 50 min getting there and waiting); Drive 2h 30m (2h 05m on the move, 25 min getting there and waiting). Estimates. Bus 3h 55m 3h 3h on the move + 55 min transfers & waiting Train QUICKEST 2h 30m 1h 40m 1h 40m on the move + 50 min transfers & waiting Drive 2h 30m 2h 05m 2h 05m on the move + 25 min transfers & waiting

Estimated cost

Typical cheap-to-flexible range. The dot marks the middle of the range. Not live prices.

Estimated cost range by way of travelling Bus $4–9 per person; Train $6–15 per person; Drive $10–80 per person. Estimates, not live prices. Bus CHEAPEST $4–9 per person Train $6–15 per person Drive $10–80 per person (whole car) Estimated cost range by way of travelling Bus $4–9 per person; Train $6–15 per person; Drive $10–80 per person. Estimates, not live prices. Bus CHEAPEST $4–9 per person Train $6–15 per person Drive $10–80 per person (whole car)

Scorecard

Each way scored 0-100 on four things. A bigger shape means a better balance.

Scorecard radar: time, cost, comfort and green score per way of travelling Bus: time 64, cost 100, comfort 55, green 88; Train: time 100, cost 63, comfort 66, green 84; Drive: time 100, cost 14, comfort 64, green 32. Time Cost Comfort Green
  • Bus 77 out of 100
  • Train 80 out of 100
  • Drive 57 out of 100

Train: step by step

80/100

  1. Leave your door for the station20 min
  2. Security-free boarding buffer15 min
  3. Train ride1h 40m
  4. Station to your final stop15 min
Door to door2h 30m
Time weight 35%100 out of 100
Cost weight 30%63 out of 100
Comfort weight 20%66 out of 100
Green weight 15%84 out of 100

Rough estimate - assumes a direct intercity rail service exists; check timetables.

Our estimate

Search trains

Split the cost

Even with four people sharing, the typical bus fare is still lower per person than the car.

Per-person figures use the middle of each estimate. The low end of the car range assumes your own car (fuel and tolls); the high end adds a one-day hire car.

  • Flight: not practical here - Too short - airport time would outweigh the flight.
See the numbers (table)
Estimated comparison of ways to travel from Yogyakarta to Semarang
WayDoor to doorOn the moveFareCO₂e eachScore
Train*2h 30m1h 40m$6–154.8 kg80/100
Bus3h 55m3h$4–93.6 kg77/100
Drive*2h 30m2h 05m$10–8020 kg57/100

* Our estimate, not a quote. Bus: duration, distance and fare range from our route data.

How we estimate
  • Bus uses the duration, distance and typical fare range in our route data (editorial figures, not live quotes).
  • Train, flight and drive are estimated from the 120 km road distance (with fixed average speeds and per-kilometre price bands, scaled to this route’s own bus fare level). A straight-line distance of about 80% of the road distance is used for flights.
  • Door to door adds the time that is not travelling: about 55 min for a coach (to the station, boarding, onward), 50 min for a train, 195 min for a flight (to the airport, check-in and security, baggage, into town) and 25 min for a car (loading, parking).
  • Cost is a cheap-to-flexible range per person; flights include airport transfers; cars are priced per car (fuel and tolls at the low end, plus a one-day hire car at the high end) and split between up to four people.
  • CO₂e per traveller uses typical factors per passenger-km: coach 0.03 kg, train 0.04 kg (0.015 kg on electric high-speed lines), short-haul flight 0.14-0.23 kg without radiative forcing, car 0.17 kg per vehicle-km shared between the people in it.
  • Scores run 0-100: time (fastest door to door = 100), cost (cheapest typical total = 100), comfort (our editorial rating, lower for very long rides) and green (lower emissions per km = higher). Best overall weights them time 35%, cost 30%, comfort 20%, CO₂ 15%.
  • Not every corridor has a direct train or airport service, and car journeys may involve ferries or tolls we do not know about. Treat everything except the bus figures as a starting point and check the operators.

The cheapest way from Yogyakarta to Semarang is the bus (about $4–9 per person); the quickest is the train (about 2h 30m door to door); the best overall balance is the train; the lowest-carbon choice is the bus (about 3.6 kg CO2e per traveller). The bus takes about 3h on the road over roughly 120 km. Bus figures come from our route data; train, flight and drive figures are our own estimates, not live prices.

Fares and times other than the bus figures are estimates for planning only - they are not offers or live prices. We don’t sell tickets; compare live prices with the providers further down this page.

Compare bus prices

Every site shows different prices for the same trip - compare at least two.

Partner links are sponsored: we may earn a commission if you book, at no extra cost to you. How we make money.

Other ways to plan Yogyakarta Semarang

Yogyakarta Semarang: questions

How long is the bus from Yogyakarta to Semarang?

The ride typically takes about 3h 00m for the 120 km journey, depending on traffic and border crossings.

How much does the bus from Yogyakarta to Semarang cost?

Typical fares start around $4 ($4–9 depending on how early you book and the operator).

Which operators run this route?

Compare live departures from FlixBus, BusBud, Omio, CheckMyBus and 12Go on this page - we don't sell tickets ourselves.

Other popular bus routes