Arroz con gandules is a beloved Puerto Rican rice dish made with pigeon peas, sofrito, and seasoned pork, all cooked together in one pot until the rice is tender and deeply flavorful. It is a staple at family gatherings and holiday tables, prized for its savory, aromatic profile and its ability to feed a crowd. This recipe works because it layers flavors—starting with a rich sofrito base and finishing with a perfectly cooked, slightly toasted rice.
Ingredients
- 3 tbsp (45 ml) olive oil
- 4 oz (113 g) smoked ham, diced into 1/4-inch pieces
- 4 oz (113 g) salted pork (or bacon), diced into 1/4-inch pieces
- 1 medium onion, finely chopped (about 1 cup / 150 g)
- 1 green bell pepper, finely chopped (about 1 cup / 150 g)
- 4 cloves garlic, minced
- 2 tbsp (30 g) tomato paste
- 1/2 cup (120 ml) homemade or store-bought sofrito
- 1 tsp (5 g) ground cumin
- 1 tsp (5 g) dried oregano
- 1 tsp (5 g) salt, plus more to taste
- 1/2 tsp (2.5 g) black pepper
- 1 bay leaf
- 1 can (15 oz / 425 g) pigeon peas (gandules), drained and rinsed
- 2 cups (370 g) medium-grain or long-grain white rice, rinsed
- 2 cups (475 ml) water or low-sodium chicken broth
- 1/4 cup (60 ml) pimento-stuffed olives (optional)
Instructions
- Heat the olive oil in a large, heavy-bottomed pot or Dutch oven (at least 5 quarts) over medium heat. Add the diced ham and salted pork. Cook, stirring occasionally, until the pork is browned and has rendered its fat, about 8-10 minutes.
- Add the onion, green pepper, and garlic. Cook, stirring, until the vegetables are soft and fragrant, about 5 minutes.
- Stir in the tomato paste and cook for 1 minute, until it darkens slightly. Add the sofrito, cumin, oregano, salt, black pepper, and bay leaf. Cook for 2-3 minutes, stirring constantly, until the sofrito is well incorporated and aromatic.
- Add the drained pigeon peas and the olives (if using). Stir to combine with the sofrito mixture.
- Add the rinsed rice and stir for 1-2 minutes, coating every grain with the oil and sofrito mixture.
- Pour in the water or broth and stir gently. Bring the liquid to a boil over high heat. Once boiling, reduce the heat to low, cover the pot tightly with a lid, and let it simmer gently for 20 minutes.
- After 20 minutes, remove the lid. The rice should have absorbed most of the liquid. Gently fluff the rice with a fork, turning it from the bottom to the top. Re-cover the pot and cook for another 10-15 minutes on the lowest possible heat, until the rice is fully tender and the liquid is completely absorbed.
- Turn off the heat and let the rice rest, covered, for 10 minutes. Remove the bay leaf, fluff again, taste for salt, and serve hot.
Tips
- Rinse the rice well: Rinse the rice in a fine-mesh strainer under cold water until the water runs clear. This removes excess starch and prevents the rice from becoming gummy.
- Don’t stir too much after adding liquid: Once the liquid is boiling and you’ve covered the pot, resist the urge to stir. Stirring releases starch and can make the rice mushy. Only fluff gently after the cooking time.
- Adjust the liquid: Different rices and stoves absorb liquid differently. If the rice is still hard after the initial 20 minutes, add 2-3 tablespoons of hot water, cover, and cook for 5 more minutes. If it’s too wet, leave the lid off for the last 5 minutes of cooking.
- Substitute the pork: If you can’t find salted pork, use 4 oz of thick-cut bacon or 4 oz of smoked turkey kielbasa. The flavor will change slightly, but the dish will still be delicious. For a vegetarian version, omit the meat and use olive oil and 2 cups of vegetable broth.
Serving Suggestions
Arroz con gandules is a complete side dish that pairs beautifully with roasted or fried chicken, pork chops, or grilled fish. It is also excellent served alongside a simple green salad with a tangy vinaigrette to cut through the richness. For a traditional Puerto Rican feast, serve it with pernil (roasted pork shoulder) and a side of ripe plantains.
Variations
- With coconut milk: Replace 1/2 cup (120 ml) of the water or broth with unsweetened coconut milk for a slightly sweet, tropical flavor.
- Spicy version: Add 1 diced jalapeño or 1 teaspoon of crushed red pepper flakes along with the sofrito for extra heat.
- With sausage: Add 1/2 cup (about 75 g) of sliced Spanish chorizo or smoked sausage along with the pork for a deeper, smokier flavor.
- Baked version: After step 5, transfer the mixture to a baking dish, cover with foil, and bake at 350°F (175°C) for 45-50 minutes, until the liquid is absorbed and the rice is tender.
Storage and Reheating
Store leftover arroz con gandules in an airtight container in the refrigerator within 2 hours of cooking. It will keep for up to 4 days. To reheat, place the desired amount in a microwave-safe dish, sprinkle with a tablespoon of water, cover, and microwave in 1-minute intervals until hot. Alternatively, reheat in a skillet over medium-low heat with a splash of water or broth, stirring frequently, until heated through. The rice will dry out slightly upon reheating, so adding a little liquid helps restore moisture. You can also freeze the rice in a freezer-safe container for up to 3 months; thaw overnight in the refrigerator before reheating.
Frequently Asked Questions
Can I use canned pigeon peas or do they need to be dried? Canned pigeon peas are the most common and convenient option, and they work perfectly in this recipe. If you use dried pigeon peas, you will need to soak and cook them separately before adding them to the rice, as they take much longer to become tender. One can of pigeon peas is roughly equivalent to 1.5 cups of cooked dried peas.
What is sofrito and can I make it at home? Sofrito is a fragrant blend of culantro, cilantro, green peppers, onions, garlic, and sometimes tomatoes, pureed together. It is the foundational flavor of many Puerto Rican dishes. You can find it in the Latin foods section of most supermarkets. To make it at home, blend 1 bunch of cilantro, 1 bunch of culantro (or extra cilantro), 1 green bell pepper, 1 onion, 4 garlic cloves, and 2 tablespoons of olive oil until smooth.
Why is my rice sticking to the bottom of the pot? A little bit of sticking and the formation of a golden-brown crust, known as pegao, is actually a prized feature of arroz con gandules. However, excessive sticking usually means the heat was too high or you stirred the rice too much. Always cook on the lowest heat setting after the liquid boils and avoid stirring during the cooking process.
Can I make this dish in advance? Yes, arroz con gandules is an excellent make-ahead dish. The flavors actually meld and improve overnight. Cook the rice as directed, let it cool completely, and store it in the refrigerator. Reheat gently with a little added liquid before serving.
Is this dish gluten-free? Yes, this recipe is naturally gluten-free as long as you use a gluten-free broth and check that your store-bought sofrito doesn’t contain any wheat-based additives. All the core ingredients—rice, pigeon peas, vegetables, and pork—are naturally gluten-free.
Can I use brown rice instead of white rice? You can, but the cooking time and liquid ratio will change significantly. Brown rice requires about 2.5 cups (590 ml) of liquid per cup of rice and a cooking time of 40-50 minutes. You will need to adjust the recipe accordingly, adding more broth and extending the simmering time.
Related
- Is Sifting Flour Important? When It Matters
- Blind Baking a Frozen Pie Crust: Time and Tips
- Dry Brining Standing Rib Roast: Timing and Roasting
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).