There’s nothing more comforting than a big pot of homemade Puerto Rican rice and beans simmering on the stove. This is the kind of meal that fills your home with rich, savory aromas and brings everyone to the kitchen before dinner is even ready.
Made with tender pinto or pink beans, homemade sofrito, sazon, and fluffy basmati rice with pigeon peas, this recipe is deeply rooted in tradition. It’s hearty, flavorful, and perfect for feeding a crowd — or enjoying as leftovers throughout the week.

What Makes Puerto Rican Rice and Beans Special?
Puerto Rican rice and beans are all about bold flavor built from simple ingredients. The magic comes from:
- Sofrito – a savory base of onion, green bell pepper, garlic, and cilantro
- Sazon – a vibrant seasoning blend that adds color and depth
- Tomato sauce – for richness
- Slow-simmered beans – cooked in their flavorful broth
- Arroz con gandules – rice cooked with pigeon peas and sofrito
Every family has their own variation. Some add olives or pork, others keep it vegetarian. This version keeps things simple and true to the flavors many Puerto Rican families grew up with.
Key Ingredients
For the Beans
- Dried pinto or pink beans
- Bay leaves
- Homemade sofrito
- Tomato sauce
- Sazon
For the Rice
- Basmati white rice
- Pigeon peas (gandules)
- Sofrito
- Tomato sauce
- Sazon and adobo
These ingredients come together to create layers of savory, slightly smoky flavor with just the right amount of richness.
How It Comes Together
1. Soak and Cook the Beans
The beans soak for 6–8 hours, then simmer until tender. The cooking liquid is essential — don’t drain it! It becomes part of the final flavor.
2. Make the Sofrito
Onions, peppers, garlic, and cilantro are sautéed, then simmered with tomato sauce and sazon. This mixture is stirred into the beans and allowed to cook together so the flavors fully develop.
3. Cook the Rice
Another batch of sofrito is made for the rice. Pigeon peas (with their liquid) and water are added, brought to a boil, then basmati rice is stirred in and simmered until fluffy and tender.
4. Serve
Spoon rice into bowls and top with generous servings of beans and sauce. Garnish with fresh cilantro and avocado slices for the full experience.
Ingredient Tips
- Pink vs. Pinto Beans: Both work beautifully — use what you can find.
- Sazon: You can use store-bought packets or make your own blend at home.
- Pigeon Peas: Traditional, but frozen green peas can be substituted if needed.
- Rice: Basmati gives a fluffy texture, but cooking times may vary if substituted.
Serving & Storage
This recipe easily serves 6 and can be doubled for gatherings. It pairs wonderfully with:
- Avocado slices
- Hot sauce
- Sauteed sausage (if desired)
- Tostones or salad
Leftovers store well in airtight containers in the refrigerator for 4–5 days, making it perfect for meal prep.
Nutrition (Per Serving)
- Calories: 344
- Carbohydrates: 68g
- Protein: 13g
- Fat: 2.9g
- Fiber: 5.8g
Final Thoughts
Authentic Puerto Rican rice and beans is more than just a meal — it’s comfort, culture, and tradition in one bowl. The slow-simmered beans, fragrant sofrito, and perfectly seasoned rice create a deeply satisfying dish that’s worth every step.
Whether you grew up eating it or are trying it for the first time, this recipe is a beautiful way to bring bold, homemade flavor to your table.
Mom’s Authentic Puerto Rican Rice and Beans
Prep Time: 6 hours
Cook Time: 2 hours
Total Time: 8 hours
Serves: 6
Ingredients
For the Beans
- 1 pound dried pinto or pink beans (about 2 cups), sorted and soaked 6–8 hours
- 6–8 cups water or vegetarian broth
- 1–2 bay leaves
Sofrito (for the beans)
- 2 teaspoons olive oil
- ½ cup finely diced yellow onion
- ½ cup finely diced green bell pepper
- ¼ cup finely diced cilantro
- 3 cloves garlic, minced
- 1 cup no-salt-added tomato sauce
- 3 teaspoons (2 packets) sazon
For the Rice
- 2 teaspoons olive oil
- ⅓ cup finely diced yellow onion
- ⅓ cup finely diced green bell pepper
- ¼ cup finely diced cilantro
- 2 cloves garlic, minced
- ½ cup no-salt-added tomato sauce
- 3 teaspoons (2 packets) sazon
- Pinch of adobo (or salt)
- 1 (15 oz) can green pigeon peas (do not drain)
- 3 cups water
- 2 cups basmati white rice
Instructions
1. Soak the Beans
Place beans and bay leaves in a large bowl. Cover with 6–8 cups water or broth (about 1 inch above beans). Soak 6–8 hours at room temperature.
2. Cook the Beans
Bring soaked beans (with soaking liquid) to a boil for 1–2 minutes. Reduce heat to low, cover, and simmer 1–2 hours until tender.
Remove bay leaves. Do not drain the beans.
3. Make Sofrito for Beans
Heat olive oil in a skillet over medium heat.
Add onion, bell pepper, cilantro, and garlic. Sauté 3–5 minutes until softened.
Lower heat, stir in tomato sauce and sazon. Simmer 2–3 minutes.
Add sofrito to cooked beans (with liquid). Simmer uncovered over medium-low heat for 20–30 minutes, stirring occasionally. Keep warm.
4. Make the Rice
In a medium pot, heat olive oil over medium heat.
Add onion, bell pepper, cilantro, and garlic. Sauté 3–5 minutes.
Stir in tomato sauce, sazon, and adobo. Simmer 2 minutes.
Add pigeon peas (with liquid) and 3 cups water. Bring to a boil.
Stir in rice, cover, reduce heat to low, and simmer 20 minutes or until rice is tender.
5. Serve
Taste beans and rice and adjust seasoning if needed.
Serve rice topped with beans and extra bean sauce. Garnish with cilantro and avocado if desired.
