Side Dishes
This Goya Pinto beans recipe brings the heart of Puerto Rican cuisine to your kitchen in one flavorful, one-pot wonder. The secret lies in sofrito—a fragrant blend of peppers, onions, and garlic—that transforms simple ingredients into a dish rich with tradition.
I’ve perfected this recipe over years of family gatherings, where it never fails to disappear from the table.
The magic happens in the slow simmer, where Goya beans soften while absorbing the deep, savory flavors of sofrito, rice, and optional proteins like ham or chicken. This method delivers restaurant-quality results without requiring multiple pots or complicated techniques.
The key is patience—letting the flavors meld over 30 minutes of gentle cooking creates that signature tender texture and aromatic richness.
By the end, you’ll have a steaming pot of creamy beans and rice, infused with sofrito’s smoky warmth and balanced by subtle spices. The dish serves as both a satisfying side and a hearty main, perfect for weeknight dinners or festive gatherings.
Every bite carries the comfort of home-cooked Puerto Rican tradition, made simple for your kitchen.
Optional proteins like bacon or chicken add depth, while a sprinkle of cilantro or a squeeze of lime brightens the final dish. This recipe scales effortlessly—double it for parties or halve it for a cozy meal. Let’s bring the flavors of home to your table with this one-pot classic.
Ingredients for goya pinto beans
Sixteen essential ingredients transform into Puerto Rican comfort in one pot.
| Ingredient | Amount | Notes |
|---|---|---|
| Goya Pinto Beans 🌾 | 2 cups | Dried, rinsed and soaked overnight |
| Sofrito 🧅 | 1 ½ cups | Homemade or high-quality jarred |
| Long-Grain White Rice 🍚 | 1 cup | Uncooked, medium grain preferred |
| Diced Ham 🥓 | ½ lb | Smoked or regular, diced small |
| Chicken Breast 🍗 | 1 lb | Boneless, skinless, diced small |
| Tomato Paste 🍅 | 2 tbsp | High-quality, unsweetened |
| Olive Oil 🫒 | 2 tbsp | Extra-virgin for best flavor |
| Garlic Cloves 🧄 | 4 cloves | Fresh, minced for sofrito |
| Red Bell Pepper 🌶️ | 1 whole | Diced, for sofrito base |
| Yellow Onion 🧅 | 1 whole | Diced, for sofrito base |
| Cumin 🌿 | 1 ½ tsp | Ground, toasted for depth |
| Oregano 🍃 | 1 tsp | Dried, Mexican preferred |
| Bay Leaves 🌿 | 2 whole | Dried, for infusion |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal kosher salt |
| Black Pepper 🌶️ | ½ tsp | Freshly ground for heat |
| Fresh Cilantro 🌿 | ¼ cup | Chopped, for garnish |
| Lime 🍋 | 1 whole | Juiced, for brightness |
The sofrito is non-negotiable for authentic flavor. Homemade sofrito—blended red bell pepper, yellow onion, garlic, and olive oil—delivers the deepest, most complex base. For convenience, Goya Sofrito from the Latin aisle works beautifully, though it lacks the freshness of homemade. If using jarred, opt for brands like La Preferida or Mamares, which balance smokiness with sweetness. The beans themselves should be Goya Pinto, not subpar store brands—this is where the dish’s signature creamy texture begins. Soak overnight to ensure tender, even cooking; never skip this step. For the proteins, smoked ham adds a subtle sweetness, while chicken breast provides lean protein without overpowering the sofrito’s delicate aromatics.
No sofrito on hand? Sauté 1 diced red bell pepper, 1 onion, and 4 garlic cloves in olive oil for 5 minutes as a quick substitute—it won’t be identical, but it’ll save you from skipping the dish entirely. Swapping ham for bacon? Use half the amount to avoid overwhelming the sofrito’s nuanced flavors. For a vegetarian version, omit the proteins and increase the sofrito to 2 cups to compensate. The tomato paste can be replaced with 1 cup of crushed tomatoes, though it’ll dilute the sofrito’s intensity slightly. If you’re short on time, pre-cooked rice works, but uncooked rice ensures a more authentic, hearty texture—just remember to add an extra 1 cup of water to the pot. The cilantro and lime are for finishing; omit them if you prefer a more traditional presentation, but they’re worth the effort for a bright, restaurant-quality touch.
This dish tastes even better the next day as flavors meld further. Store leftovers in an airtight container in the fridge for up to 5 days, or freeze for 3 months in portion-sized containers. For reheating, add 2 tbsp of water per cup of beans and simmer gently to restore creaminess. The sofrito can be prepped ahead and stored in the fridge for 1 week or frozen for 3 months, making this a perfect make-ahead recipe for gatherings. Double the recipe for parties—it’s a crowd-pleaser that disappears quickly. Always taste as you go; Puerto Rican cuisine relies on balancing sofrito’s richness with acidity, so a squeeze of lime or pinch of salt can elevate the dish at any stage.
Why You'll Love This Recipe
- Here’s what sold me: a full, flavorful meal for under $10 per serving. Pinto beans stretch the protein, ham adds richness, and chicken keeps it filling. Leftovers? Even better—freeze portions for lazy days or last-minute guests. No waste, all flavor.
- One-Pot Magic: I swear by this recipe—just toss everything in one pot, and the sofrito works its flavor magic while you sip your coffee. No fussing with separate pans or timers; the beans and rice simmer together until tender, and that ham adds a salty depth without extra effort.
- Sofrito Soul: Honestly, the sofrito is the star here. That blend of garlic, bell peppers, and herbs infuses every bite with a bright, aromatic punch. The chicken stays juicy, the ham melts into savory bits, and the beans? Rich, smoky, and ridiculously satisfying—like a hug in a bowl.
- Lunchbox Hero: Between us, this is my go-to for meal prep. Cook a big batch on Sunday, and you’ve got hearty lunches all week—just reheat and serve. The rice stays fluffy, the beans hold their shape, and even my picky teen grabs seconds. (Yes, even on a Tuesday night.)
Step-by-step instructions for sofrito-infused Goya Pinto beans
This one-pot method delivers restaurant-quality flavor with minimal cleanup.
Sauté the Aromatics and Chicken
Heat the 2 tablespoons olive oil in a large, heavy-bottomed pot over medium-high heat. Add the 1 whole yellow onion and 1 whole red bell pepper, both diced from the sofrito base ingredients, and cook for 5 minutes until softened and slightly caramelized. You'll know they're ready when they release from the bottom of the pan and develop a golden hue.
Push the vegetables to one side of the pot and add the 1 pound chicken breast, diced small. Cook undisturbed for 3-4 minutes until the chicken develops a golden crust. This initial sear locks in juices and builds deep flavor. Once the chicken is lightly browned, stir to combine with the vegetables, breaking up any large pieces.
Build the Sofrito Base
Add the 1.5 cups sofrito to the pot and stir well to coat the chicken and vegetables. Cook for 3-4 minutes until the sofrito begins to darken slightly and the flavors meld together. This step develops the foundational taste that carries through the entire dish.
Stir in the 2 tablespoons tomato paste, the 1.5 teaspoons cumin, 1 teaspoon oregano, 2 whole bay leaves, 1.5 teaspoons salt, and 0.5 teaspoon black pepper. Cook for an additional 2 minutes, allowing the spices to bloom and infuse into the sofrito mixture. The bay leaves will release their aromatic oils, adding depth to the flavor profile.
Add Beans, Ham, and Rice
Drain the 2 cups soaked Goya pinto beans and add them to the pot along with the 0.5 pound diced ham. Stir gently to combine, ensuring the beans are evenly distributed throughout the mixture. The ham will begin to render its fat, which will baste the beans and chicken as they cook.
Add the 1 cup long-grain white rice and stir again to ensure everything is well incorporated. Pour in 6 cups of water or enough to cover the ingredients by about 1 inch. Bring the mixture to a boil over high heat, then immediately reduce the heat to low to maintain a gentle simmer. The water level should be sufficient to cook the rice and beans properly without burning.
Simmer Until Tender
Cover the pot with a tight-fitting lid and simmer for 45-50 minutes, or until the beans are tender and the rice is cooked through. You'll know the beans are ready when they're soft enough to crush between your fingers but still hold their shape. Avoid lifting the lid during this time to prevent steam from escaping, which could lengthen the cooking time.
After 45 minutes, check the beans for doneness. If they're still slightly firm, continue cooking for another 5 minutes. If they're already tender, proceed to the next step. The rice should be fully cooked and the liquid absorbed, leaving a thick, flavorful mixture.
Finish and Garnish
Once the beans and rice are tender, remove the pot from heat and let it sit, covered, for 5 minutes. This resting period allows the flavors to meld and the rice to finish absorbing any remaining liquid. Discard the 2 whole bay leaves as they've served their purpose and can be slightly bitter if consumed.
Stir in the juice of the 1 whole lime and the 0.25 cup chopped fresh cilantro. The lime juice brightens the dish, cutting through the richness of the sofrito and ham, while the cilantro adds a fresh, herbal note. Taste and adjust the seasoning if needed, adding more salt or lime juice as necessary. Serve immediately, garnished with additional cilantro if desired.
Pro Tips For Making Goya Pinto Beans
- SOAK BEANS 8 HOURS: I learned this the hard way—skipping the soak leaves you with beans that never quite soften, no matter how long you simmer. Use a big bowl, cover with water, and add a pinch of salt. Eight hours later, drain and rinse, and you’ll save hours of cooking time.
- SEAR HAM FIRST: That diced ham looks dry? Don’t toss it straight in. Pat it dry, heat your pot on medium-high, and brown the ham for 3-4 minutes before adding anything else. The crispy edges add depth—trust me, it makes a real difference.
- DON’T SKIP THE CHICKEN SKIN: Chicken breast is lean, but if you leave the skin on, render it in the pot for 5 minutes before shredding. The fat keeps the beans from drying out later, and the flavor? Way richer than plain breast meat.
- LOW-SIMMER BEANS: After adding the sofrito and liquids, turn the heat down to a bare simmer—just enough to see tiny bubbles. I used to crank it up, and the beans would split or turn mushy. Low and slow (about 45 minutes) guarantees creamy, intact beans every time.
Flavor customization for this dish
Spicy Sofrito Twist
For a kick of heat, add 1 tablespoon of chopped habanero or 1 teaspoon of cayenne pepper when building the sofrito base. This elevates the dish with a smoky-spicy depth that pairs perfectly with the beans’ creaminess.
I like to balance it with a splash of agave syrup (1 tsp) to mellow the heat while adding a touch of sweetness. 🌶️
If you prefer a milder heat, swap in 1 teaspoon of smoked paprika for a subtle smokiness. The key is to toast the spices in the olive oil for 30 seconds before adding the sofrito—this deepens their flavor and prevents bitterness.
Always taste as you go; Puerto Rican cuisine relies on balance, so adjust to your spice tolerance.
Citrus-Infused Brightness
Swap the lime for orange juice (¼ cup) or grapefruit juice (2 tbsp) at the end for a tropical twist. The citrus cuts through the richness of the sofrito while adding a refreshing zing. I garnish with thin orange zest strips for an elegant touch.
For extra brightness, add 1 teaspoon of fresh grated ginger when sautéing the aromatics—it adds a warm, floral note that complements the sofrito beautifully.
For a festive touch, serve with a side of mango salsa (diced mango, red onion, cilantro, lime juice) to contrast the hearty beans. The sweet-tart salsa balances the sofrito’s savory depth while keeping the dish vibrant and exciting.
Herb Variations
Replace cilantro with fresh parsley or epazote (1 tbsp) for a different herbal profile. Epazote, a staple in Puerto Rican cooking, adds a slightly bitter, anise-like flavor that pairs wonderfully with beans. If using parsley, add it at the very end to preserve its bright green color.
For a more aromatic finish, sprinkle toasted cumin seeds (1 tsp) over the top before serving—their nutty aroma elevates the dish’s complexity.
For a Mediterranean twist, stir in 1 teaspoon of dried thyme when building the sofrito base. The earthy notes of thyme complement the sofrito’s sweetness while adding a subtle floral depth.
Pair this version with a side of roasted eggplant to create a fusion of Puerto Rican and Middle Eastern flavors.
Protein Swaps
Replace ham with diced bacon (½ lb) for a smoky, salty depth that caramelizes beautifully during cooking. I like to crisp the bacon first, then drain it on paper towels before adding it to the pot to avoid excess grease.
For a vegetarian option, swap in ½ cup of crumbled feta cheese or ½ lb of sautéed mushrooms—both add umami richness to balance the sofrito’s sweetness.
For a seafood twist, add ½ lb of shrimp or calamari in the last 5 minutes of cooking. The shrimp should turn pink and opaque, while the calamari will cook through quickly.
The briny notes of seafood contrast wonderfully with the sofrito’s sweetness, creating a unique fusion dish. Serve with a squeeze of lemon juice instead of lime for a brighter finish.
Sweet and Savory Fusion
Stir in ½ cup of diced pineapple or peaches (fresh or canned, drained) when adding the beans and rice. The natural sweetness of the fruit balances the sofrito’s savory depth, creating a dish that’s both comforting and unexpected.
I recommend using firm, ripe fruit that holds its shape during cooking—avoid overly soft varieties that might turn mushy.
For a dessert-like finish, top the dish with a sprinkle of toasted coconut flakes (2 tbsp) and a drizzle of honey (1 tsp). This sweet-and-savory combination transforms the Goya Pinto into a unique, crowd-pleasing centerpiece that’s perfect for brunch or a festive meal.
The coconut adds a tropical touch that pairs beautifully with the sofrito’s warm spices.
Nutrition facts
Frequently asked questions
Why do Goya Pinto beans need to be soaked overnight?
Soaking overnight is essential to break down the beans' tough skins and ensure even cooking. This step prevents uneven texture and reduces cooking time by 30-45 minutes. The beans absorb water, making them tender and creamy during the 45-minute simmer. Never skip soaking—it’s the secret to that signature melt-in-your-mouth texture!
Can I make this recipe without sofrito?
While sofrito is the heart of this dish, you can substitute it by sautéing 1 diced red bell pepper, 1 onion, and 4 garlic cloves in olive oil for 5 minutes until softened. For deeper flavor, add 1 teaspoon each of cumin and oregano during this step. The dish won’t be identical, but it’ll still be delicious—just less aromatic!
How do I know when the beans are fully cooked?
Test for doneness by gently crushing a bean between your fingers—it should be soft but still hold its shape. The beans should also be tender enough to pierce easily with a fork. If they’re still firm after 50 minutes, add ½ cup more water and simmer for another 10 minutes. Overcooking can make them mushy!
What’s the best way to reheat leftovers?
Reheat gently on the stove with 2 tablespoons of water per cup of beans over low heat until warmed through. Microwaving can make the rice dry, while adding extra liquid prevents a grainy texture. For best results, reheat only what you need—this dish tastes even better the next day!
Can I use canned beans instead of dried?
Yes! Use 2 (15-oz) cans of drained Goya Pinto beans and reduce the water to 4 cups (instead of 6). Skip the soaking step, but simmer for 20-25 minutes to let flavors meld. Canned beans cook faster, but they lack the creamy texture of dried beans. For a shortcut, this works—but traditionalists swear by the dried version!