There are 2 ways to get from Cagayan de Oro to Dinagat Island by bus, ferry or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.
Bus, ferry • 12 h 7 min
$16 - $28
1 alternative option
Drive, ferry • 8 h 20 min
$31 - $50
Questions & Answers
The cheapest way to get from Cagayan de Oro to Dinagat Island is to bus and ferry which costs ₱850 - ₱1,600 and takes 12 h 7 min.
The quickest way to get from Cagayan de Oro to Dinagat Island is to drive and ferry which costs ₱1,600 - ₱2,700 and takes 8 h 20 min.
The distance between Cagayan de Oro and Dinagat Island is 220 km.
The best way to get from Cagayan de Oro to Dinagat Island without a car is to bus and ferry which takes 12 h 7 min and costs ₱850 - ₱1,600.
It takes approximately 12 h 7 min to get from Cagayan de Oro to Dinagat Island, including transfers.
What companies run services between Cagayan de Oro, Philippines and Dinagat Island, Philippines?
There is no direct connection from Cagayan de Oro to Cagdianao. However, you can take the bus to Butuan, take the bus to Surigao, take the walk to Surigao, take the ferry to San Jose, Dinagat Island, then take the taxi to Cagdianao. Alternatively, you can take the bus to Opol, take the drive to Surigao, take the ferry to San Jose, Dinagat Island, then take the drive to Cagdianao.
Ferry from Surigao to San Jose, Dinagat Island
- Ave. Duration
- 1 h 30 min
- 3 times a day
- Estimated price
Want to know more about travelling around Philippines
Rome2rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.