Quick Recipe Version (TL;DR)
Quick Ingredients
- 3 lb boneless pork shoulder, cut into 2-inch chunks
- 1 cup orange juice + 1/4 cup lime juice + 1 cup water
- 2 tbsp lard or neutral oil, 2 tsp kosher salt, 1 tsp ground cumin, 1 tsp Mexican oregano, 2 bay leaves, 3 garlic cloves
- 2 lb Roma tomatoes (8–10), 20–25 dried chiles de árbol, 1/2 small white onion, 2 garlic cloves, 2 tbsp white vinegar, 1 tsp Mexican oregano, 1 1/2 tsp kosher salt
- 1 large red onion, 1/2 cup apple cider vinegar, 1/4 cup lime juice, 1 tsp sugar, 1 tsp kosher salt
- 6 birote salado or bolillo rolls, lime wedges
Do This
- Pickle onions: Toss sliced red onion with 1/2 cup cider vinegar, 1/4 cup lime juice, 1 tsp sugar, 1 tsp salt, and 1/2 cup hot water. Rest 15 minutes.
- Braise pork: In a Dutch oven combine pork, OJ, lime juice, water, lard, salt, cumin, oregano, bay, and 3 garlic cloves. Bring to a simmer, cover, and bake at 325°F for 1 hour 50 minutes to 2 hours until fork-tender.
- Crisp: Reserve 1 cup braising liquid. Broil pork on a sheet pan 5–8 minutes, tossing once, until edges are browned.
- Sauce: Char 2 lb tomatoes and 1/2 onion in a dry skillet. Toast 20–25 chiles de árbol 30 seconds; soak 10 minutes. Blend with tomatoes, onion, 2 garlic cloves, 2 tbsp white vinegar, 1 tsp oregano, 1 1/2 tsp salt, and 1 cup water or pork juices. Simmer 5 minutes.
- Warm rolls at 375°F for 5 minutes. Split lengthwise, leaving a hinge; hollow a bit of the crumb.
- Assemble: Fill with carnitas, spoon sauce inside, close, set in shallow bowls, and ladle more sauce over to “drown.” Top with pickled onions and a squeeze of lime.
Why You’ll Love This Recipe
- Authentic Guadalajara street-food flavors with a balanced, fiery chile de árbol–tomato bath.
- Shatteringly crusty bread with juicy, crisp-edged carnitas for perfect texture contrast.
- Flexible heat level: make it mild to face-tingling with a simple chile adjustment.
- Great make-ahead components for low-stress entertaining.
Grocery List
- Produce: Roma tomatoes, white onion, garlic, red onion, limes
- Dairy: None
- Pantry: Pork shoulder, dried chiles de árbol, Mexican oregano, ground cumin, bay leaves, kosher salt, sugar, lard or neutral oil, orange juice, apple cider vinegar, white vinegar, birote or bolillo rolls
Full Ingredients
Carnitas
- 3 lb boneless pork shoulder (pork butt), cut into 2-inch chunks
- 1 cup orange juice
- 1/4 cup fresh lime juice
- 1 cup water
- 2 tbsp lard or neutral oil
- 2 tsp kosher salt
- 1 tsp ground cumin
- 1 tsp dried Mexican oregano
- 2 bay leaves
- 3 garlic cloves, smashed
Spicy Chile de Árbol–Tomato Sauce
- 2 lb Roma tomatoes (8–10), halved
- 1/2 small white onion (about 3 oz), peeled
- 20 dried chiles de árbol for medium heat (use up to 25 for extra spicy), stems removed
- 2 garlic cloves
- 2 tbsp white vinegar
- 1 tsp dried Mexican oregano
- 1 1/2 tsp kosher salt, plus more to taste
- 1 cup water or reserved pork braising liquid (plus more as needed to thin)
- Optional: 1/2 tsp sugar to balance acidity
Pickled Red Onions
- 1 large red onion, thinly sliced
- 1/2 cup apple cider vinegar
- 1/4 cup fresh lime juice
- 1 tsp granulated sugar
- 1 tsp kosher salt
- 1/2 cup hot water
- Optional: pinch dried Mexican oregano
For the Tortas
- 6 birote salado or bolillo rolls (6–7 inches)
- Lime wedges, for serving

Step-by-Step Instructions
Step 1: Quick-pickle the red onions
In a medium bowl, combine the apple cider vinegar, lime juice, sugar, salt, and hot water. Add the thinly sliced red onion (and oregano if using). Toss and let sit at room temperature for at least 15 minutes, stirring once or twice. The onions will turn bright pink and slightly tender. Refrigerate until needed.
Step 2: Braise the pork for carnitas
Preheat the oven to 325°F. In a 5–6 quart Dutch oven, combine pork shoulder, orange juice, lime juice, water, lard, salt, cumin, oregano, bay leaves, and smashed garlic. Bring to a gentle simmer on the stovetop over medium heat. Cover and transfer to the oven. Braise for 1 hour 50 minutes to 2 hours, until the pork is fork-tender.
Step 3: Crisp the carnitas
Increase the oven to Broil (High). Using a slotted spoon, transfer the pork to a rimmed sheet pan and roughly shred into large chunks. Reserve 1 cup of the braising liquid and spoon 2–3 tablespoons of the rendered fat over the pork. Broil 5–8 minutes, tossing once, until edges are deeply browned and crisp but the meat stays juicy.
Step 4: Char, toast, and blend the sauce
While the pork braises, heat a large dry skillet over medium-high. Char the tomatoes (cut side down) and the onion until blistered and softened, 8–10 minutes. Transfer to a blender. In the same dry skillet, toast the dried chiles de árbol for 20–30 seconds until fragrant and a shade darker (do not blacken). Soak chiles in hot water for 10 minutes, then drain. Add chiles, garlic, vinegar, oregano, salt, and 1 cup water or reserved pork liquid to the blender. Blend until very smooth, 45–60 seconds. For a silkier sauce, strain through a fine-mesh sieve.
Step 5: Simmer and adjust the sauce
Pour the blended sauce into a saucepan and bring to a simmer over medium heat for 5 minutes to marry flavors. Adjust thickness with more water if needed; it should be pourable but not watery. Taste and add salt to balance, vinegar for brightness, or a pinch of sugar if tomatoes are very acidic. Keep warm over low heat.
Step 6: Warm and prep the rolls
Warm the birote or bolillo rolls directly on the oven rack at 375°F for 5 minutes to refresh the crust. Split lengthwise, leaving a hinge. Pull out a little of the interior crumb to make room for the carnitas. For extra crunch, brush cut sides lightly with some rendered pork fat and toast cut-side-up under the broiler for 30–60 seconds.
Step 7: Assemble, drown, and garnish
Fill each roll with 4–5 oz of hot, crisped carnitas. Spoon some sauce inside the roll, close, and set the torta in a shallow bowl. Ladle additional spicy chile de árbol–tomato sauce over the top to “drown” it to your liking (half-drowned or fully). Finish with a generous mound of pickled red onions and a squeeze of fresh lime. Serve immediately while the bread is still crusty.
Pro Tips
- Heat control: Start with 12–15 chiles de árbol for mild-medium, 20 for hot, and 25 for fiery. You can blend more chiles in later if you want extra heat.
- Crisp is key: Don’t skip the broil step; those caramelized edges make the sandwich.
- Use the pork juices: Swapping in reserved braising liquid for water in the sauce adds body and savory depth.
- Bread matters: Birote salado is traditional. If using bolillo or a small baguette, rewarm to re-crisp the crust.
- Safety: Use gloves when handling chiles and vent the blender lid when blending hot sauce to prevent steam buildup.
Variations
- Pressure cooker carnitas: Cook pork with the same seasonings at High Pressure for 40 minutes, natural release 15 minutes. Broil to crisp.
- Chicken swap: Use boneless, skinless chicken thighs (same weight), pressure cook 12 minutes (or braise 35–40 minutes), then broil to crisp.
- Vegetarian riff: Use roast mushrooms (2 lb mixed oyster/portobello) tossed with oil, cumin, oregano, and salt. Roast at 425°F for 25–30 minutes until crisp; proceed with the sauce and assembly.
Storage & Make-Ahead
Store components separately. Carnitas keep 4 days refrigerated or up to 3 months frozen; re-crisp under the broiler or in a hot skillet. Sauce keeps 1 week refrigerated or 3 months frozen; thin with water as needed when reheating. Pickled onions keep 2 weeks refrigerated. Warm rolls just before serving to maintain a crusty exterior.
Nutrition (per serving)
Approximate per torta: 670 calories; 29 g protein; 52 g carbohydrates; 36 g fat; 5 g fiber; 1,240 mg sodium. Values will vary based on bread size and sauce quantity.

