Ribollita, which literally translates to ‘re-boiled,’ was born from the Florentine tradition of stretching yesterday’s minestrone with stale bread until it became something entirely new: a porridge-thick, deeply savory stew that could sustain a farmhand through a January morning. Our version respects that frugal genius while amplifying every dimension of flavor and nutrition. Spicy Italian pork sausage threads its rendered fat through a base of soffritto, toasted tomato paste, and woody rosemary, while two full bunches of lacinato kale collapse into silky, iron-rich ribbons over long, slow heat.
What sets this recipe apart on a site dedicated to precision nutrition is the deliberate pairing of heme iron from sausage with non-heme iron from both kale and cannellini beans, all in the presence of significant vitamin C from crushed tomatoes and kale itself. That vitamin C co-factor is not an accident: it can increase non-heme iron absorption by as much as three to six times, turning this bowl into a genuine therapeutic food for anyone managing iron-deficiency concerns. The torn sourdough bread, added in the final stage of cooking, thickens the broth into something approaching a savory bread pudding, adding a low-glycemic backbone and a satisfying chew that no crouton can replicate.
Across all three cooking methods offered here, the dish transforms subtly but meaningfully. The stovetop version rewards you with a caramelized, direct-heat sear on the sausage and precise control over the bread’s final texture. The slow cooker draws out a deeper, more melded flavor as the collagen from the sausage casings slowly enriches the broth over six to eight hours. The pressure cooker delivers an almost impossibly fast result without sacrificing the unctuous mouthfeel that makes ribollita so compelling. And the oven method, which finishes the assembled stew under a broiler after a low, covered braise, produces a gratineed bread crust on top that is frankly show-stopping. Choose your method based on your schedule, not your ambition.
4
servings
Ingredients
- 340 gspicy Italian pork sausage, casings removed
- 2 tbspextra-virgin olive oil
- 1 largeyellow onion, finely diced
- 3 mediumcarrots, peeled and cut into 1cm dice
- 3 stalkscelery, cut into 1cm dice
- 6 clovesgarlic, thinly sliced
- 1 tspcrushed red pepper flakes
- 2 tbsptomato paste
- 400 gcanned whole peeled San Marzano tomatoes, crushed by hand
- 2 canscannellini beans (400g each), drained and rinsed
- 280 glacinato (Tuscan) kale, stems removed, leaves torn into 5cm pieces
- 1.2 Llow-sodium chicken stock
- 2 sprigsfresh rosemary
- 1 sprigfresh thyme
- 200 gday-old sourdough bread, crusts on, torn into rough 3cm chunks
- 30 gParmigiano-Reggiano rind (optional, adds umami depth to broth)
- 1 tspfine sea salt, plus more to taste
- 2 tbspextra-virgin olive oil, for finishing
- —Freshly cracked black pepper to taste
- —Parmigiano-Reggiano, freshly grated, for serving
Instructions
🔧 Equipment
- Set a large Dutch oven or heavy-bottomed pot over medium-high heat. Add the olive oil and heat until shimmering. Add the sausage and break it into irregular crumbles using a wooden spoon. Cook undisturbed for 2 minutes to develop a fond on the pot bottom, then stir and continue cooking until the sausage is deeply browned in spots and cooked through, about 6 to 8 minutes total. Using a slotted spoon, transfer the sausage to a plate, leaving the rendered fat in the pot.
- Reduce heat to medium. Add the diced onion, carrots, and celery to the fat in the pot. Season with a generous pinch of salt and cook, stirring occasionally, until the vegetables are softened and the onion is translucent, about 8 to 10 minutes. Add the sliced garlic and red pepper flakes and cook for a further 2 minutes until the garlic is fragrant but not browned.
- Push the vegetables to the sides of the pot and add the tomato paste to the cleared center. Cook the paste directly on the pot bottom, stirring it constantly, for 2 to 3 minutes until it turns a deep brick-red and smells slightly caramelized. Stir the paste through the vegetables to coat everything evenly.
- Add the crushed San Marzano tomatoes with their juices, the chicken stock, rosemary sprigs, thyme sprig, and Parmigiano rind if using. Stir in half the cannellini beans. Using a fork, roughly mash the remaining cannellini beans in a small bowl until they form a coarse paste, then stir the mash into the pot to thicken the broth naturally. Return the browned sausage to the pot.
- Bring the soup to a brisk simmer, then reduce heat to maintain a gentle simmer. Cook uncovered for 20 minutes, allowing the broth to concentrate and the flavors to meld. Add the torn kale in two batches, stirring each batch down as it wilts before adding the next. Simmer for a further 15 minutes until the kale is completely tender and the broth has deepened in color.
- Fish out and discard the rosemary sprigs, thyme sprig, and Parmigiano rind. Add the torn sourdough bread pieces, pressing them gently below the surface of the broth. Stir once, then allow the bread to absorb the liquid and begin to dissolve, about 5 minutes, stirring occasionally to break up larger pieces to your preferred consistency. Taste and adjust salt and pepper.
- Ladle into wide, deep bowls. Finish each bowl with a generous drizzle of finishing olive oil and a shower of freshly grated Parmigiano-Reggiano. The ribollita will thicken considerably as it sits, and any leftovers re-boiled (as the name demands) the next day will be even better.
- In a large skillet over medium-high heat, warm the olive oil until shimmering. Add the sausage, breaking it into crumbles, and cook until deeply browned and cooked through, about 7 to 8 minutes. Transfer to the slow cooker insert with a slotted spoon, leaving fat behind in the skillet.
- In the same skillet over medium heat, add the onion, carrots, and celery with a pinch of salt. Cook, stirring, until softened, about 7 minutes. Add the garlic and red pepper flakes and cook 2 minutes more. Add the tomato paste and cook, stirring it into the vegetables, for 2 minutes until it darkens slightly. Scrape the entire soffritto into the slow cooker insert.
- Add to the slow cooker insert the crushed San Marzano tomatoes, chicken stock, rosemary sprigs, thyme sprig, Parmigiano rind if using, and the whole cannellini beans. In a small bowl, mash a third of the beans roughly with a fork and stir the mash in as well to give the broth body from the start. Stir everything together. Place the lid on and cook on Low for 6 to 7 hours or High for 3.5 to 4 hours.
- About 45 minutes before the end of cooking, lift the lid and add all the torn kale, pressing it down into the hot liquid. It will look like too much kale, but it will wilt and submerge completely within 10 minutes. Replace the lid and continue cooking for the remaining 45 minutes until the kale is completely tender and silky.
- Remove and discard the rosemary sprigs, thyme sprig, and Parmigiano rind. Add the torn sourdough bread to the slow cooker, pressing the pieces down into the broth. Replace the lid and cook on High for a further 20 to 25 minutes. The bread will absorb the liquid and partially dissolve, thickening the stew considerably. Stir once with a sturdy spoon to break up the bread to your desired consistency.
- Taste and adjust salt and pepper generously. The slow cooker will have mellowed the spice somewhat, so add extra red pepper flakes at this stage if needed. Serve in wide bowls with a drizzle of finishing olive oil and fresh Parmigiano.
- Set the Instant Pot or electric pressure cooker to Saute on High. Add the olive oil, then add the sausage and cook, breaking it into crumbles, until browned and cooked through, about 7 minutes. Transfer to a bowl with a slotted spoon.
- Add the onion, carrots, and celery to the pot in the residual fat. Saute, stirring frequently, until the onion is softened and just translucent, about 5 minutes. Add the garlic and red pepper flakes and cook 1 minute more. Add the tomato paste and stir vigorously into the vegetables, cooking for 90 seconds until the paste coats everything and smells slightly toasty.
- Pour in a splash (about 100ml) of the chicken stock and scrape the pot bottom thoroughly with a wooden spoon or silicone spatula to deglaze any browned bits. This step is critical to prevent a burn warning. Add the remaining stock, the crushed tomatoes, rosemary sprigs, thyme sprig, Parmigiano rind if using, and the whole cannellini beans. Mash about a quarter of the beans with a fork before adding them to help thicken the broth. Return the browned sausage to the pot. Do not add the kale or bread at this stage.
- Cancel the Saute function. Secure the lid, ensure the steam valve is set to Sealing, and cook on Manual High Pressure for 15 minutes. Allow Natural Pressure Release for 10 minutes, then carefully quick-release any remaining pressure. Remove the lid away from you to avoid the steam.
- Discard the rosemary sprigs, thyme sprig, and Parmigiano rind. Set the pot back to Saute on Normal. Add the torn kale in one large batch and stir it into the hot broth. It will wilt rapidly in the residual heat. Simmer on Saute for 5 to 7 minutes, stirring, until the kale is fully tender.
- Add the torn sourdough bread and press the pieces below the surface. Stir and cook on Saute for a further 4 to 5 minutes, until the bread has absorbed the broth and the stew has thickened to a spoonable consistency. Cancel Saute, taste for salt and pepper, and finish with a drizzle of olive oil and freshly grated Parmigiano.
- Preheat the oven to 160 degrees C (325 degrees F). In a large oven-safe Dutch oven over medium-high heat on the stovetop, warm the olive oil and brown the sausage, breaking it into crumbles, until deep golden, about 7 to 8 minutes. Transfer to a plate with a slotted spoon.
- Reduce heat to medium. In the same pot, cook the onion, carrots, and celery in the sausage fat until softened, about 8 minutes. Add the garlic and red pepper flakes and cook 2 minutes more. Add the tomato paste and cook, stirring, for 2 to 3 minutes until deeply colored. Pour in the crushed tomatoes and deglaze any fond from the pot bottom.
- Add the chicken stock, rosemary sprigs, thyme sprig, Parmigiano rind if using, and the cannellini beans (mashing roughly a quarter of them first for body). Return the sausage to the pot. Bring the mixture to a gentle simmer on the stovetop, then add the torn kale and stir to submerge it as much as possible.
- Cover the Dutch oven with its lid and transfer to the preheated oven. Braise for 1 hour, undisturbed, until the kale is completely tender, the beans are creamy, and the broth has reduced and concentrated into a rich, mahogany-colored stew. Remove from the oven and discard the herb sprigs and Parmigiano rind.
- Switch the oven to the Broil setting on High. Taste the stew and adjust salt and pepper. Arrange the torn sourdough bread pieces in a single overlapping layer across the entire surface of the stew, pressing each piece down slightly so the underside soaks up broth while the top remains exposed. Drizzle the finishing olive oil generously over the bread layer.
- Return the uncovered Dutch oven to the oven and broil on the highest rack position for 6 to 8 minutes, watching closely, until the bread is golden brown and crisp on top with a deeply soaked, pudding-like interior underneath. Serve directly at the table from the Dutch oven, breaking through the crust at the table for dramatic effect. Finish each bowl with fresh Parmigiano.
Nutrition Breakdown
Per 1 serving (makes 4)
Vitamins & Minerals
% Daily Value based on a 2,000 calorie diet (FDA reference)
🧬 Essential Amino Acids
% of recommended daily intake (RDA) per serving
🛡 Antioxidant Profile
The Nutrition Science
The iron story in this bowl is one of elegant nutritional synergy. Kale and cannellini beans both contribute substantial non-heme iron (the form found in plants), which in isolation is absorbed at a rate of only 2 to 10 percent. However, the presence of heme iron from pork sausage activates what researchers call the ‘meat factor,’ a still-partially-understood mechanism by which the products of heme digestion in the small intestine enhance the absorption pathway for co-consumed non-heme iron. Layer on top of this the 74mg of vitamin C per serving from kale and crushed tomatoes, and you have a physiological environment where non-heme iron absorption can approach 15 to 20 percent, a meaningful clinical difference for anyone whose ferritin levels are marginal.
The vitamin K1 figures in this recipe deserve particular attention. A single serving delivers 816 micrograms against a Daily Value of 120 micrograms, making this one of the most K1-dense main courses achievable without resorting to pure greens. Vitamin K1 (phylloquinone) is the cofactor required for the carboxylation of several coagulation proteins and, increasingly importantly, for the activation of osteocalcin, the bone matrix protein that pulls circulating calcium into bone tissue. Importantly, the fat in this dish, from olive oil and sausage, is not incidental: vitamin K1 is a fat-soluble vitamin, and its absorption in the gut requires dietary fat as a co-transporter. The olive oil finish added at serving is therefore both a flavor decision and a nutritional one.
Lacinato kale’s extraordinary nutritional density stems from its concentration of glucosinolates, the sulfur-containing compounds that give brassicas their characteristic slight bitterness. During cooking, myrosinase enzymes convert these precursors to isothiocyanates, including sulforaphane, which has been studied extensively for its induction of Phase II detoxification enzymes in the liver. Long-simmered ribollita does reduce raw glucosinolate content compared to lightly blanched kale, but the net delivery of bioavailable iron, K1, folate, and carotenoids from a fully cooked, large-portion kale component arguably represents a better real-world nutritional trade-off than the smaller portion of raw kale most people would consume.
Pro Tips
- Use lacinato (Tuscan or dinosaur) kale rather than curly kale if at all possible. Its flatter, darker leaves have a higher chlorophyll density and a less fibrous texture after extended cooking, and they contribute a slightly higher concentration of K1 per gram of leaf.
- The Parmigiano-Reggiano rind is optional but worth seeking out. As it simmers it releases glutamates and a gentle dairy richness that enriches the broth without fully dissolving, and you can fish it out before serving. Save rinds in a zip-lock bag in the freezer whenever you finish a wedge of Parmigiano.
- Ribollita is definitively better the next day. The starches in the bread continue to swell overnight in the refrigerator, and the flavors meld into something richer and more unified. To reheat, add a splash of stock or water to loosen it, bring to a simmer, and stir vigorously. The re-boiling is the whole point.







Love this question, Sam! So the good news is yes, that sausage fat absolutely helps with iron absorption from the kale, but here’s the nuance: the heme iron from the meat is already highly absorbable on its own (around 15-35%), while the non-heme iron from the kale needs those co-factors like vitamin C and fat to boost its uptake. The acidity you’re getting from tomatoes (if there are any in the recipe) or even just the fermentation from day-old bread is actually one of the best absorption helpers for plant iron, so this dish is basically engineered perfectly for iron bioavailability. I recommend this combo to clients all the time
Log in or register to replyomg this is exactly what ive been looking for – the combo of heme iron from the sausage plus the kale (which has decent non-heme iron even tho its not as absorbable) is smart, but im wondering if you tested this with vitamin C content? like does the tomato base give enough acidity to really maximize that non-heme iron uptake, or would you recommend squeezing lemon over it before eating? my ferritin has been creeping back up and im always hunting for meals that actually move the needle without me having to do supplements 24/7
Log in or register to replyok so im definitely making this tonight but real talk – im more interested in whether the sausage fat + kale combo helps with the iron absorption since fat soluble stuff and all that, plus does the acidity from the tomatoes (assuming theres tomato?) boost the non-heme iron uptake? also kale has decent amounts of tryptophan and the beans too, so im low-key wondering if this becomes a sleep meal if you eat it for dinner a few hours before bed. gonna track my sleep data if i experiment with this one lol
Log in or register to reply