9-day volcano-hopping madness from Mount Batur to Kawah Ijen, 580 km of steep climbs, coffee plantations, rice terraces that look Photoshopped, sulfur miners at midnight and way too many cigarettes offered by locals who think you’re insane (they’re right)
I rode this in July (dry season, perfect weather, still rained on Java because volcanoes do what they want). You need decent legs, 34 mm tires minimum, and zero fear of 18% gradients with buses behind you.

Day 1 · Ubud to Kintamani (Batur caldera) (55 km, the cruel wake-up)
Start in Ubud, eat banana pancake, regret it when the climbing starts after 10 km. Road to Kintamani is 1,200 m gain, no mercy, switchbacks forever. Arrive at the caldera rim shaking, lake below looks fake turquoise. Camped wild on black sand beach inside the crater (ask the temple guy, he charges 50k rupiah and gives you coffee).
Day 2 · Batur rim to Bangli & Sidemen (68 km, rice terrace heaven)
Sunrise over Batur at 5:30, worth waking up. Then downhill 1,000 m into the best rice terraces you’ve ever seen, bright green, mirror water, old ladies laughing at your loaded bike. Sidemen is quiet valley, slept in a bamboo bungalow with volcano view for 250k, felt like cheating.
Day 3 · Sidemen to Amed (75 km, coast & black sand)
Long day, first half rolling through small villages, kids yelling “hello mister!”, then climb over the northeast ridge and drop to the ocean. Amed is chill fishing village, snorkeling with turtles 50 m from shore. Camped on the beach, fell asleep to waves.
Day 4 · Amed to Gilimanuk ferry & Java (90 km + ferry, the boring bit)
Flat coastal road along north Bali, hot, lots of trucks. Ferry to Java 45 minutes, then 20 km to Ketapang, slept at a losmen near the station, 150k, fan room, instant noodles for dinner.
Day 5 · Ketapang to Kalibaru (82 km, coffee & trains)
Java starts with railway-side riding, locals wave from trains, cool vibe. Then turn into highlands, coffee and cacao plantations everywhere, air smells sweet. Kalibaru has a plantation homestay, slept in old Dutch house, ate 12 times a day.
Day 6 · Kalibaru to Jember & climb to Prajekan (105 km, the long hot one)
Longest day, flat first half through teak forests, then climbing starts again. Arrive Prajekan (tiny Muslim village), everyone stared like I was an alien. Slept at the mosque courtyard (they offered, super nice people).
Day 7 · Prajekan to Bondowoso (70 km, getting high)
Steady climb all day, air gets cooler, pine trees appear, feels like Europe suddenly. Bondowoso has a decent hotel with cold shower, ate soto ayam three bowls, legs destroyed.
Day 8 · Bondowoso to Ijen plateau (55 km + midnight blue flame)
Afternoon ride to the coffee village at 1,400 m, then sleep early. Wake up 11:30 pm, ride 15 km up to Ijen parking (1,900 m), lock bike, hike down into the crater with miners. Blue fire at 2 am, insane turquoise lake, sulfur smoke choking you, miners carry 80 kg baskets for $10 a day. Sunrise from the rim is top 3 of my life. Rode back down with frozen fingers.
Day 9 · Ijen to Ketapang train or keep riding (45 km downhill victory)
All downhill to the coast, 1,800 m drop, screaming fast, smiling the whole way. Train from Banyuwangi back to Bali if you’re done, or keep riding to Bali Barat National Park if you still have legs (I took the train, zero shame).
Quick survival notes
Traffic: Java drivers are crazy, lights front and back even daytime
Gradients: some 18-20% ramps, bring 1:1 gearing or cry
Water: villages every 10-15 km, always someone selling Aqua
Food: warungs everywhere, nasi goreng + teh manis = life
Money: cash only outside cities, ATMs in Bondowoso
Tires: 34-38 mm, volcanic glass shreds narrow ones
Volcano bonus: bring mask for Ijen sulfur, the cheap paper ones don’t work
People: friendliest humans on earth, you’ll be offered coffee 50 times a day
Nine days of climbing volcanoes, eating rice by the plate, breathing sulfur, watching sunrise from craters, and realizing your legs can do way more than you thought.
If you love suffering with a view, this is your ride.
Sampai jumpa di gunung berikutnya!
Grab your bike. Pick a route.
Let’s ride it together.