(This post contains affiliate links, for more information read this privacy policy)
Mexico is an incredible country and if you haven’t visited yet, then I hope you are planning your Mexico itinerary to this beautiful country this very second. Of course, you could spend months or even years in Mexico and still discover something new every single day, but then most people don’t have that much time available to travel. So here is a 3-Week Mexico itinerary instead!
This is based on my 3-week trip that I had spent in Mexico, only with minor changes of things that I would have done differently. The goal of this itinerary was to fit big cities, nature, history and, of course, some beaches into one itinerary, while also not moving to a new place every single day. But let’s get started!
Here is a quick summary of my 3-Week Mexico itinerary:
Day 1-4: Mexico City
Day 4-6: Puebla
Day 6-8: Oacaxa City
Day 9-12: Puerto Escondido
Day 13-15 Merida
Day 15-17: Valladolid
Day 17-18: Rio Lagartos
Day 18-20: Tulum
Day 20-21: Playa del Carmen
Day 21: Mexico City
First stop: Mexico City (3 nights)
Day 1: Arrival in Mexico City
First, of course, you need to arrive in Mexico. I had arrived late in the evening, so the first day was spent, just making my way from the airport to the hotel, getting some food and water and getting some much-needed rest before a full day of sightseeing the next day. If you arrive a bit earlier, of course, you can already spend some time exploring the neighbourhood you are in.
Day 2: First day in Mexico City
The best way to get to know a new city is often to just start off with a walking tour. And Mexico City has plenty of them! These tours can give you a good idea of the highlights of the city and its history. And you’ll also get a better idea after what is there to do, what you want to do, and what to consider in general.
Therefore, I’d recommend starting off with a free walking tour. After, head to the Sears department store opposite the Palacio de Bellas Artes. Here, you can find a café in one of the upper floors with amazing (and free) views of the famous cultural centre. You can also go inside.
After, just walk around the city centre, get familiar with the area and, of course, try some amazing Mexican food.

Day 3: Fly over the archaeological city of Teotihuacán in a hot air balloon
One of my absolute favourite experiences in Mexico was to go on a hot air balloon flight in Teotihuacán. The famous archaeological city is a must-see destination when visiting Mexico City, but rather than just visiting it by foot, you also have the chance to view the impressive pyramids from above.
The tour starts early in the morning, so you will get to be on the hot air balloon just after sunrise. After about a 50-minute hot air balloon ride, you later have the opportunity to also walk around the archaeological city by yourself for 3 more hours before heading back to Mexico City.
You will end up getting back to Mexico City in the late afternoon, so there is still time to spend some more time wandering around Mexico City after that.
Read all about the hot air balloon tour and my experience with it!



Second stop: Puebla (2 nights)
Day 4: Visit Torre Latinoamericana in Mexico City and take a bus to Puebla
Before leaving Mexico City, head to Torre Latinoamericana, a 166m high skyscraper right in the historic centre. On the upper floors there is a museum and a viewing platform from where you can get an incredible 360 degrees view of the entire city.


Then head to the bus station in Mexico City and take a short 2-hour bus ride to Puebla: The second stop on this 3-Week Mexico itinerary. No need to prebook this beforehand, as the bus goes quite frequently throughout the day.
After checking in your at accommodation, spend the rest of the day wandering around the city centre of Puebla. Also make sure to check out Calle de los dulces. A street known for lots of shops where you can buy candy and sweets.
And my restaurant recommendation for the night would be: Comal in Puebla. This was one of my absolute favourite restaurants I visited while in Mexico, with great views of the cathedral on the main square if you sit upstairs by the window.


Day 5: Discover Puebla and Cholula
Start off your day in Puebla with a bus tour that takes you through the amazing city centre of Puebla. The tourist bus departs right at the main square and is difficult to miss. It will take you up the hill for a quick stop and some great views of the city of Puebla. After, you can check out some museums, cathedrals, or markets in the city.
Puebla is a beautiful city, but its main highlights can be seen within a couple of hours, so I recommend spending the second half of the day in Cholula, which is a city nearby. You can easily take a 25-minute Uber ride there. This might surprise you, but one of Mexico’s biggest pyramids can actually be found in Cholula. Walk all the way up, and you can find a colourful yellow church and stunning views of the area and nearby volcano.


Where to stay in Puebla? The hotel I stayed in was actually my favourite hotel during this whole trip, make sure to stay at Hotel Adante! The rooms were absolutely beautiful!
Third stop: Oaxaca City (2 nights)
Day 6: Travel to Oaxaca City and check out the city centre
There is another travel day coming up. Have some breakfast in Puebla, stack up on some snacks and take a 5-hour bus to Oaxaca City. After arriving, check out the beautiful city centre, one of the best things to do in Oaxaca City, and try some Tlayudas, a traditional Oaxacan street food.
Day 7: Day trip Hierve el Agua (+ Mezcal tasting)
About 70km East of Oaxaca City, you can find Hieve el Agua, rock formations created by fresh water springs. This beautiful natural attraction is one of the top places to visit in the state of Oaxaca. Other than natural pools where you can swim in and incredible nature, you get to have the most stunning views overlooking the valley.
However, getting to Hierve el Agua can be tough. While it is possible to rent a car and organise a trip there yourself, the road leading up and down the mountains is long and steep. But luckily there are a lot of day trips going to Hierve el Agua, combining a trip there with other locations nearby as well.


Fourth stop: Puerto Escondido (3 nights)
Day 8: Visit Monte Alban and take the night bus to Puerto Escondido (1 night)
Check out of your accommodation, leave your luggage at the hotel or another storage place and after getting some breakfast, take a trip to Monte Alban. Monte Alban is a large pre-Columbian archaeological site near Oaxaca City. It is located up a hill, so other than impressive ruins, you will also get some incredible views of the city. In the evening, it is time for a long bus ride.
Even though Puerto Escondido is only about 260 km away from Oaxaca City, it can take you quite a while to travel between the two destinations. There are mountains along the way and if you are planning on travelling by bus you should not forget to take some travel sickness pills in advance. There is a direct shuttle that will travel right through the mountains and takes around 6-7 hours. And there is a night bus as well that will go all the way around and therefore take around 12 hours. The night bus is operated by ADO, and these buses are pretty comfortable. So if you want to travel over night and save money on a night of accommodation, I’d recommend taking the nighbus. There is also an option to fly!

Day 9: Spent the day at the beach in Puerto Escondido and go surfing
After now more than a week of cities and travelling between places, it is time for a more relaxed beach day. There are multiple beaches in Puerto Escondido, some busier than others. It is also a great place to surf, and you can rent surf boards near the beach. Not all beaches are good for swimming through. The current can be quite strong.
So depending on what you would like to do, better to do some research on which beaches are safe for swimming. Finish a relaxed day close to the beach with some nice dinner and cocktails.
Day 10: Go on a boat tour and spot some dolphins
One popular activity in Puerto Escondido is to go on a boat tour to spot some dolphins. There are dedicated dolphin tours that you can book at your hostel or at any tour desks. It’s amazing to see dolphins swimming and jumping around in the ocean. And if you are lucky, you also get to spot some other animals, such as sea turtles or sting rays.
The tour leaves early in the morning, so you still have most of the day for some further exploring of the town. You can also go on another tour in the evening to swim with bioluminescent, which is also a popular activity to do in Puerto Escondido.


Day 11: Rent a scooter, discover the beaches and release a sea turtle
While you can get from one place of the main street to another with collectivos, the best way to get around the town and to discover some less crowded places is to travel by scooter. You can easily rent a scooter for a day (or multiple) and discover all the places at your own pace.
While you might have found the main beach quite crowded, there are some other more peaceful beaches as well, such as Bococho beach. It’s a beautiful beach, so highly recommend coming here during the day, after definitely make sure to come back here in the evening to release a sea turtle into the sea. One of the most incredible experiences you will have during this 3-Week Mexico trip.
Here you can read all about it: Releasing a sea turtle in Puerto Escondido.


Day 12: Take the night bus back to Oaxaca City + fly to Merida (1 night)
And it’s time for another night bus back to Oaxaca City. I actually did not do this, I took the 12 hour day-bus, and let me tell you that was one of the worst decisions I have ever made. Just don’t! Take the night bus instead, sleep through the bus trip, and don’t waste your entire day in the bus. Of course, here you also have the option again to take the collectivo shuttle or fly.
Since the bus will be in the evening only, you still have almost an entire day to relax in Puerto Escondido before a big travel night and day ahead. Once you arrive in Oaxaca City, take a flight to Merida, it’s time to discover Yucatán.
And if you have the possibility, I would recommend renting a car at the airport in Merida for your time in Yucatán. This is what we did as well. You can then return it at the Cancun airport later on, which worked flawlessly.
So keep in mind that the rest of this Mexico itinerary now was done by car, but I’m sure it will also be possible to follow with tours and shuttles, but then you’d might need to plan in some extra time.
Fifth stop: Merida (2 nights)
I just wanted to point out that Merida probably was my favourite city I visited during this 3-week Mexico itinerary. The weather was incredible, I always felt really safe, even walking around at night, and while it is small enough to get familiar with the city centre very quickly, there is so much to do in and around Merida.
Day 13: Spend the day in Merida
Merida is the capital city of Yucatán and also its largest city. This colonial city has both Spanish and Mayan influences and the most incredible architecture. While you are discovering the city, make sure to check out Palacio de Gobierno del Estado Yucatán, where you can find impressive murals covering the history of the Yucatán peninsula.
The local market (Mercado San Benito) is also worth a visit, as well as Plaza Grande, the heart of Merida.


Day 14 Visit cenotes near Merida
If you didn’t know, one thing that Yucatán is famous for are cenotes, which you can find pretty much anywhere in Yucatán! In fact, there are at least 6000 different cenotes in Mexico! Cenotes are underground caves or chambers filled with water. They are the perfect place to go swimming, hang out, and enjoy the nature around.
So check out some nearby cenotes and spend some time in nature. There are also organised tours that will stop at some of the cenotes.

Next stop: Valladolid (2 nights)
Day 15: Walking tour in Merida, visit the Mayan museum and drive to Valladolid
If you haven’t done so already, you might still want to do a walking tour before leaving Merida, to learn more about its history. Grab some lunch in Merida after and head to Valladolid next. The drive takes a bit more than 2 hours. However, on the way I’d recommend stopping at the Mayan museum in Merida, to learn more about the history and traditions of the Mayans.
And fun fact, near the museum you can find a Costco store, which has a cenote in the car park. Also, worth stopping here.
Vallodid is located pretty central within the Yucatan peninsula, which makes this small, beautiful city a perfect base to discover nearby areas. It is about a two-hour drive away from MerĂda and the city itself it also definitely worth a visit!
Use the rest of the day to discover all the things to do in Valladolid, such as visiting the beautiful main square, visiting Convento de San Bernardino de Siena, having lunch at a restaurant with a cenote in the back or trying some local Yucatán dishes.

Day 16: Visit Chichen Itza and spent some time at cenotes
From Valladolid, it is only about a 50-minute car ride to Chicken Itza, one of the seven new world wonders! And while there have already been a few archaeological sites included in this 3-Week Mexico itinerary, you definitely shouldn’t miss out on a visit to Chichen Itza!
If you are with the car, make sure to arrive early in the morning, as it will get insanely busy throughout the day, and you want to arrive before the tourist buses arrive at the site. Once you are there, you have the chance to arrange a tour with a guide or just walk around the area yourself. But in this case, I’d definitely recommend, that you visit the Mayan museum in Merida first, to learn more about the Mayans beforehand.
Spend a few hours at Chichen Itza and then check out some cenotes in the area on the way back to Valladolid.


Seventh stop: Rio Lagartos (1 night)
Your next stop will be Rio Lagartos, a small fisher town, about one and a half hours North of Valladolid.
Day 17: Watch some flamingos and spot some pelicans in Rio Lagartos
Most people opt to visit Rio Lagartos as part of a day trip, and why wouldn’t you? You might think that other than going on a boat tour around its lagoon, there isn’t so much to do in Rio Lagartos.
And while that might be true, I would still recommend staying a night in Rio Lagartos. Most tourists will leave in the evening, and with only a handful of hotels, you get to experience the place being completely empty in the evening in morning. The lagoon is beautiful, there are lots of amazing birds, and it was just a really incredible experience in general to be honest. So I’d highly recommend staying for a night!
And what is there to do in Rio Largartos during the day? There are many boat tours taking you around the lagoon. The most popular ones take you to see wild flamingoes, which was amazing. There are also crocodile tours (also night tours) and you are sure to spot many cool birds and beautiful nature along the ride.

Eighth stop: Tulum (2 nights)
Day 18: Spent the morning in Rio Lagartos and drive to Tulum
I’d suggest still spending the morning in Rio Lagartos until you have to check out of your accommodation. Make use of the time before all the day tourists arrive and walk along the lagoon promenade and visit Sendero Petén Mac where you can spot some crocodiles.
You can also go for another boat tour, before making your way to Tulum in the afternoon. I don’t think there is much to do in Tulum itself, but one thing they do have is very nice accommodation. So maybe you just want to spend the rest of the day relaxing, checking out the area and enjoying some nice dinner.
Day 19: Day trip to the monkey reserve and cenotes in Coba
Personally, after visiting so many amazing places throughout this Mexico itinerary so far, Tulum was quite the disappointment. Just felt like an influencer town with lots of Western food. So instead of spending the whole day in Tulum, I’d recommend getting out of Tulum and heading to Coba instead.
Here you can visit the Punta Laguna Monkey reserve, where you can get a guide to take you around the area and hopefully spot some monkeys and other wildlife. There are also some more Mayan ruins you can visit in Coba, as well as many beautiful cenotes around. Such as cenote Choo Ha, which we decided to visit.


Ninth stop: Playa del Carmen or Cancun (1 night)
Day 20: Drive to Playa del Carmen/Cancun with a stop at the beach
I honestly would avoid Playa del Carmen if you can. We only stayed there for a night as we wanted to be closer to Cancun airport before the flight back to Mexico City the next day. But it’s just an expensive party place and by far my least favourite place during this trip.
But if you are driving up from Tulum, there are some beautiful beaches along the way, so I’d suggest stopping somewhere along the way. Maybe visiting a few more cenotes as well, and just arriving in Playa del Carmen or Cancun in the evening.


Day 21 Fly home from Cancun (or fly back to Mexico City and spend one more night there)
It is usually cheaper to fly in and out of the same city, so you probably have to go back to Mexico City eventually. If not, and you have a flight out of Cancun, then that makes it easier and you can also just fly to your next destination from Cancun.
However, I really liked going back to Mexico City in the end, as Playa del Carmen and Tulum were a little disappointing, and I really wanted to spend another day in a place that didn’t feel like a party tourist destination.

Back in Mexico City (1 night)
Back in Mexico City, depending on how much time you have before your flight home, either revisit some places you really wanted to see again or look for a new area in the city you would want to explore, before departing on your flight home. Or on a flight to your next destination!
And this concludes my 3-Week Mexico Itinerary, exactly how I travelled around as well when I visited Mexico. Let me know if you have any questions.
Have a good day!


