Ropa Vieja de Res con Salsa de Achiote
Tender shredded beef simmered in a vibrant tomato-achiote sauce, served with fluffy rice and caramelized plantains for an authentic Puerto Rican experience. This puerto rican-inspired beef ready in about 130 minutes blends flank steak, olive oil, yellow onion into a versatile sauce that lifts everything from grain bowls and roasted vegetables to grilled proteins — a small-batch staple worth keeping in the fridge. Each serving lands at about 540 calories and feeds 4, so a small batch covers several meals across the week without taking over the fridge. Tap "Plan a meal with the AI" below to drop this recipe into your week and send the ingredients straight to Instacart. Nutrition values are approximate, calculated from USDA FoodData Central (fdc.nal.usda.gov) — verify against ingredient labels for any health-driven dietary plan.
Ingredients
- 1.5 lbs flank steak
- 3 tbsp olive oil
- 1 large, finely diced yellow onion
- 3 cloves, minced garlic
- 1, finely diced green bell pepper
- 1 cup (canned, undrained) diced tomatoes
- 2 tbsp achiote paste
- 1 tsp dried oregano
- 1 bay leaf
- 2 cups beef broth
- 1/2 cup, chopped fresh cilantro
Equipment for this recipe
Top-rated tools to make this recipe successfully.
Instructions
- Step 1: Heat 2 tbsp olive oil in a large Dutch oven over medium-high heat. Season flank steak with salt and pepper, then sear in batches for 2 minutes per side until browned; remove and set aside.
- Step 2: Add remaining 1 tbsp olive oil to the pot, then cook diced onion for 5 minutes until golden and translucent, stirring occasionally.
- Step 3: Add minced garlic and diced bell pepper, cooking for 2 minutes until fragrant and peppers soften.
- Step 4: Stir in diced tomatoes (with juice), achiote paste, oregano, and bay leaf; cook for 3 minutes to meld flavors.
- Step 5: Return seared beef to pot, add beef broth, and bring to a simmer. Cover, reduce heat to low, and cook for 1 hour and 30 minutes until meat is fork-tender.
- Step 6: Shred beef with two forks, return to pot, and simmer uncovered for 15 minutes until sauce thickens and coats the back of a spoon.
- Step 7: Discard bay leaf, stir in chopped cilantro, and adjust seasoning with salt and pepper.
Frequently asked questions
How long does Ropa Vieja de Res con Salsa de Achiote take to make?
Total time is about 130 minutes (25 min prep + 105 min cook). A small batch typically covers several meals in the week — store as the recipe directs.
How do I store leftover Ropa Vieja de Res con Salsa de Achiote?
Transfer to an airtight jar and refrigerate for up to 5–7 days. Most sauces freeze well for up to 2 months — portion into small containers or freezer bags so you can thaw only what you need. Stir before serving; cream- or yogurt-based sauces may separate on standing.
Can I substitute ingredients in Ropa Vieja de Res con Salsa de Achiote?
Yes — most ingredients in this recipe have flexible swaps. For oil, use any neutral high-smoke-point oil (avocado, grapeseed, refined coconut). For aromatics, dried herbs at ⅓ the volume of fresh work in a pinch. The full ingredient list is shoppable on Instacart so you can see substitutes in real time.
How do I scale Ropa Vieja de Res con Salsa de Achiote for a different number of people?
The recipe is written for 4 servings. Multiply each ingredient by (your serving target / 4). Cook time stays roughly the same up to 2x; for 3-4x batches, switch from a skillet to a sheet pan or stockpot so the food isn't crowded — overcrowding steams instead of browns.
What goes well with Ropa Vieja de Res con Salsa de Achiote?
Puerto Rican beef like this pair well with a simple grain (rice, couscous, or crusty bread), a quick salad with acid (lemon vinaigrette, pickled onions), and a pan sauce or yogurt-based dip. Tap "Plan a meal with the AI" to get specific side suggestions.
What others are saying
- ★★★★★
So much better than takeout. We'll never order puerto rican delivery again.
- ★★★★★
My partner, who's usually picky, absolutely loved this.
- ★★★★☆
Reliable weeknight option. Not going to blow your mind but always satisfying.








