30-Minute Recipes/ Dinner/ Lunch

Spanish Rice and Beans

This easy Spanish rice and beans recipe is a one-pot vegan meal that’s great as a main dish with some leafy greens on the side or as a side dish to your favourite vegan Mexican-inspired meal!

a grey bowl of rice and beans with a fork it it and spinach and tabasco in the background.

Rice and beans are THE staple of any good vegan diet. 

They’re super economical (proving that veganism is not more expensive than an omnivore diet), easy to cook and season, filling, and rich in non-essential amino acids (but where do you get your protein?!?!?!).

Beans and rice make for a delicious and hearty vegan jambalaya and they add texture and binding power to these vegan black bean burgers

Today’s recipe for Spanish rice and beans is a super easy way to cook up a flavourful and nutritious dinner using basic pantry ingredients and just one pot!

How to make Spanish rice and beans

Since the rice and seasonings are being cooked together in the pot, it’s essential to prepare the rice correctly so that you get perfectly cooked, not mushy rice.

First you’ll want to rinse the rice in cool water to get off some of the excess starch. 

I find the most effective way to do this is to put the rice and water in a bowl and swirl it around with your fingers rather than rinsing it in a strainer under running water. 

The toasted rice in a pan.

Pour the water out of the bowl and repeat. Then drain the rice in a strainer and set it aside to dry off a bit while you chop and fry the onion and garlic.

Once the onion and garlic and soft and fragrant, you can toss in the well-drained rice and toast it gently until lightly golden brown.

Be careful with this step because if you don’t stir it frequently or if the heat is too high the rice can easily burn!

Now add the spices and let them “bloom” (bring out the fragrance). I take the pot off the heat for a minute while I do this because paprika can burn easily as well. 

Pouring stock into the pan with the rice and spices.

Now pour in the stock and tomato sauce, put the lid on and bring it to a boil. Turn the heat down to low and let it gently simmer. 

After 12 – 15 minutes the liquid should be absorbed and the rice nearly cooked. Try not to lift the lid but you can quickly sneak a spoonful out if you’re not sure if it’s cooked enough after 15 minutes.

It’s okay if the rice is very slightly underdone (still a bit firm in the middle but not hard) after 12 – 15 minutes because you can let it steam with the lid on for 5 minutes off the heat. 

Pouring tomato sauce into the pan.

Finally, stir in the beans and check the seasoning. That’s it, done!


This Spanish rice and beans recipe is very flexible. I’ve made it with a variety of additional vegetables and seasonings. 

Any veggie can be tossed in after toasting the rice if you finely dice them small enough so that they cook in 12 – 15 minutes.

Try a Tex-Mex mix with red pepper, corn, and zucchini. Stir in some diced avocado after the rice is cooked and top with cilantro and a slice of lime. 

The finished pan of Spanish rice and beans.

If you want it a bit spicy, add in some chili powder with the other spices and/or serve with tabasco sauce on the side.

If you’d like some greens, toss in a handful of chopped spinach or Swiss chard. Swiss chard should be cooked with the rice but spinach could be added before or after cooking the rice.

I used pinto beans for this recipe but you could easily substitute any other kind of bean; kidney, black or even chickpeas are good. Use what you’ve got!

What to serve with Spanish rice

I like this recipe as a quick lunch or dinner with some fresh leafy greens on the side.

You can also use this Spanish rice and beans as a side for vegan enchiladas or as a filling for burritos or tacos.

A grey bowl of rice and beans with a fork in it.

You can use it as a side to these vegan taco stuffed tomatoes or either as a side or as a filling to stuffed peppers.

It also makes a great base for a Mexican-style Buddha bowl. Build your Buddha bowl with some chopped lettuce, tomatoes, avocado, corn, grilled peppers, etc. Top with a simple sauce of vegan yogurt mixed with taco seasoning.

Spanish Rice and Beans

This easy Spanish rice and beans recipe is a one-pot vegan meal that’s great as a main dish with some leafy greens on the side or as a side dish to your favourite vegan Mexican-inspired meal!
5 from 2 votes
Print Pin Recipe Rate
Course: Main Course, Side Dish
Cuisine: Mexican, Tex-Mex
Total Price: $2.29
Price per Serving: $0.57
Prep Time: 5 minutes
Cook Time: 25 minutes
Total Time: 30 minutes
Servings: 4
Calories: 311kcal


  • 1 cup (200 grams) long grain white rice – $0.15
  • 2 tablespoons olive oil – $0.20
  • 1/2 medium onion finely diced – $0.08
  • 2 cloves of garlic minced – $0.08
  • 1/2 tablespoon smoked paprika – $0.18
  • 1 teaspoon cumin – $0.06
  • 1/2 teaspoon dried oregano – $0.02
  • 1 1/2 cups (355 ml) vegetable stock – $0.68
  • 3/4 cup (177 ml) plain tomato sauce – $0.36
  • 1 teaspoon salt or more to taste – $0.03
  • 1 can (15 oz / 425 grams) pinto beans, drained and rinsed (can sub other bean) – $0.50
  • Pepper to taste – $0.03
  • Optional garnish: chopped cilantro tabasco sauce, avocado


  • Place the rice in a bowl and cover with cool water. Swirl your fingers through the rice to release some of the starch. Drain and repeat.
  • Drain the rice in a strainer and set aside to dry off while you chop the onion and garlic.
  • Heat the oil in a large pan or pot over medium heat. Fry the onion until soft then add the garlic and fry for a minute more or until soft.
  • Add the well-drained rice and turn the heat to medium-low. Gently toast, stirring frequently and watching carefully that it doesn’t burn, until the grains begin to take on a golden-brown color.
  • Remove the pan from the heat for a minute and stir in the paprika, cumin and oregano. Allow the spices to release their fragrance. We do this off the heat as paprika can burn easily.
  • Return the pan to the heat and add the stock, tomato sauce and salt. Cover the pan and raise the heat to medium-high to bring to a boil. Once it reaches a boil, lower the heat to low.
  • Allow to gently simmer for 12 – 15 minutes or until the liquid is absorbed and the rice is nearly tender. Try not to lift the lid but you can sneakily grab a spoonful if you want to check how the rice is cooking.
  • After 12 – 15 minutes the rice should be still a bit firm in the middle but not hard. Remove the pan from the heat and allow to steam, without removing the lid, for 5 minutes.
  • Finally, remove the lid and stir in the beans. Check the seasoning if it needs more salt and pepper.
  • Serve immediately.


Find us on Instagram@cilantro_and_citronella
Find us on Facebook@thestingyvegan


Calories: 311kcal | Carbohydrates: 53g | Protein: 7g | Fat: 8g | Saturated Fat: 1g | Sodium: 1351mg | Potassium: 431mg | Fiber: 5g | Sugar: 4g | Vitamin A: 818IU | Vitamin C: 5mg | Calcium: 64mg | Iron: 2mg
Nutritional information is provided as a courtesy and is approximate only. Please refer to our nutrition disclaimer for more information.

Get The Cookbook!

This page contains affiliate links, meaning, at no additional cost to you, I will earn a commission if you click through and make a purchase. See disclosure policy.

Get the 14-day meal plan!


  • Reply
    June 10, 2020 at 5:56 am

    5 stars
    No sure why this recipe doesn’t have any reviews. It was very delicious and very easy! Great recipe for a pantry purge!

  • Reply
    July 27, 2020 at 10:00 pm

    5 stars
    Extremely easy to cook and absolutely yummy. Made it onto my recipe list! Can’t wait to try more of your recipes 🙂

  • Reply
    October 19, 2020 at 12:32 pm

    Sounds yummy but it doesn’t seem that the beans will warm up.

  • Leave a Reply

    Recipe Rating

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