Quick Recipe Version (TL;DR)
Quick Ingredients
- 12 crispy tostada shells (5–6 inch)
- 1 lb (450 g) lean ground beef
- 2 (15 oz / 425 g) cans pinto or black beans, drained and rinsed
- 1 small yellow onion, finely chopped; 4 cloves garlic, minced
- 2 tbsp tomato paste
- 3 tsp chili powder, 1½ tsp ground cumin, 1 tsp smoked paprika, 1 tsp dried oregano
- 2 tbsp neutral oil, plus more as needed
- 1/2 cup low-sodium beef or chicken broth (or water), plus 1/2 cup water for beans
- 1/2 cup sour cream, 1/4 cup mayonnaise
- 1–2 chipotle peppers in adobo + 1 tbsp adobo sauce
- 1 tbsp fresh lime juice, kosher salt, black pepper
- 2 cups finely shredded romaine or iceberg lettuce
- 1 cup shredded Mexican blend or cheddar-jack cheese
- 1/2 cup diced tomatoes, 1/4 cup diced red onion, 1/4 cup chopped cilantro
- Lime wedges, optional sliced jalapeños or avocado for serving
Do This
- 1) Stir together sour cream, mayonnaise, minced chipotle, adobo, lime juice, a pinch of salt, and a little water until drizzleable. Chill.
- 2) Cook onion in oil over medium heat 3–4 minutes; add garlic, then ground beef. Brown, breaking it up, 6–8 minutes.
- 3) Stir in tomato paste and spices; cook 1 minute. Add broth, simmer 3–5 minutes until thick. Season with salt and pepper.
- 4) In another pan, cook garlic briefly in oil, add beans, water, salt, and cumin. Simmer 5–7 minutes, then mash to a thick, spreadable consistency.
- 5) Warm tostada shells in a 350°F (180°C) oven for 3–5 minutes. Prep lettuce, tomatoes, onion, cilantro, and cheese.
- 6) Build stacks: tostada + beans + beef + cheese; repeat once more; top with lettuce, tomatoes, onion, cilantro, more cheese.
- 7) Drizzle generously with chipotle crema, add any extra toppings, and serve right away with lime wedges.
Why You’ll Love This Recipe
- All the flavors of a loaded taco, but in fun, tall, crunchy tostada stacks.
- Creamy, smoky chipotle crema ties together the seasoned beef, beans, and fresh toppings.
- Everything is easy to prep and assemble, perfect for weeknights or casual entertaining.
- Highly customizable: adjust the heat, swap proteins, or make it vegetarian with simple tweaks.
Grocery List
- Produce: 1 small yellow onion, 1 small red onion (or extra yellow), 4 cloves garlic, 1–2 limes, 2 cups romaine or iceberg lettuce, 1–2 small tomatoes, small bunch cilantro, optional jalapeños, optional avocado.
- Dairy: 1/2 cup sour cream, 1 cup shredded Mexican blend or cheddar-jack cheese.
- Pantry: 12 crispy tostada shells, 1 lb lean ground beef, 2 cans pinto or black beans, neutral oil, tomato paste, chili powder, ground cumin, smoked paprika, dried oregano, kosher salt, black pepper, canned chipotle peppers in adobo, mayonnaise, low-sodium broth (or bouillon), optional hot sauce.
Full Ingredients
Seasoned Ground Beef
- 1 tbsp neutral oil (canola, vegetable, or avocado)
- 1 lb (450 g) lean ground beef
- 1/2 cup finely chopped yellow onion (about 1 small onion)
- 2 cloves garlic, minced
- 2 tbsp tomato paste
- 2 tsp chili powder
- 1 tsp ground cumin
- 1 tsp smoked paprika
- 1/2 tsp dried oregano
- 1/2 tsp kosher salt, plus more to taste
- 1/4 tsp freshly ground black pepper
- 1/2 cup low-sodium beef or chicken broth (or water)
Refried Beans
- 1 tbsp neutral oil (or bacon fat, for extra flavor)
- 2 cloves garlic, minced
- 2 (15 oz / 425 g) cans pinto or black beans, drained and rinsed
- 1/2 cup water or low-sodium broth, plus more as needed
- 1 tsp ground cumin
- 1 tsp chili powder
- 3/4 tsp kosher salt, or to taste
Chipotle Crema
- 1/2 cup sour cream
- 1/4 cup mayonnaise
- 1–2 chipotle peppers in adobo, very finely minced (start with 1 for milder heat)
- 1 tbsp adobo sauce (from the chipotle can)
- 1 tbsp fresh lime juice (about 1/2 lime)
- 1/4 tsp kosher salt
- 1–2 tbsp water, as needed to thin to drizzling consistency
For Assembly and Toppings
- 12 crispy tostada shells (5–6 inch)
- 2 cups finely shredded romaine or iceberg lettuce
- 1 cup shredded Mexican blend or cheddar-jack cheese
- 1/2 cup small-diced tomatoes
- 1/4 cup finely diced red onion (or pickled red onions)
- 1/4 cup chopped fresh cilantro leaves
- Lime wedges, for serving
- Optional: thinly sliced jalapeños, diced avocado, or a few dashes of hot sauce

Step-by-Step Instructions
Step 1: Make the chipotle crema
In a small bowl, combine the sour cream, mayonnaise, minced chipotle pepper(s), adobo sauce, lime juice, and salt. Whisk until smooth. Add 1–2 tbsp water, a little at a time, whisking until the crema is just thin enough to drizzle from a spoon. Taste and adjust: add more lime for brightness, more chipotle for extra smokiness and heat, or a pinch more salt if needed. Cover and refrigerate while you prepare the rest of the recipe. The flavors will meld and the crema will thicken slightly as it chills.
Step 2: Cook the seasoned ground beef
Heat 1 tbsp neutral oil in a large skillet over medium heat. Add the chopped onion and cook, stirring occasionally, until softened and translucent, 3–4 minutes. Stir in the minced garlic and cook just until fragrant, about 30 seconds.
Add the ground beef to the pan. Cook, breaking the meat up with a spatula or wooden spoon, until it is no longer pink and starting to brown in small spots, 6–8 minutes. If there is a lot of excess fat, spoon some off, leaving about 1–2 tbsp in the pan.
Stir in the tomato paste, chili powder, cumin, smoked paprika, oregano, 1/2 tsp salt, and black pepper. Cook, stirring constantly, for 1 minute to toast the spices and caramelize the tomato paste. Pour in the broth and bring to a simmer. Reduce the heat to medium-low and cook for 3–5 minutes, stirring occasionally, until the liquid has mostly reduced and the beef is saucy but not watery. Taste and adjust seasoning with more salt, if needed. Turn off the heat and keep warm.
Step 3: Simmer and mash the refried beans
In a medium saucepan or skillet, heat 1 tbsp neutral oil over medium heat. Add the minced garlic and cook, stirring, for 30 seconds until fragrant but not browned. Stir in the drained beans, water or broth, cumin, chili powder, and salt.
Bring the mixture to a simmer, then reduce heat to medium-low. Cook for 5–7 minutes, stirring occasionally, until the beans are very hot and some of the liquid has reduced. Using a potato masher or the back of a sturdy spoon, mash the beans until they are mostly smooth but still have some texture. If the beans seem too thick to spread, stir in an extra splash of water or broth; they should be thick and spreadable, not runny. Taste and adjust salt or spices as desired. Keep warm over very low heat, stirring occasionally, or cover and rewarm gently when ready to assemble.
Step 4: Warm the tostada shells and prep toppings
Preheat your oven to 350°F (180°C). Arrange the tostada shells in a single layer on a baking sheet. Warm in the oven for 3–5 minutes, just until crisped and fragrant. This step re-crisps store-bought tostadas and helps them stand up better to the toppings. Remove from the oven and let them cool slightly while you prep the fresh toppings.
Finely shred the lettuce, dice the tomatoes, finely dice the red onion, and chop the cilantro. Set out the shredded cheese, lime wedges, and any optional toppings (jalapeños, avocado, hot sauce) in small bowls so everything is ready for easy assembly.
Step 5: Build the first tostada layer
Place four tostada shells on plates or a large serving platter. Working one at a time, spread each tostada with about 2–3 tbsp of warm refried beans, going nearly to the edges. The beans act like “glue” to hold the stack in place. Top the beans with a generous spoonful (about 1/4 cup) of the seasoned ground beef, distributing it evenly over the surface.
Sprinkle a tablespoon or two of shredded cheese over each tostada so some of it melts against the warm beef and beans. This base layer should feel hearty and substantial, as it will support the rest of the stack.
Step 6: Stack and finish the tostadas
Set a second tostada shell directly on top of each loaded base, pressing gently so it adheres to the cheese and beans beneath. Repeat the layering: spread with refried beans, top with seasoned beef, and sprinkle with more cheese. For especially tall stacks, you can repeat with a third tostada layer, but two layers per stack are usually easiest to eat.
For the top layer of each stack, add a final plain tostada shell. Spread a thin layer of beans (optional) and sprinkle with a small amount of cheese. Then pile on a fluffy handful of shredded lettuce, followed by diced tomatoes, red onion, and cilantro. The contrast of the crisp shell with the fresh, cool toppings is what makes these stacks so satisfying.
Step 7: Garnish with chipotle crema and serve
Right before serving, give the chipotle crema a quick stir. Using a spoon or small squeeze bottle, drizzle it generously over the tops of the tostada stacks in zigzags or swirls so each bite gets some of the smoky, tangy sauce. Add any optional toppings you like: avocado cubes, sliced jalapeños, or a few drops of hot sauce.
Serve immediately with lime wedges on the side for squeezing over the tops. These tostada stacks are best enjoyed right away while the shells are still hot and shatteringly crisp, the beef and beans are warm, and the lettuce is crisp and cool.
Pro Tips
- Keep shells crisp: Do not assemble the stacks until everything else is ready and you are just about to eat. The tostadas will soften if they sit too long with beans and toppings.
- Control the heat: Start with 1 chipotle pepper in the crema, taste, and only add a second if you want more heat. You can also add a pinch of sugar if your adobo sauce is very sharp.
- Make it kid-friendly: Reserve some plain sour cream and unspiced beans before adding chipotle and extra spices, so everyone can customize their own plate.
- Use what you have: Leftover shredded roast beef, carnitas, rotisserie chicken, or even taco-seasoned turkey can stand in for the ground beef.
- Neater stacking: For easier eating, keep stacks to two layers, and use a sharp knife to cut them into wedges, pizza-style, at the table.
Variations
- Chicken and black bean tostada stacks: Swap the ground beef for 3 cups shredded cooked chicken. Warm it in the skillet with the onion, garlic, tomato paste, spices, and broth just until saucy. Use black beans in place of pinto for a different flavor.
- Vegetarian tostada stacks: Skip the beef and double the refried beans, or add a second type of bean for texture. For extra heartiness, top each layer with sautéed peppers, onions, and corn before adding the cheese.
- Extra-spicy chipotle stacks: Add a finely minced jalapeño to the beef while it cooks, use 2 chipotle peppers in the crema, and finish with pickled jalapeños on top.
Storage & Make-Ahead
Store all components separately for best texture. The seasoned ground beef and refried beans can be cooled and refrigerated in airtight containers for up to 4 days. Reheat gently on the stovetop over low heat with a splash of water or broth, stirring until hot and loosened. The chipotle crema will keep covered in the refrigerator for up to 3 days; stir before using. Shredded lettuce and chopped fresh toppings are best the day they are cut, but can be stored in separate containers lined with a paper towel for 1–2 days. Keep tostada shells in an airtight container at room temperature; re-crisp in a 350°F (180°C) oven for 3–4 minutes before serving. Fully assembled tostada stacks do not store well, as the shells soften quickly, so assemble only what you plan to eat. The beef and beans also freeze well for up to 2 months; thaw overnight in the refrigerator before reheating.
Nutrition (per serving)
Approximate values for 1 tostada stack (about 3 tostadas, beef, beans, toppings, and crema): 780–800 calories; 38 g protein; 45 g carbohydrates; 45 g fat; 7 g fiber; 1200 mg sodium. Actual values will vary based on specific brands, cheese type, and how generously you layer the toppings and crema.
