Gather
Ingredients
Check things off as they land on the counter.
1× recipe · 6 servings · about 10–12 pupusas · Metric
Cooking times and temperatures stay the same. Cook larger batches in batches and season to taste.
Green chile pork
Homemade refried beans
Makes about 3 cups. Use approximately 1 cup for the pupusas and save the rest for serving or bean dip.
Bean-and-cheese pupusas
For serving
Make
Method
- 1
Roast the peppers and aromatics
Position a rack about 6 inches beneath the broiler and heat it to high. Broil the poblanos, sweet peppers, jalapeños, and quartered onion for 5–7 minutes; turn and continue until blistered and darkened in spots. Add the garlic for the final 4–5 minutes. Cover the peppers in a bowl for 10 minutes, then stem them and peel away loose, tough poblano skin. Remove seeds for a milder sauce. Do not broil the canned tomatillos.
- 2
Blend the green chile sauce
Blend the roasted peppers, onion, and garlic with the drained tomatillos, cilantro, oregano, ½ teaspoon cumin, and ½ cup / 120 ml chicken stock until mostly smooth but still slightly textured. Add only enough extra stock to keep the blender moving.
- 3
Brown the pork
Heat the oven to 300°F / 150°C. Pat the pork dry and season with salt, 1 teaspoon cumin, and black pepper. Heat the oil in a Dutch oven over medium-high. Brown the pork in batches for 5–7 minutes each, turning to color several sides, then transfer to a plate.
- 4
Fry the chile sauce
Reduce the heat to medium. Carefully pour in the green sauce and cook for 8–10 minutes, stirring and scraping up the browned pork bits, until it darkens slightly and begins to thicken.
- 5
Braise the pork
Return the pork and its juices. Add enough remaining stock to mostly surround, but not submerge, it. Bring to a gentle simmer, cover, and braise for 2–2½ hours, stirring once or twice, until fork-tender. Uncover for the final 20–30 minutes for a thicker sauce. Break into chunky shreds, stir in 1 tablespoon / 15 ml lime juice, and adjust salt, lime, or stock.
- 6
Cook the refried beans
Cook the onion and optional jalapeño in the lard or oil over medium heat for 5–7 minutes. Add the beans, cumin, salt, and ¼ cup / 60 ml reserved liquid. Mash and cook over medium-low, adding liquid as needed, until smooth and creamy. Continue until thick enough that a spatula leaves a brief trail. Remove 1 cup / 240 g and cool completely.
- 7
Prepare the filling
Combine the cooled refried beans and shredded cheese. It should be thick enough to scoop and roll; refrigerate briefly if it feels too soft.
- 8
Make the masa dough
Combine masa harina and salt. Begin with 1⅜ cups / 330 ml warm water and mix by hand; add the rest gradually only as needed. Mix in optional oil. Cover and rest 5–10 minutes. The dough should feel like soft modeling clay—moist and pliable, without sticking heavily.
- 9
Fill and shape
Divide into 10–12 portions, about 50–55 g each. Form each into a cup, add 1½–2 tablespoons filling, pinch closed, roll gently, and flatten between damp palms to about 4 inches wide and ⅓–½ inch thick. Patch cracks with damp fingers and keep covered.

Golden, lightly puffed, and ready to wrap in a towel. - 10
Heat the griddle
Heat a cast-iron skillet, comal, or griddle over medium to medium-high to approximately 375–400°F / 190–205°C. Wipe 1 teaspoon oil over the surface so it looks lightly polished rather than oily.
- 11
Cook the pupusas
Cook without crowding or pressing for 3–4 minutes per side, until golden with dark-brown spots. Thick pupusas may need another 1–2 minutes per side over lower heat. Wrap cooked pupusas loosely in a clean towel while finishing the batches.
Use what you have
Ingredient substitutions
Pork shoulder
Use boneless country-style pork ribs in equal weight. Boneless chicken thighs also work; reduce braising to about 45–60 minutes. Avoid pork loin for the long braise.
Canned tomatillos
Use 1½–2 pounds / 680–900 g fresh tomatillos. Husk, rinse, and broil with the peppers until blistered.
Peppers
Anaheim, Hatch, or New Mexico chiles can replace poblanos. Mini bells, Cubanelles, or bell pepper replace the sweet peppers. Serranos make a hotter jalapeño swap.
Beans and cheese
Black beans can replace pintos. Use Oaxaca, Chihuahua, Monterey Jack, quesadilla cheese, or low-moisture mozzarella; avoid very wet fresh mozzarella.
Masa harina
Use nixtamalized masa harina labeled for tortillas. Cornmeal, ordinary corn flour, and polenta are not direct substitutes.
Cilantro
Omit it if needed. Parsley adds freshness but will not duplicate cilantro’s flavor.
One more good thing
Leftover refried bean dip
Warm 1½ cups / 360 g refried beans with ⅓ cup / 80 ml stock or water, ¼ cup / 60 g sour cream, 2 tablespoons / 28 g butter or lard, ½ cup / 55 g shredded cheese, and ¼ teaspoon each cumin, garlic powder, and onion powder. Stir over medium-low, adding liquid as needed, until creamy and scoopable.
Cook this