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. Last night I cooked this very last minute and served it with mexican ground turkey, fresh spinach, cheese, sour cream, avocado, & tortillas. Everyone loved it, lots of flavour, & great as leftovers! This is definitely on my list of yummy healthy quick meals! Thanks for sharing!

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.