
Huevos Rancheros with Homemade Salsa Roja and Black Beans
Golden pan-fried corn tortillas are topped with warm, garlicky mashed black beans and sunny-side-up eggs. Smoky broiled-tomato salsa roja goes over the top, with crumbled queso fresco to finish. The tortillas soften slightly under the toppings, as they do in the traditional version. It takes about 70 minutes, and the salsa and beans can be made ahead. The salsa makes about 1½ cups (360 ml), so you'll have about ½ cup left over for chips or tomorrow's eggs.
- Prep
- 19 min
- Cook
- 32 min
- Wait
- 21 min
- Total
- 1 hr 12 min
- Makes
- 4 servings (2 fried tortillas each, with 2 eggs), plus about ½ cup (120 ml) leftover salsa
Steps
Before you start
- Read all the steps first. The salsa and beans are made first and kept warm. The tortillas are fried next and held in the oven. The eggs are fried last, in two pans at the same time, and go straight onto the plates so the yolks stay runny.
- Total time is about 72 minutes. Step 4 has you simmer the salsa and cook the beans at the same time, and the timings already count that overlap.
- You need two rimmed baking sheets: one for broiling the vegetables and one clean one for holding the fried tortillas. If you only have one, wash and dry it after broiling.
- Wear gloves or wash your hands well after cutting the serrano. Remove the seeds for a milder salsa.
- Set out four heatproof plates. They warm in the oven at 200°F (95°C) once the broiling is finished.
Prep and preheat broilerOven 500°F / 260°C
- Position an oven rack 4 inches (10 cm) below the broiler and heat the broiler to high (about 500°F / 260°C).
- While it heats, halve the tomatoes, cut the onion wedges, and halve the serrano.
- Dice ¼ cup onion and mince 2 garlic cloves for the beans, crumble the queso fresco, chop the cilantro, and crack the 8 eggs into 4 small cups (2 per cup).
- Cover the cups and refrigerate.
- Toss the tomatoes and onion wedges with the salsa oil on a rimmed baking sheet and arrange the tomatoes cut-side down.
+ Show details− Hide details
Ready when: Broiler is fully heated (about 5 minutes) and all prep is done
Tip: Do the chopping while the broiler heats so you don't wait on it.
Broil in two stagesOven 500°F / 260°C
- Broil the tomatoes and onion for 6 minutes.
- Pull the pan out, flip the tomatoes cut-side up and turn the onion wedges.
- Add the unpeeled garlic cloves and the serrano halves (cut-side down) to the pan.
- Broil 5 minutes more, until the tomato skins are blistered and charred in spots, the onion edges are browned, and the garlic and chile are spotty brown and soft.
+ Show details− Hide details
Ready when: Tomato skins blistered and blackened in spots and slumped, onion edges browned and softened, garlic soft when squeezed
Tip: Garlic and chile are added late because they burn long before the tomatoes char. Check at 3 minutes and pull them early if they darken fast.
Cool, blend, warm platesOven 200°F / 95°C
- Remove the pan and turn the oven to 200°F (95°C).
- Put the 4 heatproof plates and a second, clean rimmed baking sheet inside to warm.
- Let the vegetables cool 5 minutes.
- Squeeze the garlic from its skins.
- Put the vegetables and all pan juices in a blender with the cumin, 1 tbsp lime juice and ¾ tsp salt.
- Pulse 8–10 times for a slightly textured salsa, or blend longer for smooth.
- Taste and add a pinch more salt or lime if needed.
- Cut the other lime half into 4 wedges and set aside.
- You should have about 1½ cups (360 ml) of salsa.
+ Show details− Hide details
Ready when: Salsa is thick but pourable, like a loose pasta sauce
Tip: Leave the lid vent open under a folded towel when blending warm vegetables so steam can escape.
Simmer salsa, cook beans
- Pour the salsa into a 3-quart saucepan over medium heat.
- Bring to a gentle simmer and cook 10 minutes, stirring occasionally, until slightly thickened.
- Meanwhile, heat the bean oil in a 2-quart saucepan over medium heat.
- Cook the diced onion 3 minutes until soft and translucent.
- Add the minced garlic and cook 30 seconds until fragrant.
- Add the beans with about half of their canning liquid (drain off the rest).
- Simmer 7 minutes, stirring now and then, then mash about a third of the beans with a masher or fork.
- Taste, and stir in the ¼ tsp salt only if needed.
- Turn both pots to low and cover to keep warm.
+ Show details− Hide details
Ready when: Salsa is brick red and coats a spoon. Beans are creamy and thick enough to mound on a spoon, with no pool of liquid.
Tip: If the beans get too thick, loosen with a splash of water. Queso fresco adds salt later, so go easy on seasoning.
Fry the tortillasOven 200°F / 95°C
- Heat 3 tbsp (45 ml) of the frying oil in the 12-inch skillet over medium-high heat until it shimmers, about 1 minute; it should coat the pan in a thin film.
- Fry 2 tortillas at a time, 30–45 seconds per side, until pale golden, blistered and firm at the edges.
- Lift out with tongs, letting excess oil drip back.
- Drain briefly on a paper towel-lined plate, sprinkle lightly with salt while hot (¼ tsp total for all 8), then move to the warm baking sheet in the oven.
- Before each of the remaining 3 batches, add 1 tbsp (15 ml) oil and let it heat 20 seconds.
+ Show details− Hide details
Ready when: Tortillas are pale golden, blistered and stiff at the edges, and still slightly flexible in the center
Tip: Don't fry until fully hard. They crisp as they cool, then soften slightly under the beans, eggs and salsa, as the dish is meant to be.
Build the plate basesOven 200°F / 95°C
- Wipe out the 12-inch skillet and set it aside.
- Take the warm plates out of the oven.
- On each plate, overlap 2 tortillas and spoon about ⅓ cup (80 g) of warm beans over them.
- Return the plates to the 200°F (95°C) oven while you fry the eggs.
- Reheat the salsa over low heat if it has cooled.
+ Show details− Hide details
Ready when: Beans are hot and mounded on the tortillas
Tip: Keep the salsa off the tortillas until the eggs are on, so they stay as crisp as possible.
Fry all eggs at once
- Set the two 10-inch nonstick skillets over medium-low heat and add 1 tbsp (14 g) butter to each.
- When the butter foams, slide in 4 eggs per pan (2 cups per pan), leaving a little space between them.
- Cook uncovered 3–4 minutes, tilting the pan and spooning butter over the whites, until the whites are opaque and set and the yolks are glossy and runny.
- Take the plates from the oven and slide 2 eggs onto each plate, over the beans, right away.
+ Show details− Hide details
Ready when: Whites opaque and firm with no clear jelly; yolks still runny
Tip: Cracking eggs into cups first keeps yolks intact and lets you slide them in together. Keep the heat low so the edges don't turn brown and crispy.
Sauce, top, and serve
- Spoon about ¼ cup (60 ml) of warm salsa around and partly over the egg whites on each plate, leaving the yolks exposed.
- Scatter with queso fresco and cilantro, and serve at once with avocado slices and lime wedges.
- Refrigerate the leftover salsa.
+ Show details− Hide details
Ready when: Salsa steaming, yolks still runny, tortillas softened slightly but still holding their shape
Tip: Add queso fresco and cilantro just before serving so they stay fresh and don't melt into the salsa.
Good to know
Tips
- Broil the tomatoes until properly charred. The smoky flavor is what makes the salsa taste authentic.
- Fry tortillas only to pale golden so they hold up under the toppings without turning into hard chips.
- Never hold plated eggs in the oven. Hold only the tortillas and beans, and fry the eggs last so the yolks stay runny.
- For a lighter version, brush both sides of the tortillas with oil and bake on a baking sheet at 400°F (200°C) for 6–8 minutes, flipping once.
Make ahead
The salsa roja and beans can be made up to 3 days ahead and refrigerated in airtight containers. Reheat gently on the stovetop with a splash of water before assembling. Fry the tortillas and eggs just before serving.
Storage & reheating
Salsa and beans: refrigerate in airtight containers up to 3 days; freeze up to 3 months. Reheat on the stovetop over medium-low heat with a splash of water until steaming. Fried tortillas and eggs do not store well and are best eaten immediately. Leftover queso fresco keeps 5 days refrigerated.
Substitutions
- queso fresco → Feta or ricotta salata. Feta is saltier and tangier; use slightly less.
- serrano chile → Jalapeño. Milder; leave the seeds in for more heat.
- canned black beans → Pinto beans. Traditional alternative with a creamier texture; use one 15 oz (425 g) can, the same way.
- ripe Roma tomatoes → One 14.5 oz (411 g) can fire-roasted diced tomatoes, drained. Skip broiling the tomatoes; still broil the onion, garlic and chile, then blend everything together.
More egg dishes
See all →Find more like this
- Meal
- Breakfast
- Cuisine
- Mexican
- Main ingredient
- Black BeansEggs
- Quick & Easy
- EasyMake Ahead





