Skip to content
KETOFOCUS.

Sweater weather calls for keto comfort food. Get Cozy →

Minestrone Soup

Pure comfort on a chilly day, this low carb minestrone soup gets deep, savory flavor from a parmesan cheese rind simmered in the broth, and it comes in at 8.1g net carbs. Lupini beans stand in for the kidney beans.
  • 8.1gnet carbs
  • 8.6gprotein
  • 45minutes
  • 8servings

This post may contain affiliate links. See my disclosure policy.

I started making this keto minestrone because I missed the big, brothy Italian soups I grew up eating. Regular minestrone is loaded with pasta and kidney beans, so I had to rethink the whole thing. The parmesan cheese rind is what makes this version work. It melts slowly into the broth over 20-plus minutes and gives the soup a savory depth that you’d swear came from simmering all day. I keep a bag of rinds in my freezer specifically for soups like this and my keto beef tomato soup.

The other piece that makes this different from most low carb vegetable soups is the lupini beans. I’ve gotten more questions about these beans than almost any other ingredient on the site. They’re naturally firmer than cannellini or great northern beans, and that’s intentional. They hold their shape through simmering, through reheating, through everything. Cannellini fall apart after a day in the fridge. Lupini don’t. One reader (Rita) told me she’d been making traditional minestrone with cannellini for years and actually prefers this version now. That was a big compliment.

I use cauliflower rice instead of pasta or regular rice, which keeps the carb count down without leaving the soup thin. You barely notice the swap once everything has simmered together. The bacon adds smokiness, but if you want a vegetarian version, swap it for 2 tablespoons of olive oil and use vegetable broth. I’ve done it both ways and the parmesan rind carries enough flavor on its own. One more note for strict vegetarians: parmesan is made with animal rennet, so use a rind from a vegetarian hard cheese if that matters to you.

One thing I’ve learned from making this dozens of times: don’t add the spinach until the very end. It wilts in about 30 seconds and overcooking it turns the whole pot a muddy green. Same goes for freezing. If you’re meal prepping, leave the spinach out of the batch you’re freezing and stir in fresh leaves when you reheat. The soup itself freezes well for up to 3 months.

If you’re into keto soups, this pairs well with a rotation. I cycle through this, my keto chicken and rice soup, keto turkey soup, and keto cheeseburger soup depending on the week. This one is my go-to when I want something lighter but still filling.

Discover more keto recipes on our channel Hundreds of keto recipe videos, with step by step instructions and the tips that make keto easy.
KetoFocus
The recipe

Minestrone Soup

Print Pin
Prep 10 min Cook 35 min Total 45 min Serves 8

Ingredients

Servings 8

Vegetable Minestrone Soup Ingredients

Step by Step Instructions

  1. Cook bacon

    Add bacon to a large stock pot or Dutch oven. Cook over medium-high heat until cooked but not crispy.

    diced bacon cooking in a stock pot
  2. Add some vegetables

    Add diced onions, carrots and celery to the pot and continue cooking until almost tender.

    sautéing vegetables in a pot
  3. Simmer with cheese rind

    Add chicken broth or vegetable broth, 1 teaspoon salt, zucchini, tomatoes and parmesan rind. Bring to boil, then reduce heat to a simmer. Let cook uncovered until vegetables are tender (at least 20 minutes).

    holding a rind of parmesan cheese over a pot with peeled tomatoes
  4. Add rice and beans

    Add cauliflower rice, lupini beans and cook for 5 minutes.

    stirring a pot of minestrone soup filled with vegetables
  5. Add spinach

    Stir in spinach leaves and add salt & pepper for taste. Stir until spinach has wilted into the soup. Remove rind and serve.

    a pot of vegetable soup

Nutrition

Per serving: 1 bowl

Calories
112
Fat
2.2g
Protein
8.6g
Total carbs
10.7g
Net carbs
8.1g

Nutrition is an estimate calculated from the ingredients listed. Brands vary, so check labels if you track closely.

Frequently Asked Questions

Do lupini beans need to be peeled before adding to the soup?

I don't peel mine. The ones I buy (jarred) come ready to use. Some brands sell them with the outer casing still on, so if yours look like they have a thick skin, just pinch it off. But in this recipe, I toss them in straight from the jar.

Where do I get a parmesan rind, and can I use a chunk of parmesan instead?

Most grocery stores sell parmesan rinds separately at the cheese counter, usually for very little. I also save the rind every time I finish a wedge and keep a bag of them in the freezer. A chunk of actual parmesan does not work the same way. It melts into the broth and you lose the depth the rind gives. If you cannot find one, the soup is still good, it just tastes more like a basic vegetable soup.

How do I store, freeze, and reheat leftover minestrone?

I keep leftovers in the fridge for up to 5 days. For freezing, I leave the spinach out of the portion I am freezing, pack it with room for expansion, and stir in fresh spinach when I reheat. It keeps in the freezer for up to 3 months. To reheat, I thaw it overnight in the fridge and warm it on the stovetop over medium heat, adding a splash of broth if it has thickened. The lupini beans come out a little softer after freezing and thawing, which I think improves them.

Browse by ingredient
Similar recipes

People who cooked Minestrone Soup also made

Reviews

Tap to rate

4.6 from 22 ratings, 16 written

Made this recipe?

Replying to MaryJane

Your rating

Kristen

Broth thickens overnight. Cauliflower rice gets mushy by day three.

Reply

Ryan

I was using canned white beans as my default keto minestrone sub and the texture always went mushy by the time everything else was done. Lupini beans actually solve that, and this is the first recipe I’ve seen that built the rest of the soup around them rather than just swapping them in. The rind is the other piece. That’s the broth depth I kept failing to get with bouillon cubes alone.

Reply

Angela

I stirred a tablespoon of tomato paste in with the carrots and onions before the broth, just let it cook until it went a shade darker, and the base ended up tasting like it had been going way longer than it had. Kind of a thing I do with other soups, same deal here. My one note is the cauliflower rice, mine went pretty soft by dinnertime, so next time I’m cutting it to half a cup and adding it closer to the end. Four stars not five because of the texture thing, but I’m making it again.

Reply

Annie Lampella

I’m stealing the tomato paste step. Never thought to bloom it separately in this one.

Reply

Brooke Miller

Had a parmesan rind sitting in my freezer for months. Finally found a use for it.

Reply

Annie Lampella

Brooke, I buy the rinds separately from the cheese counter now. This soup is why.

Reply

Brooke Miller

Didn’t know you could buy just the rind. Checking the cheese counter next time I’m at the store.

Reply

Paige F.

this one’s become a weekly staple in my house. obsessed.

Reply

Annie Lampella

I make this on rotation from October through March pretty much without fail. The rind is the part people always ask me about when I tell them what’s in it. I keep a bag of parmigiano rinds in the freezer specifically for this soup and for the butternut squash one. If you haven’t tried swapping in fire-roasted tomatoes yet, do it once. The broth tastes completely different.

Reply

Taylor

Dutch oven on for the first time for real from-scratch soup and this was the pick. Broth builds faster than I expected, bacon base and parmesan rind carry the depth. Lupini beans were new to me, wasn’t sure I’d grabbed the right thing at the store, but they hold up the whole simmer. One thing: season as you go. I adjusted too late and it showed.

Reply

Lisa

Batch five and the zucchini thing still gets me. It just breaks down into the broth with no thickener and the soup has actual body. Thought I was missing a step every time.

Reply

Annie Lampella

The zucchini just falls apart and thickens the broth as it goes. The rind helps too. I’ve never put a thickener in this one.

Reply

Natalie Robinson

There’s a chew to the lupini beans that holds through the full simmer, and in a soup where the zucchini and carrots have softened way down, that texture is the thing you keep reaching for. The depth from the bacon fat and the rind isn’t something you get any other way. Honest note for next time: 5 minutes for the cauliflower rice is slightly too long (mine came out soft, almost dissolved into the broth by the time I was ladling), so I’d pull it at 3. Still making this on repeat.

Reply

Annie Lampella

3 minutes is probably right if your cauliflower rice is finely cut or you’re using store-bought frozen. Mine runs coarser so it holds a little longer, but the fine stuff absolutely dissolves. I’ll add a note.

Reply

Natalie Robinson

Mine was the frozen kind, so yeah. Three minutes next time.

Reply

Mei

fire-roasted tomatoes instead of regular. won’t go back.

Reply

Annie Lampella

Mei, the smokiness from fire-roasted is doing something separate from what the rind does. I tried it last winter and haven’t bought regular since.

Reply

Christina K.

Made this on a rainy evening last week and my partner, who usually picks around anything that looks like a bean, ate the lupini beans without question (I only told him after). The parmesan rind thing is real – the broth had this depth I don’t usually get from scratch. Would add more carrots next time to balance the tomato.

Reply

Annie Lampella

The lupini bean thing gets people every time. They look enough like cannellini that no one questions it. And yes, more carrots – I’d go up to 3/4 cup and add them in with the onions so they have time to soften all the way through.

Reply

Min

Minestrone was the first thing I gave up when I went keto and I kind of accepted I just wouldn’t have it anymore. The lupini beans and that parmesan rind simmering in the broth… it’s actually the soup I remembered.

Reply

Annie Lampella

That’s what I wanted to hear. Lupini beans hold up where cannellini would’ve turned to mush by serving time.

Reply

Fatima

Made this twice now and I’m obsessed with the parmesan rind trick, but I keep second-guessing when to pull it out. Does it matter if it simmers the full time or does it get bitter if it goes too long?

Reply

Annie Lampella

Leave it in the whole time. Parmesan rind doesn’t go bitter, it just keeps building. I’ve forgotten mine was in there and let it go way past the timer and the broth only got deeper.

Reply

Luis

So I picked up all the ingredients this weekend and I’m completely stumped on the parmesan rind thing. Never used one before. Didn’t even know that was a thing you could cook with. Do you have to save them up gradually from wedges you go through, or can you actually buy just the rind at a grocery store? I got a wedge of parmesan but I’m guessing you can’t just throw in a chunk of the actual cheese since it would disintegrate. And if I can’t track one down in time, is the soup still worth making without it, or is the rind literally what makes the broth taste that way? Been doing keto for about a month and soup is what keeps me on track, so I really want to nail this.

Reply

Annie Lampella

Most grocery stores sell the rinds separately at the cheese counter, usually really cheap. A chunk of actual parmesan won’t do the same thing (it melts into the broth and you lose all that depth). Without the rind the soup is still good, just tastes more like a basic vegetable soup.

Reply

Patrick H.

Made this Sunday and my 10-year-old spent the first five minutes picking out lupini beans and interrogating me about what they were. He’s suspicious of anything that doesn’t look like normal food, so when he got quiet halfway through the bowl and just kept eating I knew we had something. That parmesan rind in the broth is not a trick, the richness is real. Already planning a double batch.

Reply

Annie Lampella

Quiet eating from a skeptical 10-year-old beats any five-star review. The lupini interrogation is basically a rite of passage at this point.

Reply

Luz

My mom kept asking what gave the broth that depth, so I finally told her about the parmesan rind. She grew up making soup from scratch and said that’s exactly what her grandmother did. Didn’t see that coming.

Reply

Annie Lampella

Your mom’s reaction says everything. It’s not a trick, just how soup used to be made.

Reply

Tamara

Two parmesan rinds instead of one. Trust me. The broth gets this almost meaty depth a single rind just doesn’t hit. Still tweaking the seasoning balance, but that change alone made it worth making again.

Reply

Annie Lampella

Writing that down. I’ve always stopped at one but the meaty depth you’re describing is exactly what I want from that broth.

Reply

Rita

I’ll be honest, I was skeptical about lupini beans in a minestrone. Been making minestrone for years with cannellini and couldn’t imagine the texture would be close. But the broth with that parmesan rind is so rich and savory that it kind of doesn’t matter, and the lupini held up better than I expected, not mushy at all. Way fewer carbs than my usual version and I actually prefer it now.

Reply

Annie Lampella

The rind really does carry the whole broth. And yeah, lupini hold up in a way cannellini honestly don’t, especially after reheating. Cannellini get kind of soft and fall apart. Lupini stay intact.

Reply

Roz | La Bella Vita Cucina

I’ve just gone KETO and can’t wait to try this recipe. Thanks!

Reply

Annie Lampella

The lupini beans are worth tracking down. They keep it at 8g net carbs and don’t turn mushy like regular beans do.

Reply

Amy

Good flavor. Like others have said, the beans were hard and not especially tasty even cooking them longer. I had to salt and pepper quite a bit. I also threw in orange and yellow bell pepper and a few chopped up radishes. I used a cauliflower/broccoli rice blend. Will be nice to have a hot lunch this week!

Reply

Annie Lampella

Orange and yellow bell peppers are a great add. The radishes are interesting, do they hold up or get soft? I’ve never tried them in soup.

Reply

MaryJane

Delicious soup. The beans were hard and will have the cook (hubby) leave out next time. They came in a jar and we were surprised how hard they were. The bean hardness did not detract from the rest of the delicious soup. Cook made a double batch. The leftover soup had softer beans after freezing. My daughter liked the beans from the get go. Go figure.

Reply

Annie Lampella

Freezing does that, more time to hydrate. Lupini beans are just naturally firmer than what most people expect from a soup bean, even fully cooked. Leaving them out is fine too.

Reply

Keep going

More Dinner Recipes

See all 172 Dinner recipes

Get new recipes from Annie

One email a week. Unsubscribe whenever you like.