Cancun to Puerto Vallarta: Road Trip Guide & Distance

1185.8 miles 1908.3 km · straight line
1525.3 miles actual route 2454.8 km · driving distance
28h 56min estimated drive time
MXN 3510 - MXN 4320 estimated fuel cost
~2h 53min flight time
272° W bearing direction

How far is Cancun from Puerto Vallarta?

The distance from Cancun to Puerto Vallarta is 1185.8 miles (1908.3 km) as the crow flies. Puerto Vallarta is located W of Cancun. By car, the driving distance is approximately 1525.3 miles, taking about 28h 56min. A direct flight would take roughly 2h 53min. Both are located in Mexico.

This is a serious multi-day road trip! We strongly recommend breaking this journey up with an overnight stay to ensure you arrive safely and refreshed. Since you'll be heading mostly West, pack a good pair of sunglasses if you plan to drive during the late afternoon to avoid the harsh sun glare. For a trip of this distance, flying is significantly faster. However, driving offers the flexibility to explore stops along the way.

Coordinates come from public place data for Cancun and Puerto Vallarta. The driving distance uses an OSRM road-route result when route data is available. Fuel, flight, bus, and train values are planning estimates and can change by date, provider, road closures, and border rules.

How to Get from Cancun to Puerto Vallarta

Method Time Est. Cost Best For
Drive 28h 56min MXN 3510 - MXN 4320 Flexible stops
Fly ~2h 53min $80–200* Speed
Bus ~34h 43min $122–$229* Budget
Train ~37h 37min $183–$534* Comfort

Suggested Stops Between Cancun & Puerto Vallarta

Quick Facts

Cancun
21.16°N, 86.85°W
America/Cancun
10m elevation
Puerto Vallarta
20.65°N, 105.23°W
America/Mexico_City
2m elevation
Explore more routes from Puerto Vallarta

Did You Know?

  • At walking speed (3 mph), it would take about 395 hours of non-stop walking
  • By bicycle at 12 mph, the journey would take roughly 99 hours
  • You could travel this distance about 21 times to circle the Earth's equator
Data Sources & Estimate Notes GeoNames · OpenStreetMap · OSRM