Sopa de Tortilla (Traditional Mexican Tortilla Soup)
Sopa de Tortilla (Traditional Mexican Tortilla Soup) is a intermediate Mexican recipe that serves 6. 380 calories per serving.
Prep: 40 min | Cook: 45 min | Total: 1 hr 40 min
Cost: $17.30 total, $2.88 per serving
Ingredients
- 500 g Chicken pieces (bone-in, skin removed) (Legs, thighs, or breast; skin removed for less fat)
- 2 liters Water (For broth)
- 2 tsp Salt (To taste)
- 1.5 medium White onion (Divided (1 for broth, 0.5 for sauce))
- 4 large Garlic cloves (Divided (2 for broth, 2 for sauce))
- 1 sprig Fresh thyme
- 2 leaves Bay leaves
- 8 pieces Corn tortillas (preferably day-old) (Day-old for less oil absorption)
- 4 large Roma tomatoes (Very ripe)
- 1 large Chile ancho (Stemmed and seeded)
- 2 large Chile pasilla (Stemmed and seeded (1 for broth, 1 for garnish))
- 1 cup Vegetable oil (For frying tortillas and chiles)
- 1 small bunch Epazote (fresh) (Optional but traditional)
- 100 g Queso fresco (For garnish)
- 50 g Chicharrón (pork cracklings) (For garnish)
- 1 large Avocado (Sliced, for garnish)
- 100 ml Mexican crema (For garnish)
- 1 tsp Chicken bouillon powder (Optional, to taste)
Instructions
Prepare Chicken Broth
In a large pot, bring 2 liters of water to a boil. Add chicken pieces (skin removed), 1 medium onion (peeled and halved), 2 garlic cloves, 1 sprig of thyme, 2 bay leaves, and 2 tsp salt. Simmer uncovered for 35-40 minutes, skimming foam as needed. When chicken is cooked and broth is fragrant, turn off heat. Reserve chicken and broth; you'll use about 1.5 liters of broth for the soup.
Time: PT40M
Hydrate Dried Chiles
Remove stems and seeds from 1 chile ancho and 1 chile pasilla. In a saucepan, bring water to a boil, add the chiles, and simmer for 2 minutes. Turn off heat and let chiles soak for 10 minutes until soft.
Time: PT12M
Prepare Garnish Chile Pasilla
Slice the second chile pasilla into thin rings using scissors. In a frying pan, heat oil over medium-high. Fry chile rings quickly (about 10-15 seconds) until just crisp but not burnt. Remove immediately and drain on paper towels.
Time: PT5M
Cut Tortillas
Stack the tortillas and cut into thin strips (about 1/2 cm wide).
Time: PT5M
Fry Tortilla Strips
Heat 1 cup of oil in a large frying pan over medium-high. When hot (test with a tortilla strip; it should bubble), fry tortilla strips in batches until golden and crisp (about 2-3 minutes per batch). Remove with a slotted spoon and drain in a colander lined with paper towels.
Time: PT15M
Prepare Vegetables
Roughly chop tomatoes, remaining onion (0.5 medium), and 2 garlic cloves for blending.
Time: PT5M
Blend Soup Base
In a blender, combine chopped tomatoes, onion, garlic, hydrated chiles, and a splash of the chile soaking water. Blend until completely smooth.
Time: PT3M
Cook and Strain Sauce
Heat 2 tbsp oil in a large saucepan over medium. Pour in the blended mixture and strain through a fine mesh strainer, pressing solids to extract all liquid. Add a bit of water to the blender to rinse and add to the pan. Season with salt or chicken bouillon powder. Simmer, stirring occasionally, for 10-12 minutes until the sauce thickens and oil rises to the surface.
Time: PT15M
Add Broth and Epazote
Pour in about 1.5 liters of hot chicken broth. Add the epazote sprig. Simmer over medium to medium-high heat for 20-25 minutes to blend flavors.
Time: PT25M
Prepare Garnishes
Crumble queso fresco, slice avocado, break chicharrón into bite-sized pieces, and have Mexican crema ready.
Time: PT5M
Serve
To serve, place a handful of fried tortilla strips in each bowl. Ladle hot soup over. Top with queso fresco, chicharrón, avocado slices, fried chile pasilla rings, and a drizzle of crema.
Time: PT5M
Cleanup
Wash all pots, pans, blender, utensils, and wipe down counters. Dispose of used oil safely.
Time: PT15M
Nutrition Facts
- Calories
- 380
- Protein
- 18g
- Carbohydrates
- 38g
- Fat
- 18g
- Fiber
- 6g
Dietary info: Gluten-free, Nut-free, low-calorie, high-fiber
Allergens: Dairy (queso fresco, crema), Egg (if using some brands of crema), Pork (chicharrón)
Last updated: April 7, 2026






