Ribollita (Zuppa Toscana) is a Tuscan soup that is hearty and delicious. The soup consists of a sofrito that’s cooked with olive oil, tomatoes, cannellini beans and chunks of bread. It’s the perfect vegetarian weeknight meal that’s cozy and tasty.

What is Ribollita Soup?
Ribollitta (Zuppa Toscana) is a Tuscan soup that has origins in the Middle Ages. She’s an old soup! But in all seriousness, the history is very interesting. During the Middle Ages, Italy was very Catholic (as it still is today), and on Fridays (think: Good Friday) people needed a food option that had zero meat; the dish needed to be light yet hearty.

The word ribollita means boiled twice. This is a soup that can be heated the first time to cook, a second time to reheat and a third time. Basically it’s a leftovers dream, as it only gets more delicious.
And while a lot of families cook in their own unique way, there are a few things that you’ll see in every recipe: kale (curly black kale seems to be most traditional), a sofrito (the Italian word for mire poix), beans and bread. And of course, olive oil.

Can I Add Meat
Sure absolutely. Some people do add bacon, pancetta or crumbled sausage. I personally prefer a vegetarian version, by all means do it! If you are to add it, I would probably add it before the sofrito step, cook it and then remove it and then continue with the recipe and add it back when it’s mostly cooked.

How to Make Ribollita:
- Cook the veggies. Heat up the olive oil and sauté the shallot, celery, and carrots. When they’ve softened, add the garlic.
- Add the aromatics. Once the vegetables have cooked slightly, add the red pepper, rosemary, salt, and thyme.
- Add the rest of the soup ingredients. Add the kale, beans, tomatoes, and stock. Cook to marry all the flavors.
- Toast the bread. Add cheese to a sliced baguette and broil until the cheese is melted and crispy.
- Add acidity! This is important for any soup, really. I use lemon juice here, however you could use a splash of red wine vinegar.
- Serve! Place a big slice of bread in each bowl and top with the soup, followed with a tiny mountain of parmesan cheese.

Tips and Tricks:
- Feel free to use any sort of rustic bread here, I used a baguette but you could use a nice sourdough loaf or ciabatta.
- This works well with day old bread that’s not super fresh. It’s going to end up soaking up all the soup broth so something that’s a little dried out is okay.
If you make this recipe for Ribollita, let me know on Instagram!

Looking for more recipes? Here are some of my favorites:
- Acorn Squash Soup
- Caesar Salad
- Creamy Mushroom Pasta
- Lamb Kofta
- Ginger Shrimp Bok Choy Stir-Fry
- Arroz con Pollo

Ribollita
Ingredients
- 2 (15-ounce) cans of cannellini beans or great white northern bean drained, washed and divided
- 1/4 cup olive oil (plus more for topping)
- 1/2 yellow onion (peeled and minced)
- 2 ribs of celery (finely diced)
- 3 small carrots (peeled, ends trimmed and diced)
- 3 garlic cloves (minced)
- 1/2 teaspoon kosher salt plus more to taste
- Freshly black pepper
- 1 teaspoon crushed red pepper (if you don’t like heat, decrease to 1/2 teaspoon)
- 3 tablespoons tomato paste
- 2 sprigs fresh thyme
- 3 1/2 cups low-sodium chicken stock or vegetable stock
- 1 bunch of lucinato kale (removed from the rib and roughly chopped)
- 1 baguette, cut into slices
- 3 ounces finely grated Parmesan-Reggiano
Instructions
- Add half of the beans to the food processor and pulse until smooth. If you need to, you can use some of the broth from the recipe to make it a smoother texture. Set aside.
- In a medium pot, set over medium heat, add the olive oil. When the oil is warm, add the onion, celery and carrots. Cook for 5 to 7 minutes, until very softened softened. Mix in the garlic, along with the crushed salt, a few rounds of black pepper, red pepper, salt and thyme; cook until fragrant, about 1 to 2 minutes.
- Add in the tomato paste and mix until the paste turns a deep brick red color, about 2 minutes. Mix in the reserved Parmesan-Reggiano rind, bean puree, beans, stock and kale. Reduce the heat to low, cover the pot and cook for 15 to 20 minutes, until the soup’s flavors merry.
- Meanwhile, tear up half of the baguette and place on top of the soup in the pot. Top with a grating of parmesan and divide the soup amongst bowls. Garnish with a drizzle of olive oil and more parmesan, if you like.
- This soup is great heating up. Store in an airtight container and will last up to 3 to 4 days in the fridge.
Notes
- Feel free to use any sort of rustic bread here, I used a baguette but you could use a nice sourdough loaf or ciabatta.
- This works well with day old bread that’s not super fresh. It’s going to end up soaking up all the soup broth so something that’s a little dried out is okay.
This is a wonderful recipe, made it last night and will definitely make it again!
Thank you!
There are a couple of mistakes in the written instructions which make it slightly confusing, but if you contact me I can share and help make the recipe perfect!
This is so comforting and delicious! Made it and I enjoy that it’s nutritious yet feels a bit indulgent even without the meat. Just wondering-are we supposed to drain and rinse the beans? That’s what I did but wasn’t sure if I’m missing out on liquid/flavor? Also wondering if we leave the herbs whole and fish them out or strip…and maybe chop? This soup was fantastic so the recipe was forgiving. Thanks!
I recently took a cooking class at Sur la Table and we made a Ribollita! But thanks for posting this veggie version, perfect for meatless Mondays and when my vegetarian bestie comes to town!
The meat-y version looks SO good but right now I’m trying to kinda chill on heavy meat. My boyfriend thinks it’s a travesty that I made it veggie haha.
This stew looks incredible. Adding to my lists!
Made this last night – super easy and very flavorful!! Also, very healthy if you leave out the cheesy bread – new years resolutions and all. Assuming this will get added back in by me come March 🙂 Thanks for another great recipe!
This looks like the ultimate in comfort food, especially on a cold, rainy day.
I love this kind of stuff. I have a weird affinity for soggy bread so this looks absolutely delish! Happy New Year!
Yummy!! 🙂 Made this soup the day you uploaded it to the blog, I was looking for dinner ideas and you made it so easy! This is so good! I love, love, love the bread in the bottom of the bowl with lots of cheese! 🙂 I might be adding the cheesy bread to more soups from now on! 🙂 Thank you again for saving the day!! 🙂
YAYYY! That’s awesome to hear. xo
I just made this! It was perfect for this cold, blustery day. I only had butter beans on hand but they worked beautifully. The fresh herbs really taste amazing and the shallots lend a wonderful flavor. I am excited to have such a wonderful meal to enjoy during my next 3 12 hours shift! Thank you, Adrianna!
YAY! This makes me so happy. I bet butter beans would be fantastic. Good luck with all those shifts–ooof! xo
This soup looks amazing! Good luck on the cleanse. I have never done one before, but they have always intrigued me.
I’ve done one a long time ago and it’s definitely not fun but I felt SO much better after.