Whip up a batch of this Spanish Rice And Beans in under an hour! Loaded with plant protein and Mexican flavors, it’s guaranteed to bring excitement to family dinners or weekly lunches.


large bowl of spanish rice and beans on white background

When you need a bright and festive side dish in under an hour, turn to Spanish Rice and Beans (also known as Mexican Rice). The ingredients in this protein-rich recipe are uncomplicated and friendly to your wallet. It’s the perfect companion for a kid-approved dinner, lunches throughout the week, or even potlucks. 

Spanish rice is not a dish from Spain at all, but is actually Mexican inspired. Depending on where you live or grew up, it may be called something different, but it refers to the same sort of dish. This recipe is my own spin on a version I’ve been eating for years.

The rice is cooked on the stovetop while deep flavors from cumin, paprika, salsa, and vegetable stock soak into each grain. The added beans at the end will give this side dish enough protein to keep you full for hours. 

I love to serve this on the side of my Vegan Enchilada Casserole or added to my Best Ever Vegan Taco Meat.

This recipe is…

  • Cheap and easy!
  • Family-friendly
  • Budget-friendly
  • Full of flavor
  • And super flexible


dark pan filled with rice and beans, cilantro on top, colorful spoon in it

Ingredients You Need

  • Onion – A neutral-tasting onion, such as white or yellow, is best.
  • Long Grain Brown Rice – Use white long grain rice if preferred. Simply cook the white rice for 15 to 20 minutes instead of 40.
  • Vegetable Broth – The broth will soak into the rice as it cooks on the stovetop, giving it a more savory flavor.
  • Salsa – Feel free to use your favorite kind of salsa. Try to use a tomato-based salsa rather than a sweet kind with either mango or pineapple.
  • Ground Cumin – Don’t skip the cumin! This seasoning brings an unmistakable Spanish flavor to the rice dish.
  • Smoked Paprika – For a little heat and smokiness!
  • Canned Beans – One 15 ounce can of either kidney, black, or pinto beans is all you need. You can also cook dried beans in an Instant Pot beforehand if you prefer.
  • Salt
  • Cilantro – For serving. Feel free to swap it out with sliced green onions if you aren’t a fan.

How to Make Spanish Rice and Beans

Begin by sautéing the diced onion in a large pot with some oil over medium heat. Sauté for 3 to 4 minutes until soft and fragrant.

chopped onion in a pan

Next, add the rice, vegetable broth, salsa, cumin, and paprika. Stir to combine.

Bring the mixture to a boil, lower the heat, then cover and simmer for about 40 minutes or until the rice is tender and cooked.

rice, tomatoes and other ingredients in a pan, not mixed up

Next, stir the drained and rinsed beans into the rice mixture. Add salt to taste.

Let the cooked Spanish rice and beans sit for at least 10 minutes before serving. To finish, sprinkle with fresh cilantro or green onions.

Can I Make it in an Instant Pot?

You can easily cook Spanish rice and beans in an Instant Pot! Here’s how to do it:

  1. Sauté the onion with some oil in the Instant Pot, then add in the rest of the ingredients (except the beans) and stir. 
  2. Cook at high pressure for 24 minutes. Let the pressure release naturally, then stir in the beans and add more salt to taste.

In need of more information? Check out my detailed guide on cooking Spanish rice in an Instant Pot.

How to Store

Leftover rice and beans is an excellent “grab and go” snack or side dish throughout the week. They can be included in your weekly lunches or a simple option when you need a quick snack!

To store rice and beans, add any leftovers to an airtight container. Keep them in the fridge for up to 3 days. 

To reheat the chilled rice and beans, microwave them for 1 or 2 minutes. Alternatively, add leftovers to a skillet on the stovetop and cook on medium-low until warmed through.

Make sure the leftover rice is completely cool before storing it away. This will help the meal stay as fresh as possible.

Adjust the Flavors

You can easily adjust the flavors to fit your preferences. An easy solution would be to add more salt or pepper to round out the flavors, but let’s not stop there! Follow my suggestions if you’d like to add a little more flavor, heat, or substance to your rice and bean dish:

  • For heat, add in 1 or 2 diced jalapeño peppers (seeds removed or left in to make it extra spicy) or a sprinkle of chili flakes.
  • For acidity, finish the Spanish rice and beans off with 1 or 2 tablespoons of lime juice.
  • For substance, sauté diced red bell peppers and minced garlic along with the onion, then stir in green olives to the cooked rice dish.

pan with red rice, adding black beans to it

What Can I Serve with Rice and Beans?

Try vegan beans and rice on the side of your main dish or added to any of these tasty Mexican recipes:

square image of a bowl of rice and beans, cilantro and tomatoes on the side
4.72 stars (42 ratings)

Spanish Rice and Beans

This recipe for Spanish Rice And Beans is ready in under an hour! Loaded with flavor, it’s guaranteed to bring excitement to family dinners or weekly lunches.
Prep: 5 minutes
Cook: 45 minutes
Total: 50 minutes
Servings: 6 servings


  • 1-2 tablespoons olive oil
  • 1/2 medium white or yellow onion, finely diced
  • 2 cups long grain brown rice
  • 3 cups vegetable broth
  • 1 1/2 cups salsa, tomato based
  • 1 teaspoon ground cumin
  • 1 teaspoon smoked paprika
  • 15 ounce can black beans OR kidney beans, drained and rinsed
  • salt, to taste
  • fresh chopped cilantro, for serving, optional


  • In a large pot, sauté the diced onion in the oil for 3-4 minutes over medium heat, then add rice, broth, salsa, cumin and paprika. Stir, then bring to a boil, lower heat, cover and simmer for about 40 minutes until the rice is cooked.
  • Once the rice is cooked, stir in the drained/rinsed beans. Add more salt to taste. Let it sit for at least 10 minutes before serving. Sprinkle with cilantro, if desired and serve.


  1. May use white long grain rice if preferred. Simply cook the rice for 15-20 minutes instead of 40.
  2. Instant Pot Version: Sauté the onion in IP, then add the rest (except the beans) and stir. Cook at high pressure for 24 minutes. Let the pressure release naturally, then stir in the beans and add more salt to taste.
  3. May serve with chopped green onions instead of cilantro if desired.
  4. For more heat, add in 1-2 diced jalapeños with the onion or a sprinkle of chili flakes. For acidity, finish the dish with 1-2 tablespoons fresh lime juice. For substance, add a diced red bell pepper with the onion, and stir green olives into the finished dish.
  5. Leftover rice and beans will keep in the refrigerator for 3 days or so, and make a perfect meal prep for quick lunches.


Serving: 1serving | Calories: 373kcal | Carbohydrates: 71g | Protein: 12g | Fat: 5g | Saturated Fat: 1g | Sodium: 934mg | Potassium: 601mg | Fiber: 10g | Sugar: 5g | Vitamin A: 726IU | Vitamin C: 2mg | Calcium: 58mg | Iron: 3mg
Course: Main Dish, Side Dish
Cuisine: Mexican
Author: Nora Taylor
Did you make this recipe?Mention @nora_cooks_vegan_ or tag #noracooks!


We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com. Read my full disclosure here.

Posted In: , , , , , , , , , , , , , ,

you may also like:


  1. I found this to be seriously under seasoned.
    I had to add triple the amount of spices after it cooked to bring it up to something that resembled what I feel is Mexican rice.

  2. I did this in the instant pot as described except I washed and drained the rice first. Taste was there but this was wayyyy too soggy with the times you gave. Next time I will natural release 5 mins max

  3. This is one of the easiest recipes and makes a lot so I freeze it and we have easy food when needed. Also perfect for California hot summers so we aren’t heating up the house!

    I’ve made this with white rice and brown rice. My husband loves it so much.
    I add an extra can of beans because we like them (black and red) and frozen corn.
    I want to try it with green salsa next time but I know it is so good with the Pace Picante so I haven’t tried it yet.

    Absolutely the perfect burrito filler!

    1. I’m thrilled to hear you and your family are loving the recipe! Thanks for your awesome review and feedback!

    1. I’m sure the rice could be finished in the oven after the mix has come to a boil in a pot on the stove. However, I’m not sure if it will work or not because I haven’t tested this method.

  4. Ok. So the rice did nothing but try to burn on the very lowest setting on the stove. And for the love of all that is holy, RINSE THE RICE until the water is clear before adding it because otherwise you end up with a rebellious, gelatinous sticky sludge that refuses to not stick to the pan. But. BUT! The rice eventually softened, and the kids love it. I mean have-had-it-for-the-last-three-meals love it (which is good, because it makes a boatload.) So, thank you for the recipe. But pleeeeeeease add a step to rinse the rice!

  5. I am glad I found your Spanish rice recipe using brown rice, because most recipes use white rice. My Spanish rice is always soupy since I add too much liquid because I am scared of burning it. But this time, using the amount of liquid you recommend and simmering low, then very low, then even lower for the last 3 minutes, it came out perfectly cooked and not soupy at all! I added black beans and kidney beans, so we have a good amount of leftovers for tomorrow’s lunch 🙂 Thank you for this great recipe!

    1. You are welcome, Silvia! How awesome your rice turned out just like you love it! Thanks for your terrific feedback and review!

  6. Great recipe and I will make again! My daughter loved it. I used what I had on hand and made 1 1/2 times the recipe listed. I used medium grain white rice (what I always have). I had no onion, used onion powder and added with other spices. No vegetable broth but used cubed knorr bouillon. Didn’t want to use all the salsa so I measured out one can of fire roasted diced tomatoes and rest with salsa. I used heaping teaspoons of spices and also added one packet of sazon seasoning from the orange and yellow box. Mmm, this is a winner!!

  7. My friend and I made this today, it came out really good. I did change the recipe a bit since I used what was on hand. Instead of salsa I had diced tomatoes with chili’s, I had short grain brown rice not long, and chicken broth not vegetable. We wrapped it in tortillas with some sour cream. Very yummy and it makes a lot so it’s super cheap when you’re broke like we are.

  8. My friend and made this today, it came out really good. I did change the recipe a bit since I used what was on hand. Instead of salsa I had diced tomatoes with chili’s, I had short grain brown rice not long, and chicken broth not vegetable. We wrapped it in tortillas with some sour cream. Very yummy and it makes a lot so it’s super cheap when you’re broke like we are.

    1. Hi Leslie. Sounds delicious! Thanks for sharing your experience with making the rice, as well as your fabulous feedback and review!

  9. Turned out great. Cooked in instant pot – had to cook about 10 more minutes but flavor was wonderful. Served switch your sour cream enchiladas. Yum. Thanks

  10. This recipe was excellent. I made a few minor adjustments. I used white rice instead of brown, 4 cups of vegetable broth instead of 3, and simmered for 30 minutes instead of 40. I also added extra cumin and paprika than the suggested amount and a small amount of adobo, and sautéed some red, yellow, and green peppers with my onions. It was so good and flavorful, the whole family loved it. I topped mine with a dallop of sour cream and tapatio!

    1. Hi Jade. Your rice sounds wonderful! Thanks so much for taking time to share your terrific feedback, ideas, and review!

  11. The best rice and beans recipe I have tried. My husband had 2 helpings! I didn’t have the smoked paprika on hand, so I used the sweet paprika my sister brought me from Spain. Before serving I placed Spanish olives halved, green onion, and cilantro on top. It added just a bit more flavor and the olives are very salty. I was so glad that I didn’t put them in during the cooking. This is now my go-to recipe. Fast, easy and delicious. Thank you, Nora!

    1. Hi Jeannie. You are welcome! The additions to your rice sound really delicious! I’m so glad that you love the recipe, and that it will be your go-to for rice and beans! Thank you for your terrific feedback and ideas! Happy cooking!

  12. I’ve made this recipe many times. We use it as burrito filler or fried egg on top or tofu on top. It’s a great staple recipe.

    1. Thanks for your wonderful feedback and ideas, Lindsay! I’m glad you are enjoying the rice and beans! Your ideas sound delicious!

  13. Not as good as I hoped but I will keep the recipe and switch things up some next time. I had to cook the rice for more like 60 minutes before it was done, and the liquids absorbed. Think I will use regular white rice next time and not brown. Double or Triple up on the Cumin. I used a jar of Newman’s Medium Salsa but seemed like it disappeared during cooking. No flavor from it. Try a pint of fresh salsa next time vs. jar.

  14. I am so ANGRY. Took over 2 hours to cook actually, rice took FOREVER to cook and if you don’t simmer it, it just burns. Tasted like tomato and nothing else, even though I doubled the spices. Actually needed 58 ounces just to get the long grain rice to cook. Upset I wasted money on this, it was not good and I’m angry I got looped in by all the 5 star ratings.

    1. I’m sorry this didn’t work out for you. A lot of the flavor comes from the 1 1/2 cups salsa, so the brand you use will determine a lot of the flavor. Use a flavorful tomato based salsa for best results. Are you saying you needed to use extra broth or salsa for the rice to cook? I’m a bit confused by your comment. Also, it’s true that if you cook the rice too high it will burn and use up all the liquid too quickly. This is just how cooking rice works, especially when you add salsa and other ingredients to cook with it. The rice needs to simmer not boil for 40 minutes. This has worked for many people, and I make it often myself without issues, but again I’m sorry it didn’t work out for you.

      1. Yes, and simmering it took two and half hours and 58 ounces of broth. I’m sorry. I don’t mean to sound mean and I’ve calmed down even though I threw the whole pot away. I’m just tight on money and I don’t want to waste ingredients and food.

        1. This has happened to me. If you add in the rice first and it warms up too much before you add in anything but warm liquid, it can shock the rice and make it take forever to soften. You can either add the liquid in before the rice to avoid that or warm up the liquid. Hope that helps!

  15. I love this recipe. My family loves it. And  I always follow it to a T, BUT the rice always takes too long to cook, sometimes double the time of what the package says. Ex. White rice takes 40 minutes and Brown rice takes over an hour. Why? What can I do about it? Thanks 

  16. Just made this – so good and filling! I used canned tomatoes in place of salsa. Such a tasty meal for cheap,, which I definitely need right now.

  17. I just tried this recipe tonight for the first time and absolutely love it! I cooked it in a Dutch oven on a flat top grill as I am camping and it came out just fine. I substituted salsa verde because it’s all I had on hand and added some vegan sausage and broccoli left over from dinner last night. SO GOOD! My boyfriend even liked it and this usually is not his cup of tea. Definitely doing this again. Thanks for the recipe! 

    1. You are welcome! Sounds like a fun meal while camping! I’m so glad you guys both loved the rice and beans! Thank you for sharing your fun and positive feedback and review!

  18. Hey Nora,

    How would you suggest making this in an instant pot with long grain white rice? (eg. cooking time, water ratio, release…)

    Thanks so much!

    1. Hi Tammy. Follow the same Instant Pot directions in the post above, but cook at high pressure for only 6-8 minutes. I hope this helps!

      1. Great recipe! Made easy in the instapot! Used 2 1/2 cups of broth due to less evaporation, but also rinsed my rice which adds a little moisture. Added a diced jalapeño. 8 minutes pressure cook and then 22 min natural (sealed) release. 😋

  19. I tried this recipe last night because I was in the mood for Spanish rice and beans.  This did not disappoint!  I followed the recipe to a tee and it was delicious!   My partner is Cuban/Spaniard  and said, this was one of the best rice and beans I’ve ever made.  Thank you!

    1. Thank you! I’m glad you both loved the rice and beans! I appreciate you taking time to share your wonderful feedback!

  20. This was super easy and delicious!!! I had to add another cup of broth so in total was 4 cups instead of 3. I think for long grain brown rice more liquid is needed. (at least it was for me) This will become a family favourite for sure! Already shared the recipe with a friend!

    1. Hi Cheryl. I’m glad you found the rice and beans delicious! Brown rice does take longer to cook, and while cooking, is best to simmer quite low. Thank you for sharing your wonderful feedback. I appreciate you sharing my recipes with your friend! Happy cooking!

  21. I made this tonight for dinner and the flavor was really good! It made way too much for just one person so next time I will cut it in half maybe even more than that. I am really enjoying your recipes, thank you for sharing them. Next weekend the coconut cake.

    1. Hi Shelia. Thank you for taking time to share your wonderful review and feedback. I am so glad that you are enjoying my recipes, thank you for using them! I hope you love the coconut cake! Happy cooking!

  22. Very tasty recipe! I made it in the Instant Pot and the rice was perfect. I substituted a can of tomato sauce because I didn’t have salsa on hand and it came out great.
    We mixed in some Impossible Spicy Sausage and cheese.

    1. I love the idea of spicy sausage in the rice! Yum! Thank you for sharing your comments and ideas! I’m so glad you loved the recipe!

      1. I love this recipe. It’s delicious and I love that it uses brown rice. I use the small (16 oz) size jar of Newman’s chunky mild salsa because we don’t like a lot of spice ( it’s about 1 1/2 cups or a little over). Smoked paprika adds a lot, as well as cilantro and a squeeze of lime juice at the end.
        The salsa does make a difference and it adds a variety of flavors while only having to chop onions.
        It takes mine 40 to 50 min to cook and then I always do the 10 min rest. I think it varies due to the rice brand or how I measured the broth or rice? Thanks for a great staple recipe.

        1. You are welcome, Chris! I’m thrilled you are enjoying the rice recipe! Thanks for your wonderful review and feedback!

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating

This site uses Akismet to reduce spam. Learn how your comment data is processed.