Real-Deal Tortilla Soup Recipe

Great tortilla soup starts with great broth and lots of vegetables.

A bowl of tortilla soup with lots of herbs and avocado as garnish.

Serious Eats / J. Kenji López-Alt

Why This Recipe Works

  • If you don't start with homemade chicken broth, add flavor and body to store-bought broth with some bones and aromatics.
  • When in season, fresh corns and their cobs add another dimension to the soup.
  • Black beans make it a heartier soup.

As a kid who only ever ate tortilla soup in various gringo-fied Mexican-ish restaurants on the Upper West Side and perhaps the occasional New Jersey strip mall, I figured the dish was about as authentically Mexican as ranchero burgers and fried ice cream (A.K.A. not at all). I was right and wrong.

Certainly, the jarred-salsa-watered-down-with-chicken-broth versions I ate garnished with fried tortilla strips, avocado, and not a hint of chile were in the Mexican't camp. But there are more authentic, more complex, more compelling versions of the dish.

According to a 2005 Los Angeles Times article, the exact origins of the dish have not actually been pinpointed, but it stemmed from somewhere in the Mexico City area, making its way North to California and Texas by the mid-20th century. By the 70's and 80's, it was a staple on Mexican and Tex-Mex menus all over the southern United States.

The most basic version starts as good chicken broth enriched with a purée of roasted tomatoes and onions, garnished with picked chicken meat and crunchy fried tortillas. For my version, I start by doctoring up some store-bought broth with a few aromatics and chicken bones (you can, of course, start with homemade broth and it'll be all the better). A 30-minute simmer is enough to lend the broth some extra body and flavor and to just-cook the chicken breast meat so that it remains tender and moist when you shred it.

Fresh corn is not always an ingredient in the soup, but I find it impossible to resist when it's in season. I add the corn cobs to the simmering stock for flavor (read more on that technique here).

Rather than the canned tomatoes that many recipes call for, broiling a few whole ripe tomatoes while the stock simmers gets you a much deeper, richer, smokier flavor as bits of charred tomato skin make their way into the soup. Similarly, using chile powder might be alright in a pinch, but for maximum fruity-rich chile depth, I use whole dried ancho chiles simmered in the broth.

Once the tomato-chile-broth mixture is cooked, it's a simple matter of sautéing a few more aromatics—onion, garlic, Poblano pepper, the corn kernels, and a pinch of cumin and oregano—adding the broth back, picking the chicken meat, and serving, along with a handful of fresh cilantro (or epazote, if you can find it), scallions, diced avocado, and fried tortilla strips (yes, you can use good chips). For an extra-hearty soup, a can of black beans does nicely.

August 2012

Recipe Details

Real-Deal Tortilla Soup Recipe

Active 30 mins
Total 60 mins
Serves 4 to 6 servings

Great tortilla soup starts with great broth and lots of vegetables.


  • 2 quarts low-sodium canned or homemade chicken stock

  • 2 bone-in, skin-on chicken breast halves, about 1 pound total

  • 1 large onion, split in half, plus 1 large onion, finely diced (about 1 1/2 cups)

  • 2 ears of corn, shucked, kernels removed from cobs, milk scraped from empty cobs

  • 2 medium garlic cloves, whole, plus 2 medium cloves garlic, minced (about 1 tablespoon)

  • 3 whole dried ancho chiles, seeds and stems removed, flesh roughly torn into strips

  • 1 1/2 pounds ripe tomatoes, split in half

  • 2 tablespoons vegetable oil

  • 1 Poblano pepper, seeded and finely diced (about 1 cup)

  • Kosher salt and freshly ground black pepper

  • 1 tablespoon ground cumin

  • 2 teapoons dried oregano

  • 1 (15-ouncecan black beans drained and rinsed

  • 1 cup fresh cilantro leaves

  • 1 tablespoon corn flour

To Serve:

  • Diced avocado

  • Fried tortilla strips or chips

  • Chopped scallions

  • Lime wedges


  1. Place stock, chicken, split onion, empty corn cobs and scraped corn milk, 2 whole garlic cloves, and chiles in a large saucepan. Bring to a boil over high heat, then reduce to a simmer. Cook for 30 minutes, turning chicken occasionally, and topping up with water as necessary. Discard onion, corn cobs, and garlic cloves, and transfer chicken to a large plate. Set aside. When cool enough to handle, shred chicken into strips.

  2. Meanwhile, adjust rack to 4 inches below broiler element and preheat broiler to high. Place tomatoes cut side-up on a foil-lined broiler pan and broil until charred on top surface and completely softened, about 15 minutes.

  3. Combine roasted tomatoes, stock, and re-hydrated chiles in the bowl of a blender. Blend on high speed until completely smooth and set aside.

  4. Heat oil in a large saucepan over medium-high heat until shimmering. Add onions, peppers, and corn kernels. Season with salt and pepper, and cook, stirring frequently, until onions are softened but not browned, about 5 minutes. Add minced garlic and cook, stirring constantly, until fragrant, about 30 seconds. Add cumin and oregano and cook, stirring frequently, until fragrant, about 30 seconds longer. Add beans and half of cilantro and stir to combine. Pour tomato-chile stock into the pot through a fine-mesh strainer.

  5. Whisk corn flour into soup. Bring to a simmer, and season to taste with salt and pepper. Let cook, stirring frequently, until onions and poblanos are totally softened, 5 to 10 minutes.

  6. Serve soup, garnished with chicken, avocado, fried tortilla strips, scallions, lime wedges, and remaining cilantro.

Nutrition Facts (per serving)
426 Calories
16g Fat
43g Carbs
31g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 4 to 6
Amount per serving
Calories 426
% Daily Value*
Total Fat 16g 21%
Saturated Fat 3g 13%
Cholesterol 50mg 17%
Sodium 1448mg 63%
Total Carbohydrate 43g 16%
Dietary Fiber 13g 46%
Total Sugars 7g
Protein 31g
Vitamin C 40mg 201%
Calcium 115mg 9%
Iron 5mg 30%
Potassium 1404mg 30%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)