Is French Onion Soup Keto? Carb Counts and a Low-Carb Recipe

A single restaurant bowl can pack 20 to 30 grams of net carbs, mostly from a thick baguette slice resting on top and four to six cups of deeply caramelized onions simmering beneath, easily busting a 20-gram daily carb ceiling. Cutting the onion volume by half and replacing the bread with pork-rind croutons or cheese crisps drops the same bowl to about 6 to 8 grams of net carbs.

Beef broth, butter, dry white wine, and melted Gruyère are naturally low in carbs, so the bread and onion volume are the only real obstacles.

This breakdown covers the carb math behind every ingredient, low-carb swaps that hold up under the broiler, a chef-tested recipe under 8 grams of net carbs per bowl, and scripts for ordering at restaurants.

The Traditional Bowl Versus a Keto Macros Budget

Classic French onion soup is a layered dish: deeply caramelized yellow onions swimming in rich beef broth, capped with a thick slice of toasted baguette and a blanket of melted Gruyère. Each layer looks harmless on its own, yet stacked together they create a carbohydrate load that runs roughshod over a typical ketogenic macros budget.

Most people following keto aim for 20 to 50 grams of net carbs per day, and a single bowl of the traditional version can eat up nearly all of that allowance before any other food is touched.

The cheese blanket isn’t the problem. Gruyère, Parmesan, and most aged cheeses deliver less than 1 gram of net carbs per ounce, and beef broth is effectively zero-carb. Butter, thyme, dry white wine in modest amounts, and a splash of Worcestershire sauce also stay well within keto territory. The carbs hide in two specific places: the bread and the sheer volume of cooked onions, both of which are easy to reduce without sacrificing what makes the soup comforting.

Net-Carb Snapshot by Ingredient

Ingredient (per serving)Approx. Net CarbsKeto Verdict
Baguette slice (1 thick piece)15 to 25 gCut or replace
Caramelized yellow onion (1 cup cooked)~14 gReduce volume by 50 to 75%
Beef broth (1 cup)0 to 1 gKeep as is
Gruyère or Parmesan (1 oz melted)<1 gKeep as is
Dry white wine or sherry (1 tbsp)<1 gKeep as is
Flour or cornstarch thickener (1 tsp)1 to 2 gOmit

The bottom line: skip or replace the bread, cut the onion volume, and the same bowl slides comfortably into a keto macros budget. USDA FoodData Central lists cooked yellow onion at roughly 14 grams of net carbs per cup, which is why the recipe’s onion volume matters far more than the variety you choose.

Where the Carbohydrates Actually Hide

Onions are the silent carb driver in every batch of French onion soup. A recipe that looks harmless at a glance might quietly call for four, five, or even six cups of cooked onions, because onions shrink dramatically during caramelization and the pot looks half-empty until you measure.

One cup of cooked yellow onion delivers around 14 grams of net carbs, so a recipe with five cups of cooked onions contributes 70 grams of carbs to the pot, spreading out to roughly 12 to 15 grams per serving depending on portion size.

The Bread Layer Adds Fast Carbs

The baguette slice perched under the cheese is the second carb bomb. A thick, toasted slice of French bread lands somewhere between 15 and 25 grams of net carbs before any butter is spread on top. Some restaurants go further and serve the soup inside a hollowed-out sourdough bread bowl, which can double or even triple that bread contribution. On a keto plan, the bread is the single biggest offender per ingredient.

The Sneaky Contributors Home Cooks Forget

A few smaller ingredients can quietly push the carb count higher than expected:

  • Dry white wine or sherry: A small splash for deglazing adds about 1 gram of net carbs per tablespoon, easy to forget but worth tracking if you pour liberally.
  • Flour or cornstarch thickener: Some recipes dust the onions with flour before adding broth to thicken the soup, contributing 1 to 2 grams of net carbs per teaspoon.
  • Worcestershire sauce: Most brands contain a trace of sugar, adding roughly 1 gram of net carbs per tablespoon, so measure rather than free-pouring.
  • Sweet onions or shallots: Sweeter varieties carry slightly more sugar per cup than yellow onions, which can nudge the total up by a gram or two per serving.

None of these single-handedly break a keto plan, but stacked together they can turn a borderline bowl into one that’s well over budget. Measure the wine, skip the flour, and check the label on your Worcestershire.

Sneaky carbs aren’t only in the onions themselves, since wine, flour thickeners, and condiments add up fast too.

Reducing the Onion Load Without Killing the Flavor

Cutting the onion volume is the single highest-impact change for lowering net carbs. Many published recipes use four to six cups of cooked onions because the dish traditionally swims in them, yet you can drop that to two or three cups and still get a recognizable bowl. The broth carries plenty of savory depth from beef stock, thyme, and a long simmer, so the onions don’t have to do all the work.

Pick the Right Onion Variety

Yellow onions are the workhorse of French onion soup for good reason. They caramelize evenly, develop a balanced sweet-savory flavor, and contain slightly less sugar per cup than sweet onions like Vidalia or Walla Walla. Shallots, while delicious, are even more concentrated in sugar by weight, so they push the carb count higher per cup. White onions sit in the middle and work fine if yellow isn’t available.

Stick with standard yellow onions, measure by volume after cooking, and treat the cup count as your carb budget.

Boost Flavor With Extracts and Powders

When the fresh onion volume drops too low to feel like the real thing, a tiny boost of concentrated flavor can fill the gap:

  • Onion extract: A quarter-teaspoon per quart of soup adds back the sharp, aromatic top notes of fresh onion for roughly 0 grams of net carbs.
  • Onion powder: Half a teaspoon stirred into the broth at the end of cooking contributes about 1 gram of net carbs per pot, negligible per serving.
  • Reserved caramelization fond: Scraping the brown bits from the pan after cooking the onions locks flavor into the broth without adding any carbs at all.
  • A pinch of beef bouillon: A teaspoon of high-quality bouillon dissolved in the broth deepens the savory backbone and rounds out the missing onion sweetness.

Bread Swaps That Hold Up Under Broiled Cheese

The bread layer gives French onion soup its iconic look, a golden cheese cap with a crisp foundation underneath. On keto, the goal is to keep that textural contrast without the 15 to 25 grams of net carbs that a baguette slice delivers. A few substitutes actually get crispier than bread under the broiler and add zero or near-zero carbs per serving.

Pork Rind Croutons

Crushed or whole pork rinds seasoned with garlic powder, a little Parmesan, and a pinch of thyme crisp up dramatically under the broiler. They stay rigid in hot broth long enough to eat through the bowl without turning to mush, and a single serving adds 0 grams of net carbs. Pork rinds are savory and salty rather than bready, so a generous cheese layer on top helps bridge the gap.

Cheese Crisps as Both Bread and Cheese

Bake small mounds of shredded Gruyère or Parmesan on parchment until they melt and crisp into lacy rounds, then float one on top of each bowl before adding the melted cheese layer. The crisp acts as both the toast and part of the cheese topping, collapsing two components into a single keto-friendly element. Each crisp adds less than half a gram of net carbs and brings a deeper, nuttier flavor than plain bread.

Low-Carb Store-Bought Bread

Several brands now make sliced breads with 0 to 2 grams of net carbs per slice using ingredients like wheat protein isolate, almond flour, or resistant starch. Toasted until rigid, these slices survive a ladle of hot broth better than softer homemade loaves. Read the ingredient list carefully, since some “low-carb” breads still pack 5 to 10 grams of net carbs per slice due to hidden starches or fiber math that doesn’t fully subtract.

Quick Comparison of Bread Replacements

ReplacementNet Carbs/ServingBest For
Pork rind croutons (seasoned)0 gMaximum crunch, zero carbs
Cheese crisps (Gruyère or Parmesan)<0.5 gCombining toast + cheese layer
Store-bought low-carb bread (0 to 2 g/slice)0 to 2 gClosest texture to traditional baguette
Almond flour biscuit (homemade)1 to 2 gSoft, bready mouthfeel

A Keto French Onion Soup That Stays Under 8g Net Carbs

The recipe below produces four generous bowls with roughly 6 to 8 grams of net carbs each, built around a reduced-onion base and a pork-rind crouton. Total active time runs about an hour, most of which is hands-off caramelization.

Ingredients

  • 4 cups thinly sliced yellow onions (about 2 large onions, yielding ~2 cups once caramelized)
  • 6 cups beef broth or beef bone broth (look for brands with 0 g added sugar)
  • 2 tablespoons butter
  • 2 tablespoons dry white wine or sherry
  • 1 teaspoon Worcestershire sauce
  • 1 teaspoon fresh thyme leaves (or 1/3 teaspoon dried)
  • 1 bay leaf
  • Salt and cracked black pepper to taste
  • 2 oz pork rinds, crushed (seasoned with 1/2 teaspoon garlic powder)
  • 4 oz shredded Gruyère (or a 50/50 Gruyère-Parmesan blend)
  • 1 tablespoon compound herb butter (optional, for finishing)

Step-by-Step Method

  1. Caramelize the onions: Melt the butter in a heavy pot over medium-low heat, add the onions with a pinch of salt, and cook slowly for 30 to 40 minutes until deeply golden. Resist the urge to crank the heat; rushing this step leaves the onions bitter instead of sweet.
  2. Build the broth: Deglaze with the wine, scraping up the fond, then add the broth, Worcestershire, thyme, and bay leaf. Simmer uncovered for 15 to 20 minutes to concentrate flavor. Season with salt and pepper.
  3. Prep the topping: While the broth simmers, toss the crushed pork rinds with garlic powder. Shred the cheese and divide it into four oven-safe crocks.
  4. Assemble the bowls: Ladle the hot soup into each crock, float a generous spoonful of seasoned pork rinds on top, then blanket with the shredded cheese.
  5. Broil to finish: Position the crocks on a sheet pan and broil 4 to 6 inches from the heat for 3 to 4 minutes until the cheese is bubbling and bronze. Watch closely; broilers vary and cheese can scorch fast.
  6. Finish and serve: Top each bowl with cracked black pepper and a small pat of herb butter if using. Serve immediately while the cheese layer is still molten.

Tip: For a richer finish, grate a little extra Parmesan over the cheese layer before broiling. The added fat helps the cheese brown more evenly and adds depth without extra carbs.

Eating Out Without Sabotaging Your Macros

Restaurant French onion soup is one of the trickiest menu items for keto because the bread and onion volume are baked into the kitchen’s standard recipe and rarely customizable on the spot. A little menu detective work and a polite ask can save your macros.

What Published Nutrition Data Shows

Chain restaurants with full nutrition disclosures are the easiest to evaluate. Panera Bread’s French onion soup typically lands around 25 grams of net carbs per bowl. Olive Garden’s version sits closer to 30 grams because of the larger bread-to-soup ratio. Le Pain Quotidien and similar bakery-cafés often exceed 35 grams when the bowl is served inside or atop a thick slab of sourdough.

Every one of those numbers exceeds the daily carb ceiling on a strict 20-gram keto plan, which is why knowing the count ahead of time matters.

Scripts That Get Real Modifications

Bistros and steakhouses without published macros are a different story, but the kitchen can often adjust:

  • Ask to omit the bread entirely: Most servers can flag this, and the kitchen will skip the slice and pile on extra cheese.
  • Request no flour thickener: If the soup looks roux-based, ask for it to be left brothy; many kitchens use a slurry and can leave it out.
  • Ask for double cheese: Adding more melted Gruyère instead of bread improves the texture of the topping while keeping carbs near zero.
  • Order a broth-only cup: When modifications aren’t possible, a cup of the broth with a side of cheese cubes stays well under any keto ceiling.

Smart Picks at Different Restaurant Types

Steakhouses are usually the safest bet because the kitchen stocks high-quality beef broth and aged cheeses for other dishes, and the staff is accustomed to special requests. French bistros vary widely: a traditional Lyon-style bowl will almost always be bread-heavy, while modern American-French spots are more flexible. Skip the soup at bakery-cafés entirely, since the bread is the restaurant’s signature and the kitchen is unlikely to remove it.

Restaurant strategies only get you so far, so having leftovers that reheat well matters just as much.

Storage, Reheating, and Batch-Prep Without the Sog

The trick to keeping keto French onion soup interesting across multiple meals is separating the wet and dry components. Bread or pork-rind croutons left to soak in broth turn into mush within hours, and a re-broiled cheese layer over wet toppings never recrisps properly. A few minutes of separation during storage saves the texture when it’s time to eat.

Storing Each Component

Cool the onion-broth base quickly and store it in airtight containers in the fridge for up to four days. Keep the pork-rind croutons and shredded cheese in separate sealed containers at room temperature or in the fridge, depending on the cheese. If you’ve already assembled a bowl with toppings, expect the croutons to soften and plan to eat it within a day rather than reheating from the assembled state.

Reheating for the Best Cheese Pull

Reheat individual portions in a small oven-safe crock under the broiler for 3 to 4 minutes to re-melt the cheese without overcooking the onions. The microwave works in a pinch but produces a rubbery cheese layer and uneven onion heating. A small saucepan on the stovetop is reliable for the broth-onion base; add fresh croutons and a new cheese layer after the soup is hot, then broil briefly.

Batch-Cooking and Freezing the Base

The onion-broth base freezes beautifully and is the easiest part to scale up. Ladle cooled soup into 2-cup freezer-safe containers, leaving about an inch of headspace, and freeze for up to three months. Thaw overnight in the fridge or drop the frozen block into a saucepan over low heat. Caramelized onions hold their flavor through freezing far better than raw onions, which is one of the few cases where batch-prep actively improves the dish.

That freezer-friendly advantage sets up a final takeaway worth holding onto as you weigh the tradeoffs.

Warning: Never freeze assembled bowls with the cheese and crouton layer on top. The dairy separates when thawed, the pork rinds lose all crunch, and the soup becomes a grainy, soggy mess that no amount of re-broiling can rescue.

The Bottom Line

French onion soup fits comfortably into a keto macros budget once the bread disappears and the onion volume drops by half. A rebuilt bowl with pork-rind croutons, two cups of caramelized yellow onion, beef broth, and melted Gruyère delivers the same cozy, cheesy experience as the original at roughly 6 to 8 grams of net carbs per serving. The cheese, broth, butter, and wine were never the problem; the bread and the mountain of onions were.

FAQ

How many carbs are in French onion soup?

A traditional restaurant portion contains 20 to 30 grams of net carbs, mostly from a thick baguette slice plus four to six cups of cooked onions. A homemade keto version with reduced onions and no bread lands at 6 to 8 grams of net carbs per bowl.

Can you have French onion soup on a keto diet?

A typical bread-topped, onion-heavy bowl lands well above keto limits, yet swapping in low-carb bread, broth-based richness, and modest onion amounts keeps a homemade version inside a 20 to 50 gram daily carb window. Skip the baguette, halve the onions, and the soup becomes a keto-appropriate meal.

What makes French onion soup not keto?

Two ingredients drive the carb count: the baguette slice, which adds 15 to 25 grams of net carbs, and the cooked onions, which contribute around 14 grams of net carbs per cup and are often used in large volumes. Everything else in the soup is naturally low in carbs.

How do you make French onion soup keto?

Caramelize two cups of yellow onions in butter, simmer with beef broth, thyme, and a splash of dry white wine, then ladle into oven-safe crocks. Top with seasoned pork-rind croutons or cheese crisps and a generous layer of shredded Gruyère, then broil until the cheese is bubbling and bronze.

Is the bread in French onion soup keto?

No, a thick slice of baguette is not keto, contributing 15 to 25 grams of net carbs per piece. Replace it with pork-rind croutons, baked cheese crisps, or a slice of low-carb bread toasted until rigid for a keto-friendly version.

Staff
Staff

Our team brings together health and food enthusiasts who are passionate about discovering reliable health information, nutritious choices, and enjoyable food experiences. From everyday nutrition and healthy eating ideas to recipes, ingredients, food trends, and standout dishes, we share carefully researched and thoughtfully curated content to help readers make informed choices about what they eat and enjoy.