Main Courses
This Mexican pork roast recipe in the oven transforms simple pork shoulder into tender, juicy perfection with crispy celery crowns and smoky chipotle gravy. 🌟 The secret lies in a bold marinade of adobo, cumin, and oregano that infuses the meat while roasting, creating layers of flavor that'll have everyone asking for seconds.
I've perfected this technique over years of testing—no dry, tough pork here.
The magic happens in the oven at 325°F, where the pork slow-roasts until fork-tender while the celery crowns get beautifully crispy. This isn't just another pork roast—it's a celebration of Mexican flavors with authentic spices that deliver restaurant-quality results at home.
The chipotle gravy ties everything together, rich and smoky with just the right kick.
What you'll end up with is a showstopping centerpiece: golden-brown pork with crispy celery crowns that hold their shape, all smothered in that irresistible gravy. The aroma alone will fill your kitchen with warmth, and every bite delivers tender meat with complex, savory notes.
This is comfort food with a Mexican twist—perfect for family dinners or special occasions.
Pair it with cilantro-lime rice and roasted vegetables for a complete meal that's both impressive and approachable. The leftovers reheat beautifully too, making this a recipe that works for busy weeknights or weekend feasts. Let's get cooking!
Ingredients for mexican pork roast recipe oven
Sixteen ingredients transform pork shoulder into restaurant-style Mexican roast with crispy celery crowns and smoky gravy.
| Ingredient | Amount | Notes |
|---|---|---|
| Boneless Pork Shoulder 🐖 | 4 lb | Trimmed of excess fat |
| Celery Stalks 🧅 | 12 whole | Large, firm stalks for crowns |
| Yellow Onion 🧅 | 1 whole | Yellow or red variety |
| Garlic Cloves 🧄 | 8 cloves | Fresh, peeled and smashed |
| Chipotle Peppers in Adobo 🌶️ | 4 whole | With sauce, minced |
| Ground Cumin 🌿 | 2 tbsp | Toasted for deeper flavor |
| Dried Oregano 🍃 | 1 ½ tbsp | Mexican oregano preferred |
| Smoked Paprika 🌶️ | 1 tbsp | For smoky depth |
| Extra-Virgin Olive Oil 🫒 | ½ cup | For marinade and roasting |
| Beef Broth 💧 | 2 cups | Low-sodium preferred |
| Tomato Paste 🍅 | ¼ cup | For gravy richness |
| Lime Juice 🍋 | ½ cup | Freshly squeezed |
| Salt 🧂 | 1 ½ tbsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | 1 tsp | Freshly cracked |
| Fresh Cilantro 🌿 | ¼ cup | Chopped for garnish |
The pork shoulder is the foundation—look for a cut with good marbling to ensure juiciness. Costco or Whole Foods often carry high-quality pork shoulders, but any reputable butcher will do. For the celery crowns, select large, firm stalks with minimal bruising; Trader Joe's typically carries excellent quality. The chipotle peppers in adobo should be smoky, not bitter, and the adobo sauce adds depth to the marinade. Toast your cumin seeds for 2 minutes in a dry pan before grinding to release their aromatic oils—a small step that makes a big difference in flavor complexity.
No chipotle peppers? Substitute with 1 tablespoon of smoked paprika plus 1 teaspoon cayenne for heat. The celery crowns can be made with carrot tops or fennel stalks if needed, though celery delivers the best texture. For the gravy, if you're short on time, use 1 cup of store-bought chipotle sauce instead of mincing fresh peppers. The tomato paste can be replaced with 1 cup of crushed tomatoes, though it will dilute the richness slightly. Fresh lime juice is ideal, but bottled lime juice works in a pinch—just add a pinch of sugar to balance the acidity.
The pork roast reheats beautifully—simply cover with foil and warm in a 300°F oven for 20-30 minutes. Store leftovers in the fridge for up to 5 days, though the flavor deepens overnight. For longer storage, freeze portions for up to 3 months. The celery crowns are best served fresh but can be reheated in the oven at 375°F for 5 minutes to restore crispness. Garnish with fresh cilantro just before serving to preserve its vibrant color and aroma.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s all about minimal cleanup—just toss the pork, onions, celery, and garlic into one roasting pan with the adobo sauce, and let the oven do the work. No pots to scrub, no pans to stack, and honestly? That’s my kind of cooking.
- Smoky Heat Bomb: The chipotle peppers in adobo turn this pork into something ridiculously flavorful—deep, smoky, and just a little spicy without overpowering. Between us, that first bite where the crispy edges meet the tender meat? Pure satisfaction.
- Leftovers That Shine: This roast actually improves the next day—shred it for tacos, nachos, or even a hearty soup. I’ll be real: I make a double batch on Sundays just so I can reheat slices all week. (Yes, even on a Tuesday night.)
- Budget-Friendly Feast: Pork shoulder is the secret weapon here—it’s affordable, forgiving, and packed with flavor. A single roast feeds my family of four plus leftovers, and the veggies (onion, celery, garlic) are pantry staples. No fancy ingredients, just big-time results.
Step-by-step instructions for Mexican pork roast with celery crowns
This method delivers melt-in-your-mouth pork with crispy celery crowns and rich chipotle gravy.
👨🍳 Step 1: Prepare the Pork and Celery Crowns
Trim the 4 lb boneless pork shoulder of any remaining fat, leaving about ¼-inch layer. Pat it dry with paper towels—this ensures maximum crispiness during roasting. In a small bowl, combine the 2 tbsp ground cumin, 1.5 tbsp dried oregano, 1 tbsp smoked paprika, 1.5 tbsp salt, and 1 tsp black pepper. Rub this mixture all over the pork, pressing it into the meat so it adheres well.
For the celery crowns, cut off the leafy tops from the 12 whole celery stalks and discard. Use a sharp chef's knife to make a thin slice about ⅛-inch deep around the base of each stalk, being careful not to cut all the way through. This creates a "crown" that will crisp beautifully. Set aside and let both the pork and celery sit at room temperature for 30 minutes before cooking—this ensures even heat penetration.
🔥 Step 2: Roast the Pork Until Tender
Preheat your oven to 325°F. Place the seasoned pork shoulder in a roasting pan and pour the 0.5 cup extra-virgin olive oil over it, tilting to coat all sides. Roast for 3 hours until the internal temperature reaches 195°F (use a meat thermometer). The pork should be fork-tender with a deep mahogany crust. If the surface starts to dry out, tent loosely with foil after 2 hours to prevent over-browning.
Here's the thing—pork shoulder needs patience. The meat will continue cooking as it rests, so don't rush it. You're aiming for that perfect balance of tenderness and moisture. If you check early and it's not quite there, just let it cook longer—this is where great pork roast happens.
🍳 Step 3: Build the Smoky Gravy Base
While the pork rests, prepare the gravy. In a large skillet, heat 0.25 cup tomato paste over medium heat until it darkens slightly (2-3 minutes). Add the 8 cloves garlic cloves and 1 whole yellow onion, chopped, cooking until softened (5 minutes). Stir in the 4 whole chipotle peppers in adobo (including sauce) and cook for 1 minute to meld the flavors.
Deglaze the pan with the 2 cups beef broth, scraping up all the browned bits from the bottom. Add the 0.5 cup lime juice and simmer for 10 minutes until slightly reduced. The sauce should be thick enough to coat the back of a spoon but still flow smoothly. Taste and adjust seasoning with additional salt if needed.
🥘 Step 4: Finish the Celery Crowns and Combine
Increase oven temperature to 425°F. Arrange the celery crowns on a baking sheet in a single layer, drizzle with any remaining olive oil from the pork pan, and sprinkle with a pinch of salt. Roast for 15-20 minutes, flipping halfway, until the edges are deep golden brown and crispy. They should hold their shape but be tender when pierced with a fork.
Carve the pork into ½-inch thick slices against the grain. Spoon the chipotle gravy over the pork and celery crowns, garnishing with the 0.25 cup fresh cilantro. Serve immediately with warm tortillas or over rice—each bite delivers tender pork, crispy celery, and that perfect smoky chipotle kick.
Pro Tips For Making Mexican Pork Roast Recipe Oven
- CRANK THE HEAT FIRST: Start your pork shoulder in a screaming-hot oven (425°F) for the first 30 minutes—yes, even if the recipe says otherwise. This sears the outside fast, locking in moisture and giving you that deep caramelized crust that makes all the difference when you later braise it with chipotle.
- BLITZ THE AROMA BASE: Chop your celery, onion, and garlic finer than you think you need—think rice-sized pieces, not dice. The smaller the better for even flavor distribution, and trust me, you’ll taste it in every bite of that tender pork. (I used to skip this, and the sauce always tasted uneven.)
- DON’T SKIP THE ADOBO OIL: Strain the chipotle peppers in adobo and save that oily sauce—it’s liquid gold for moisture and depth. Brush it lightly over the pork before roasting; the fat renders down and keeps the meat juicy. (I learned this after my first dry batch—never again.)
- REST IT UNDER FOIL: Once pulled, tent the pork with foil and let it sit for 15 minutes before slicing. This keeps it from turning into a sad, stringy mess. (I know, waiting sucks, but your future tacos will be thanking you.)
Best sauces and condiments for these flavors
Chipotle Gravy Mastery
This smoky chipotle gravy is the star of the show—it's what transforms your pork roast from good to unforgettable. Start by mincing those 4 chipotle peppers in adobo, including 1 tablespoon of the sauce, for that perfect balance of heat and depth.
I like to toast the 2 tbsp ground cumin in a dry pan for 2 minutes first—it adds a nutty aroma that pairs beautifully with the smokiness. The 0.5 cup lime juice brightens everything up, cutting through the richness. 🌶️
For extra richness, I sometimes add 1 tablespoon of honey or agave to the gravy while it simmers—just enough to balance the acidity and add a touch of sweetness. If you want it thicker, simmer uncovered for an extra 5 minutes to reduce.
The gravy should cling to the pork like a second skin, making every bite juicy and flavorful.
Creamy Lime Crema
This tangy, creamy topping takes the dish to the next level. Whisk together ½ cup sour cream or Mexican crema, ¼ cup fresh lime juice, 1 tbsp chopped fresh cilantro, and a pinch of salt.
For a smoother texture, strain through a fine-mesh sieve. Drizzle this over the pork and celery crowns just before serving—it adds a refreshing contrast to the smoky flavors. I like to serve it in small ramekins for dipping. 🍋
No sour cream? No problem. Use ½ cup Greek yogurt mixed with 1 tbsp lime zest for a lighter option. If you want to add some heat, blend in ½ teaspoon of hot sauce like Cholula or Valentina.
This crema isn’t just a garnish—it’s the perfect palate cleanser between bites of rich pork and crispy celery.
Pickled Red Onions
Quick-pickled red onions add a bright, acidic crunch that cuts through the richness.
Thinly slice ½ small red onion and soak in a mixture of ¼ cup apple cider vinegar, 1 tbsp lime juice, ½ teaspoon sugar, and a pinch of salt for at least 15 minutes. The onions should soften slightly but still hold their shape.
Scatter them over the pork and celery crowns just before serving—they add a pop of color and a refreshing bite. 🧅
For a sweeter version, swap the vinegar for orange juice and add ½ teaspoon of ground cinnamon to the pickling liquid. These onions work as a garnish or even as a topping for tacos if you're serving this pork in a more casual setting.
They’re a game-changer for balancing the smoky, spicy flavors.
Avocado Slices
Fresh avocado slices add a creamy, buttery contrast to the crispy celery crowns and smoky pork. Choose ripe but firm avocados—they should yield slightly to gentle pressure. Slice them just before serving to prevent browning.
I like to sprinkle them with a pinch of flaky sea salt and a squeeze of lime juice to enhance their natural flavor. 🥑
For extra flair, mash ½ avocado with 1 tbsp lime juice, 1 tbsp chopped cilantro, and a pinch of salt to make a quick guacamole.
Dollop it alongside the pork for dipping or spreading. Avocado isn’t just a garnish—it’s a flavor booster that makes every bite feel like a celebration.
Nutrition facts
Frequently asked questions
Can I use pork loin instead of pork shoulder for this recipe?
Pork loin is leaner and cooks faster, so it won't give the same tender, juicy results. For best texture, stick with pork shoulder (also called Boston butt). If you must use loin, cut it into thick slices, reduce the oven temperature to 300°F, and cook for only 1 hour until it reaches 145°F internally.
What's the secret to getting crispy celery crowns?
The key is making clean, shallow cuts around the celery base and roasting at 425°F for 15-20 minutes. Use firm celery stalks with minimal bruising, and flip them halfway through cooking. A light coating of olive oil and salt helps too—don't skip this step!
How do I adjust the spice level for kids or sensitive eaters?
For milder flavor, reduce the chipotle peppers to 2-3 peppers and omit the cayenne. You can also strain the gravy to remove some of the spice particles. The cumin and oregano provide plenty of Mexican flavor without heat—just keep the smoked paprika for depth.
Can I make this recipe in a slow cooker instead of the oven?
Brown the pork in a skillet first, then transfer it to your slow cooker with all the marinade ingredients. Cook on Low for 8 hours or High for 5 hours. For crispy celery crowns, roast them separately in the oven at 425°F for 15 minutes before serving.
What's the best way to reheat leftovers?
Slice the pork and reheat in a skillet with a splash of beef broth over medium-low heat for 5-7 minutes. For celery crowns, warm them in the oven at 375°F for 5 minutes to restore crispness. The gravy can be reheated on the stove—just add a little water if it thickens too much.
