Scooter Route from Canggu to Ubud: 35 km, Village Roads & the Best Stops
By the SiapPergi Editorial Team · Published · 6 min read

Canggu and Ubud are two of Bali's favourite places, and many travellers ride back and forth between them. The ride from Canggu to Ubud is enjoyable if you pick the right route and leave at the right time.
Two route options
| Route | Via | Pros | Cons |
|---|---|---|---|
| Town route | Kerobokan, Denpasar, Batubulan | Wide roads, many petrol stations | Jammed at rush hour |
| Village route | Mengwi, Sayan | Beautiful rice fields and villages | Narrow, poorly lit at night |
Google Maps usually picks a mix of both. Follow the most sensible direction and avoid lanes that are too small.
Trip tips
- Leave before 09:00 to avoid traffic in Kerobokan and Denpasar.
- Watch for trucks and buses on Jalan Raya Batubulan.
- Use official parking when you reach Ubud; the centre is busy with many one-way streets.
- Keep a raincoat under the seat, as it rains more often in Ubud than in Canggu.
Stops along the way
On the village route you can stop at Mengwi's rice fields, Pura Taman Ayun, or a café overlooking the Sayan valley. See also scooter rental in Ubud, the Kuta to Ubud route and the Gianyar waterfall route.
In Ubud, Jalan Monkey Forest and Jalan Hanoman are one-way. Follow the signs so you don't go round in circles.
Good bikes: a Vario 125/160 or an NMAX for two. Every option at SiapPergi — Bali scooter rental.
Ready to rent a scooter?
See estimated prices by area & model, then book on WhatsApp — the final price is confirmed before you pay.
Other areas & models:
Frequently asked questions
How far is Canggu from Ubud?
About 35 km, 1–1.5 hours by scooter.
Which route is best?
The Mengwi–Sayan village route for views; the Denpasar–Batubulan town route for wider roads.
Can I do it as a day trip?
Yes. Many travellers from Canggu leave in the morning and come back before dark.
Which scooter suits it?
A Vario 125/160 solo; an NMAX or PCX for two.
This article follows the SiapPergi editorial policy: facts are checked, prices are given as ranges, and mistakes are corrected. Spotted something wrong? Report a correction.