(This post was updated in March 2019.)

Rooftop terrace at La Olla (where to eat in Oaxaca)

Rooftop terrace at La Olla

Oaxaca is my favourite city in Mexico! I love pretty much everything about it: its colourful colonial architecture, its climate, its people, its atmosphere, its cultural and artistic bent, and of course its FOOD.

As one of the top foodie spots in Mexico, the colonial centre doesn’t lack restaurants. One common “problem” is actually deciding where to eat in Oaxaca. After spending a total of 10 weeks in the city over a period of 13 years, I’ve compiled this mini-guide to help you with this task. It was tough, but someone had to do it. 🙂

(Note: All prices are listed in Mexican pesos – M$. As of March 2019, US$1 = M$19.5 and CA$1 = M$14.5.)

Meal times – when do people eat in Oaxaca?

Mexicans start the day with a coffee and perhaps a pastry, and don’t have their first real meal of the day until 11:00 am or so. Consequently, early risers may have trouble finding food early in the morning. (If you’re out and about at 7:00 AM, Café Brujula might be your best bet, although I find their food overpriced.)

The main meal of the day, la comida, is from about 2 PM until 4 PM, with the Mexican families rarely arriving before 3 PM. Thanks to the menu del día, usually offered on weekdays, you can fill yourself up for little money. I ate out every day for this meal!

With such a big meal taken so late, dinner is usually a much smaller affair. Many restaurants close by 6 or 8 PM since Mexicans often just snack at home. The more expensive restaurants and bars remain open until later, sometimes offering entertainment.

What are the special foods to eat in Oaxaca?

Oaxacan cuisine encompasses some of the best and most varied food in the country. More famously, Oaxaca is the home of mole, the generic name given to thick and complex sauces made from dozens of ingredients. Moles are so rich that unless you have stellar digestion, you may want to consume them in the afternoon (for comida) rather than in the evening before going to bed.

Chicken in an "estofado" mole sauce (Las Quince Letras, Oaxaca)

Chicken in an “estofado” mole sauce (Las Quince Letras)

Other typical foods of the region are tlayudas (Mexican pizzas) with toppings laid out on a large crispy tortilla (sometimes folded). I personally find them a little dry. Popular snack foods include quesillo, a type of stringy cheese, chocolate (sweet and crumbly, ideal for making hot chocolate) and, if you’re feeling adventurous, chapulines, which are basically fried grasshoppers. I would love to tell you that they taste like chicken, but I draw the line at eating bugs! Sorry. 🙂

A Mexican specialty called "alambre" (Don Juanito, Oaxaca)

A Mexican specialty called “alambre” – grilled meat and vegetables with cheese (Don Juanito)

Besides Mexican food, you can also find salads, seafood, sandwiches, pastas and pizza, and if you know where to look, “ethnic” food such as Indian, French, and Argentinian, even sushi!

Where to eat vegetarian/vegan food in Oaxaca

Vegetarians, and increasingly vegans, are well catered for in Oaxaca. Here are a few vegetarian and vegan-friendly places to get you started:

  • 100% Natural, Dr. Liceaga 115 – southern edge of Llano Park (healthy food, some Asian-inspired dishes)
  • Campane, Garcial Vigil 403 (Italian-inspired, several well-marked vegetarian dishes including crepes)
  • Calabacitas Tiernas (La Jicara), Porfirio Diaz 1105 (vegetarian or vegan menu del día for M$90)
  • La Biznaga, Garcia Vigil 512 (vegetarian options and sometimes vegetarian menu del día)
  • Hierba Dulce, Porfirio Diaz 311 (vegetarian with many vegan dishes – good fresh food, nice courtyard. Service a little slow but everything is made in house.)
Vegetable burritos at La Biznaga (Oaxaca)

Vegetable burritos at La Biznaga

Keep in mind that most places close on Sunday, and some also close on Monday or some random day of the week. Unless otherwise noted, all the places below are in the historical centre.

Where to eat breakfast in Oaxaca

I mostly self-catered for breakfast, as my AirBnB room and apartment both offered a kitchen and fridge. Typical Mexican breakfast food revolves around the staples of tortillas, refried beans, cheese, meat, and runny green and red sauces, with varying levels of spiciness. Go to any food market in late morning (20 de Noviembre, La Merced) and you can get your fill for a few dollars. Don’t expect people to speak English though.

Talking of markets, La Cosecha is an organic market located at Calle Alcala 806 (look for the big dragon alebrije) but it’s closed on Mondays and Tuesdays. The Rayón Pochote Organic Market is another permanent food court that can be found in the south of downtown on Calle Rayon 411, near the corner of Xicotencatl. Mercado La Merced, in the southeast part of town, is very popular with locals for weekend brunch. All three are good choices for Mexican breakfasts and lunches.

La Cosecha Organic Market (where to eat in Oaxaca)

La Cosecha Organic Market

Where to eat lunch (comida) in Oaxaca

When it comes to comida, you have a huge amount of choice. Most places offer a menu del día (also called comida corrida) which consist of two, three or four courses, with an agua fresca (flavoured water – like a diluted juice) for a set price. You can find those for as little as 50 pesos, but you get what you pay for.

For better quality and more satisfying meals, you’ll be paying between 70 and 150 pesos. The number of courses goes up with the price but always includes a soup or salad, and a main course. At the higher end of the scale you also get a drink (usually non-alcoholic), a small dessert or coffee, and perhaps even an amuse-gueule or a shot of mezcal (similar to tequila), another thing the Oaxaca region is famous for.

I had good food at all of these places (with my absolute favourites in red):

  • Cabuche, Hidalgo 1017 (menu del día on weekdays for M$100; interesting local specialties)
  • Casa del Tio Guero, Garcia Vigil 715 (one of my favourite restaurants for lunch or dinner. Filling lunch menu for M$98.)
  • Calabacitas Tiernas (La Jicara), Porfirio Diaz 1105 (several vegetarian choices, menu del dia for M$90.)
  • Las Quince Letras, Abasolo 300 (traditional Oaxaca food including moles; nice courtyard)
  • La Olla, Reforma 402 (4-course menu Mon-Fri for M$150; nice roof terrace.)
  • La Biznaga, Garcia Vigil 512 (slow food; lunch menu of soup, main, agua fresca, mezcal or pulque, coffee/tea  for M$150. Vegetarian choices.)
  • Don Juanito, M. Bravo 214 (mexican specialties at affordable prices; large portions.)
  • Las Cacerolas, Alcalá 1008A (set lunch for only M$70. Small family-style eatery.)
  • Nativo Cocina Tradicional, Xolótl 110 (set lunch for M$80; tasty but small portions)
  • Dos Corazones, Av. Benito Juárez 801 (very good and very large sandwiches along with salads, breakfasts, snacks and desserts. Sunny terrace near busy street)
  • Tortas La Hormiga, sandwich stall on the southeast corner of Park Jardin Conzati. Various toasted sandwiches for only M$24-29. Open 2 to 6 PM. Always seems to have a line-up.)
Chile en nogada, my favourite Mexican dish (Casa del tio guero, Oaxaca)

Chile en nogada, my favourite Mexican dish (Casa del Tio Guero)

Where to eat dinner in Oaxaca

For dinner, you are ordering à la carte, so meals tend to be more expensive. However, the servings will usually be larger.

Here are restaurants where I enjoyed nice meals at night. (You will notice that some are repeated from the lunch section.)

  • La Biznaga, Garcia Vigil 512 (great fish dishes, mole, soups)
  • Casa del Tio Guero, Garcia Vigil 715 (one of my favourite restaurants for lunch or dinner; try the chile en nogada.)
  • Campane, Garcia Vigil 403 (crepes, salads, pastas, burgers)
  • La Olla, Reforma 402 (local seasonal food; known for its moles. You may need a reservation to get a table on the roof terrace.)
  • Los Pacos, Abasolo 121 (one of the best spots for mole; cheaper than La Olla. Also has a location in Colonia Reforma neighbourhood.)
  • El Quinque, Hidalgo 218A (pastas, burgers, seafood, chicken, meat; M$70-150 for a main; big portions and delicious.)
  • El Sol y la Luna, Pino Suarez 304 (empanadas, salads, pastas, pizzas, steaks)
  • La Popular, García Vigil 519 (casual Mexican eatery which always seems busy. Very “popular” for a meal or a drink, especially on Sunday when many other places close down.)
  • Cabuche, Hidalgo 1017 (near Centro Cultural San Pablo with its free concerts so it fills up at night. Try the pozole for something quick and filling.)
The crepes at Campane make a perfect light dinner (Oaxaca)

The crepes at Campane make a perfect light dinner

Best restaurants in Oaxaca

This is a budget blog, so all my recommendations so far have been for reasonably-priced restaurants. However, if you’re looking for a fancy place to splurge, the following restaurants are some of the top places to eat in Oaxaca and come highly recommended (both by people I met, and TripAdvisor reviews). I did get to try Los Danzantes and El Destilado on my most recent trip (2019) and the food was both beautiful and delicious, accompanied by lovely service.

  • Los Danzantes, Alcala 403
  • Casa Oaxaca, Constitucion 104A
  • Catedral, Garcia Vigil 105
  • El Destilado, 5 de Mayo 409
  • Mexita, Dr. Frederico Ortiz Armengol 105 (Colonia Reforma, northeast of downtown)
Inside Los Danzantes, at lunch (where to eat in Oaxaca)

Inside Los Danzantes’ covered courtyard, at lunch

Looking for a snack?


If you’re looking for a pastry, or a loaf of bread, you will find many bakeries scattered around downtown. However, my favourite is without a doubt Boulenc at Porfirio Diaz 207, which sells rich pastries, dense breads, focaccia, and huge sandwiches. Yes, it’s a bit pricey, but the quality is high. They have now opened a restaurant next door to the bakery. I didn’t try it but I saw a line-up stretching onto the sidewalk one morning!

A much cheaper alternative is Pasteleria-Panaderia Reforma, on the corner of Pino Suarez and Dr. Liceaga (near Parque El Llano) which has nice pastries (including scones) for only M$7-12 a piece.

Ice cream

Nieve at Plaza Soledad (Oaxaca)First of all, let me say that Oaxaca’s “ice cream” is not gelato. It is more similar in texture and taste to sorbet, and is called nieve (snow). You can find it in many small shops, including two on Alcala just north of Santo Domingo: Museo de las Nieves and Nieves Manolo (which I think belong to the same company).

Plaza Soledad (next to Soledad church) offers a pleasant square surrounded by several open-air nieve shops, cheaper than those on Alcala.  You can watch the balloon sellers and musicians, then visit both Soledad and San Jose churches. Try unusual nieve flavours like tuna (cactus fruit), mezcal, or elote (corn).

What and where to drink in Oaxaca

Mexico produces a surprising number of beers. You can find them in bars and restaurants starting at M$30, or in stores starting around M$14 for a can/bottle. Don’t limit yourself to just Corona and Dos Equis!

Mexico also makes wine, surprisingly. Some of it is not half bad. Red wine is often served at the wrong temperature though (either super cold or way too warm). A good bet, if you’re curious to sample some Mexican wines is Tastavins, a tapas and wine bar located at Murguia 309. They’re open from 1:00 PM to midnight (closed Sundays).

To get a view with your drink, consider Café Praga, Allende 106A. They use heating lamps when it gets chilly on the rooftop. A large margarita will set you back M$79.

Other good choices for great margaritas are La Biznaga and Zandunga (try the tamarind margarita) around the corner on Garcia Vigil.

Margarita at Biznaga (Oaxaca)

Having a margarita at Biznaga

I’m no expert on mezcal, but you can hardly walk a block in the centre of Oaxaca without seeing a shop selling mezcal, a mezcaleria (bar to drink mezcal) or advertisement for tours to a mezcal factory. Bars and many restaurants also serve it. Go make your own discoveries!

For coffee, see my other article about the best Coffee in Oaxaca.

There, you have it. All my favourite affordable places to eat in Oaxaca. Buen provecho!

Print Friendly, PDF & Email