This Mexican-inspired pinto bean soup is creamy, hearty, nourishing, and packed with flavor! Combining pinto beans, fire-roasted tomatoes, veggies, broth, and Mexican seasonings leads to a soup that is ridiculously more-ish. Plus, this recipe can be made in just one pot, is gluten-free, dairy-free, vegetarian (vegan), high-protein, high-fiber, low-fat, and not to mention low-cost!
Simple & Delicious Mexican Bean Soup
When it comes to Mexican cuisine, legumes are everything for the meat-free eaters out there; chickpeas, kidney beans, black beans, and – of course- pinto beans. The humble pinto bean isn’t quite as ‘popular’ globally as the others, yet appears in some of my favorite Mexican food; chili, Mexican spiced beans, burritos, over nachos, and for refried beans (frijoles refritos).
In comparison to kidney/black beans, pinto beans are softer, creamier, with a slightly earthier, nutty flavor. They’re perfect for blending up into a creamy soup or for stews. Even though I always have a whole variety of beans in my house (dried and canned), I don’t find myself reaching for the pinto beans as often as the others. So I thought I’d share this recipe that gives them a chance to shine!
This pinto bean soup blends Mexican-inspired flavors for a creamy, hearty soup option for the Fall/Winter months. Simmered for 20-25 minutes, this soup allows all the flavors to combine and the beans to soften into a deliciously buttery texture, packing tons of flavor with such a little amount of effort (in a way – similar to a meat-free cowboy soup).
This is comfort food at its best – thick, hearty, satisfying, and truly nourishing while somehow remaining healthy too. Serve this Southern pinto beans recipe as an appetizer or main and you’re sure to have lots of satisfied eaters. Plus, most of the recipe is made up of inexpensive pantry staples and veggies – for a low-cost midweek meal.
Healthy Wholesome Pinto Bean Soup
Not only is this vegan soup low-cost to make, but it’s also a healthy option for the entire family.
Beans are packed with wholesome goodness for our bodies, including being one of the richest sources of plant-based protein and fiber on the planet. They have the ability to regulate blood sugar levels, reducing cholesterol, improving heart health, and even reducing the risk of certain cancers.
Pinto beans are not only a great source of protein and fiber, but they also contain antioxidants, vitamins (especially B1 / Thiamine), and minerals like iron, magnesium, phosphorus, and potassium.
Combined with the likes of carrots, onion, tomatoes, and potatoes – this Mexican bean soup really is a healthy, wholesome, and nutrient-packed meal!
The Step-By-Step Instructions
For the full ingredients list, ingredient measurements, and nutritional information, then please read the recipe card below.
Step 1. Heat oil in a large pot over medium-high heat. Once hot, add the onion and sauté for about 4-5 minutes, stirring frequently, until it begins to soften and starts going translucent.
Step 2. Stir in the roasted tomatoes, garlic, carrots, potato, and all the spices. Cook for 1-2 minutes, until fragrant, then pour in the vegetable broth (I also added 2 bay leaves for flavor).
Step 3. Bring the soup to a boil, then reduce the heat and allow it to simmer, with a lid on, for between 10-15 minutes to begin softening the vegetables. Add the pinto beans, then cook for a further 10 minutes, or until the veggies are all tender- stirring occasionally.
Step 4. Once ready, turn off the heat. Now you can decide on the texture you want for the dish. If you want it as more of a pinto bean stew, then you could leave it chunky as-is. Alternatively, you can use an immersion blender to slightly puree some or all of the soup or even move 50% of the soup to a blender/different pot to completely puree before transferring back to the pot and stirring well.
Step 5. Finally, taste the soup and adjust any of the seasonings as required. Add a little extra veggie broth/water if it’s a little too thick, then serve immediately.
How To Serve
I like to serve this pinto bean soup garnished with fresh herbs, such as cilantro or parsley, and lime wedges. You can add the lime juice directly into the large pot, but I’ve found that different people like different levels.
There are several ways to serve and garnish this wholesome soup/stew:
- If you puree a part of the soup, then you can serve it over rice.
- Whether served as a stew or soup, this goes wonderfully with this gluten-free bread, bread rolls, or cornbread.
- For extra spice, you could top this soup with sliced jalapeño or some hot sauce.
- Similarly to my tortilla soup, you could serve it along with homemade tortilla chips (or store-bought options).
- Feel free to sprinkle with some dairy-free crumbled feta or other vegan cheese (like queso fresco).
- You could top it with a dollop of vegan sour cream and salsa
- Top with some fresh veggies like sliced radish, diced tomatoes, or sliced avocado.
How To Store
Any leftovers can be stored in an airtight container in the fridge for 3-4 days. It may thicken slightly while chilled, so feel free to add a little extra water when reheating. It should also be freezer-friendly, though it isn’t something I’ve tried.
Recipe Notes
- I tend to cook the soup on the stove, though it should also work well in a crock-pot/slow cooker. I would still sauté the onion first, then add all the ingredients (including soaked but not cooked beans from dry) and cook for 8 hours on low or 4 hours on high. The exact time depends on your slow cooker. Canned beans can become a bit too soft/mushy otherwise – though this isn’t too important if you’re planning to puree the soup.
- The Fire-Roasted Tomatoes: I use fresh sliced tomatoes roasted with a little olive oil at 450F for 30 minutes. However, you can use 1 (14oz) can of fire-roasted tomatoes instead.
More Tipps
- The Pinto Beans: I typically cook pinto beans from dry. However, for this recipe, I used canned beans. Check out my Instant Pot Refried Beans recipe on how to cook pinto beans from dry as they need to be cooked before adding to this recipe.
- Feel free to adjust the spiciness to your liking. You could add ancho chili powder for sweet and smoky spice or use regular chili powder.
- You can substitute other beans in place of the pinto though they will all affect the flavor and texture in different ways. Black beans, cannellini beans, or navy beans could work well.
- Add a little extra oil (such as avocado oil or olive oil) or plant-based cream to add a little ‘silkiness’ to the texture of the soup.
- If you’re short on time, then you can minimize the cooking time by using the tinned beans alongside microwaving the carrots and potatoes with a spoonful of water for 1-2 minutes, till slightly tender. This will reduce the time needed to cook them till tender. You can then add them and the beans to the soup at the same time and cook for 10-15 minutes maximum.
- For an additional smoky flavor, you could add a little liquid smoke to the soup.
Other Mexican-Inspired Recipes
- Homemade Gluten-Free Tortillas
- Lentil Enchiladas
- Breakfast Burritos
- Taco Cups
- Black Bean Quesadillas
- Loaded Nacho Fries
- Oven Roasted Vegetable Fajitas
Make sure to also check out my Vegan White Bean Soup and this Veggie Stew if you love chunky soups/stews.
If you give this pinto bean soup recipe a try, I’d love a comment and recipe rating below. Also, don’t forget to tag me in re-creations on Instagram or Facebook with @elavegan and #elavegan – I love seeing your recreations.

Pinto Bean Soup
Ingredients
- 1 tbsp olive oil
- 1 medium onion diced
- 1 (14 oz) can fire-roasted tomatoes (see notes)
- 3 garlic cloves minced
- 2 small (150 g) carrots peeled and diced
- 1 medium (135 g) potato peeled and diced
- 1 tsp oregano dried
- 1 tsp ground cumin
- 1 tsp smoked paprika
- Red pepper flakes to taste
- 2 bay leaves (optional)
- 2 cups vegetable broth
- 2 (14 oz) cans pinto beans drained and rinsed (see notes)
- Salt and pepper to taste
Instructions
- You can watch the video in the post for visual instructions.Heat oil in a large pot over medium/high heat. Add onion and sauté for about 4-5 minutes, stirring frequently.
- Stir in the roasted tomatoes, garlic, carrots, potato, and all spices. Cook for 1-2 minutes, until fragrant, then pour in the vegetable broth (I also added 2 bay leaves for flavor).
- Bring the soup to a boil and let it simmer with a lid for about 10-15 minutes. Add in the pinto beans and cook for a further 10 minutes or until the veggies are softened, stirring from time to time. Then turn off the heat.
- You can add more veggie broth or water if you notice that too much liquid evaporated.
- I poured about 50% of the soup into a different pot and used an immersion blender to blend it. You can also fill about half of the soup into a blender and blend it to the desired consistency.
- Then pour the blended soup back into the large pot and stir to combine. Taste it and add more salt/pepper/spices if needed. You can also add a little lime juice.
- Serve in bowls and garnish with fresh herbs. Enjoy!
Notes
- Fire-roasted tomatoes: I used fresh tomatoes (sliced) and roasted them (drizzled with olive oil) in the oven at 450 degrees Fahrenheit for 30 minutes. However, you can use 1 (14 oz) can of fire-roasted tomatoes instead, as mentioned in the recipe.
- Pinto beans: The weight of the drained beans is about 250 g per 14 oz can. I typically cook pinto beans from dry, however, for this recipe I used canned beans. Check out this recipe for Instant Pot Refried Beans to find out how to cook pinto beans from dry.
- Texture: You can blend just a part of the soup, half of it, or all of it.
- Read the blog post for serving suggestions, step-by-step photos, and helpful tips.
Nutrition information is an estimate and has been calculated automatically
OMG, thanks!!! The is recipe was a hit with my family!
You are very welcome, Vatreacle. 🙂
This soup is incredibly tasty and so easy to make!!
Wonderful! I am glad you like it, Dena. Thanks for your feedback. 🙂
Just a thought for those who think to freeze this soup: potatoes do NOT fare well in the freezer; they will come out mealy and watery. Maybe not so much a concern if you’ll be pureeing all of the soup, but if leaving some potato chunks, be prepared for a less-than-ideal texture. I love me some pinto beans, and can’t wait to try this recipe soon. Thanks for sharing!
I made this soup today, and it absolutely is delicious! I bought a can of fire-roasted tomatoes, then went and put regular ones in it by mistake! No worries, still yummy, with some cilantro and lime juice to garnish and blue corn chips for scooping it up. .
By the way, I actually did some googling about freezing potatoes. The consensus is that “potatoes tend to get grainy and mushy if there is no fat to coat the molecules,” says Palak Patel, a chef at the Institute of Culinary Education in New York. “The addition of liquid will also form crystals when the potatoes are frozen. Adding any type of fat, butter and/or cream will help protect the consistency of the potatoes — think of the fat as a protective layer.” So there we have it, and I learned something new, too!
Awesome, thanks for sharing. I am so glad you liked the soup, Naomi. 🙂
I made this soup yesterday it was great . I used chicken broth instead of veg. broth very quick and easy.
This Mexican Hombre approves!
Thank you for the recipe!
Fantastic! Thanks for your feedback, Joe! 🙂
This is good. No need to muddy up the reply.
Its good.
I am dying to make this soup just the way you made it. I want to roast the tomatoes myself. How many tomatoes or pounds of romas did you use? Thanks for such an easy economical soup!!! 😍
Hi Janie, if I remember well, I used 6 medium-sized Roma tomatoes. I hope this helps. 🙂
Made this tonight. It’s really really good! It’s going in my rotation. Thanks!
You are so welcome, Jeanie! 🙂
Please don’t call whatever that is that you posted, Mexican bean soup.
There is no such thing as Mexican Bean Soup. We don’t add potatoes to our frijoles de la olla. If you were so inspired by frijoles de la olla as you say that’s ok, but don’t call it what’s it not and or even exists.
Veronica, I never claimed that this soup is traditional or authentic in any way. It’s my own twist, and thousands of people tried it and love it!
Veronica, the first line of the description section says it all: “This Mexican-inspired pinto bean soup.” Ela, this soup is delicious, quick, and easy!
I am so glad you like it! 🙂
Oh Veronica do shut up.
This is amazing!!! Thank you for sharing this wonderful recipe!
You are so welcome, Sari! 🙂
I added more salt + a generous amount of Cholula Chipotle Hot Sauce and it was *chefs kiss* Thanks for the recipe!!!
You are very welcome, Joanna! 🙂
Oh! And 1.5 cup of cooked white rice!
How much cups of beans would you recommend to cook from dry to equal the amount of canned beans?
Probably just 1/2-3/4 cup, but I always soak and cook at least 2 cups and store leftovers in the fridge.
I used a cup and a half of dried beans. (I usually figure 3/4 cup per can.) Instead of veggie broth I used the liquid that I cooked the beans in. Other than that I followed the recipe exactly—including roasting the tomatoes. Delicious!
Sounds great! Happy, it turned out delicious. 🙂
Question, May I just use water instead of vegetable broth. I don’t use store bought broth & I am oot of chicken stock right now.
Yes, but it will be less flavorful. 🙂
That’s not true, that it will be less flavorful. Pinto beans have a natural flavor on their own that comes through as they cook with out all that other stuff. So what you are saying is that the flavor is all in the stock.
That too is intrue
Veronica please get a life! Walk away from this recipe if it’s not to your liking.
Veronica, please start your own blog if you are such an expert, and stop being so critical of others. There is already too much negativity in the world.
This was amazing soup! Used a potato masher at the end to adjust the texture. And added a 1tsp of chili powder. ???? Served it with warm tortillas, sour cream and avocados.
Side Note: Dad is a carnivore and thinks vegan food is for the Devil. I made a small batch for him with hamburger added. He said my vegan soup was BETTER! I may convert him yet!!!
Wow, love this feedback, Heather! So happy to hear you BOTH enjoyed the soup. 🙂
Great recipe! Very filling and great flavor! I used dried beans, following the instant pot recipe noted, but ended up with way too many cooked beans (no worries…will use the excess for Taco Tuesday!). Will definitely add this to my meal-prep rotation for weekday lunches. Thanks!
Happy to hear you liked the flavor, Becca! Thanks for your feedback. 🙂
Really enjoyed this recipe. I had just roasted some grape tomatoes I needed to use so this was perfect. I made a pound of pintos in my Instant Pot and then added to the other ingredients. I used baby Dutch potatoes and did not peel them. Next time, and there will be a next time, I think I will use my immersion blender to puree the veggies and part of the pintos and then add the remaining pintos. We served with corn bread. My husband loved the flavor. Said it was like a meatless beef stew!! I plan to serve the leftovers on polenta!!
Thanks!!
That’s so good to hear! Thanks for your feedback. 🙂
I have a number of plant based soup recipes that we already love and have in heavy rotation. In order for a new recipe to make the cut, it has to be REALLY good. This is REALLY good.
Yay, that’s awesome, Brenda. Thanks for your sweet feedback. 🙂
I am not a great cook and always look for delicious, frugal and easy recipes. This is wonderful and so easy! Thank you..
You are very welcome, Robyn! Happy you like it. 🙂
This is delicious! I’ve made it twice. The first time I puréed it pretty hard. The second we had it chunkier and preferred that. I’m cooking pretty vegetarian these days due to health concerns and personal preference. I’m raising a kid who loves meat, but even she liked this one.
That’s awesome, Janine! So glad you liked it. 🙂
Made this last night and it was sooooo delicious! One change I made was I used sweet potato in place of regular potato because I didn’t have any. It was so good!
That is awesome, Angelina. Thank you for your great feedback. 🙂