Ribollita means re-boiled, which is a fairly humble name for a soup that I think deserves better marketing, because what it actually is is one of the smartest ways I know to turn stale bread and end-of-week vegetables into something that tastes like it took all day, mostly because it kind of does.
This is Tuscan peasant cooking at its most practical: nothing goes to waste, the bread thickens the soup instead of sitting on the side of the bowl, and it genuinely tastes better as leftovers the second or even third day, which is exactly the point of the name.
I started making this the winter after we visited Florence, when I came home determined to recreate the bowl I had at a tiny trattoria near the Oltrarno, and it has become one of my go-to answers for ‘what do I do with this half loaf of bread that is going stale.’
It leans on cavolo nero, also called lacinato or dinosaur kale, along with cannellini beans and whatever hearty vegetables are around, all simmered low and slow, then layered with torn bread and re-heated until it thickens into something closer to a stew than a soup.
It is not a Portuguese dish, obviously, but it shares the same soul as a lot of what I cook here: good olive oil, humble ingredients, and a recipe built by people who did not waste food because they could not afford to. My kids eat it happily, which after some of my more adventurous cooking experiments, I do not take for granted.
Ribollita Recipe
Prep time: 20 minutes · Cook time: 1 hour 15 minutes · Total: 1 hour 35 minutes · Servings: 6 · Calories: ~310 per serving
Ingredients
- 1/3 cup extra-virgin olive oil, plus more for serving
- 1 large yellow onion, chopped
- 2 carrots, chopped
- 2 celery stalks, chopped
- 3 cloves garlic, minced
- 1 can (28 oz) whole peeled tomatoes, crushed by hand
- 2 cans (15 oz each) cannellini beans, drained and rinsed, divided
- 6 cups vegetable or chicken stock
- 1 bunch cavolo nero (lacinato/dinosaur kale), stems removed, leaves torn
- 1/2 small head savoy cabbage, thinly sliced
- 1 Parmesan rind (optional, but recommended)
- 4 to 6 cups torn day-old crusty bread, crusts on
- Salt and black pepper, to taste
- Red pepper flakes, for serving (optional)
Instructions
- Heat the olive oil in a large Dutch oven over medium heat. Add the onion, carrots, and celery, and cook for 8 to 10 minutes, until softened.
- Add the garlic and cook for 1 minute, until fragrant.
- Stir in the crushed tomatoes and cook for 5 minutes, letting them break down slightly.
- Puree about half of one can of the cannellini beans with a little stock or water until smooth, and stir this into the pot; it will help thicken the soup. Add the remaining whole beans.
- Pour in the stock and add the Parmesan rind if using. Bring to a simmer, then reduce heat to low and cook for 20 minutes.
- Add the cavolo nero and cabbage, and simmer for another 20 to 25 minutes, until the greens are very tender.
- Remove the Parmesan rind. Season generously with salt and pepper.
- Stir in the torn bread and let it sit off heat for 15 minutes, stirring occasionally, until it softens and thickens the soup.
- Return briefly to low heat to warm through if needed. The soup should be thick enough that a spoon nearly stands up in it.
- Ladle into bowls and finish with a generous drizzle of good olive oil and red pepper flakes if desired.
Recipe Notes
- This soup is genuinely better the next day, or even the day after that, once it has had time to sit and the flavors to meld. Traditionally it was reheated and reboiled (hence the name) over several days.
- Cavolo nero is widely sold in US grocery stores as lacinato kale or dinosaur kale; regular curly kale works in a pinch but has a slightly different texture.
- A sturdy, rustic sourdough or country loaf works best for soaking up the broth without turning to mush. Soft sandwich bread will disintegrate too quickly.
- If you have a Parmesan rind in the freezer (a good habit to start), this is exactly the kind of dish it was made for; it adds deep savory flavor while it simmers.
Enjoy our recipes? Add Maria’s Cookbook as a preferred source on Google to see more of our content in your search results.

