Cuban Pulled Beef (Ropa Vieja)

Ropa vieja is a Cuban national dish. This braised beef dish literally translates to “old clothes”- the fall-apart meat and colorful strips of onions and peppers tangled together in liquid looks like old, tattered clothing in the wash. In a strange and round-about way, it is also the precursor of the modern American sloppy joe sandwich.

So, what does the sloppy joe have to do with ropa vieja? Most food anthropologists think the American sloppy joe sandwich of ground beef, peppers, onions, and tomato sauce on a hamburger bun originated during the US depression era of the 1930s.

However, a Cuban bar owner José García created a handheld version of ropa vieja to serve to his tipsy customers. The story goes that García’s establishment was so messy that patrons started to refer to him as “Sloppy Joe,” a name which stuck to the sandwich as well. It was Ernest Hemingway, a favorite patron of Sloppy Joe’s in Havana, who encouraged his fishing and drinking buddy Joe Russell to change the name of his Key West bar to “Sloppy Joe’s”. In still another disputed version, Russell laid claim to creating the Americanized version of Garcia’s ropa vieja sandwich. Whatever the real story is, Sloppy Joe’s in Key West serves tens of thousands of the sandwiches each year.

Cuban ropa vieja

Ropa Vieja – Cuban Pulled Beef

This special dish may look like its name ("old clothes" in English), but is actually a really delicious Cuban beef dish served throughout the Caribbean. Long, slow cooking creates thin strands of shredded beef surrounded by soft tomato, onions, and bell peppers. Two recipes, traditional and Instant Pot, are presented below. Both share the exact same ingredients. Leftovers make wonderful sandwiches. This sandwich is arguably the origin of the American sloppy joe.
5 from 2 votes
Print Pin
Course: Lunch, Main Course
Cuisine: Caribbean, Cuba
Prep Time: 40 minutes
Cook Time: 1 hour
Total Time: 1 hour 40 minutes
Servings: 8
Author: My Hungry Traveler


  • Large Dutch oven with cover or large heavy pot


  • lb Flank steak (brisket or skirt steak are OK substitutions)
  • Kosher salt and fresh ground pepper
  • 3 tbsp Vegetable oil
  • 1 large Onion, sliced
  • 3 medium Red and/or yellow bell peppers
  • 8 cloves Garlic, minced
  • 14 oz Can diced tomatoes
  • 1 tbsp Tomato paste
  • 1 cup Chicken broth or stock
  • 1 tsp Dried oregano
  • ½ tsp Ground allspice
  • 1 tsp Ground cumin
  • ½ cup White wine (water works OK)
  • 2 Bay leaves
  • 1 medium Celery rib, cut in half
  • 1 medium Carrot, cut in half
  • ½ cup Pimento-stuffed olives, cut into thirds
  • ½ cup Chopped cilantro


Traditional Ropa Vieja

  • Prepare Steak – Preheat oven to 350°F (180°C). Cut steak in half, season with salt and pepper, and add to Dutch oven with oil over medium-high heat. Working in 2 batches, cook meat until browned, about 3 minutes per side. Transfer steaks to a plate.
  • Prepare Base – Lower heat to medium and cook onions and peppers in same pot until tender, about 8 minutes. Add garlic and cook, stirring, one minute more.
    Stir in tomato paste, cumin, oregano, and allspice. Stir another minute. Deglaze pot with wine for about 2 minutes, scraping up all the browned bits from bottom.
    Pour in canned tomatoes with their juices and chicken stock. Nestle beef and its juices, bay leaves, celery, and carrots into the liquid. If ingredients are not fully covered, top off with addition stock.
  • Cook, Shred, and Serve- – Transfer covered Dutch oven to oven and cook for about 1½ hours until beef is tender. Remove bay leaves, celery, and carrot from pot and discard. Remove meat and using two forks, pull meat into long thin strands. Return beef shreds to pot, add olives, and stir to combine. Simmer pot over medium heat to reduce sauce to a thick sauce. Season with salt and pepper, add cilantro, and serve with white rice and beans.

Instant Pot Ropa Vieja

  • Season steak with salt, pepper, cumin, allspice and oregano. Set aside.
    Set Instant Pot to SAUTE and once HOT, add oil. Once oil is hot, add onions, garlic, peppers, olives, and bay leaves. Sauté about 4 minutes, then add tomato paste, diced tomatoes, and wine and stir for another 3 minutes.
    Stir in chicken stock, add beef and flip a few times to fully coat with sauce.
  • Set Instant Pot to PRESSURE COOK on High for 38 minutes with valve set on Natural release. When done, wait for release to complete and pin to pop-up. Set valve to manual release after 10 minutes. When pot is depressurized, remove beef and shred into long strands using two forks. Discard bay leaves and stir shredded beef into pot. Season to taste with salt and pepper. If desired, add chopped cilantro and a little squeeze of lime juice. Serve over white rice.


Calories: 304kcal | Carbohydrates: 10g | Protein: 32g | Fat: 14g | Saturated Fat: 4g | Polyunsaturated Fat: 3g | Monounsaturated Fat: 5g | Trans Fat: 0.04g | Cholesterol: 86mg | Sodium: 412mg | Potassium: 780mg | Fiber: 2g | Sugar: 5g | Vitamin A: 2799IU | Vitamin C: 65mg | Calcium: 72mg | Iron: 3mg

Search All MHT Recipes:

Key Ingredients
Cooking Method

Search all Recipes 

Load More