Authentic Bolognese Sauce
⏲ ~32 min total · prep 18 · cook 14 · 4 servings
Lunch⏱ 70 min total🔥 7.0g net carbs⚡ ≈467 kcal/serving~5% of calories from carbs
By the KFI Test Kitchen · Tested & approved by Jason Lieu, KFI recipe editor
Published Sep 15, 2026 · Updated Sep 15, 2026
Ingredients
- 2 tbsp butter plus 1 tbsp olive oil, for the soffritto
- 1 small yellow onion, cut in chunks
- 1 small carrot, cut in chunks
- 1 small celery rib, cut in chunks
- 8 oz ground beef (85% lean)
- 8 oz ground pork
- 1/2 cup dry white wine
- 2 tbsp tomato paste
- 1 cup crushed tomatoes
- 2/3 cup heavy cream
- 1/2 tsp fine salt
- 1/4 tsp black pepper
Instructions
- Pulse the onion, carrot, celery, and garlic in a food processor to a fine mince — this is what lets a fast ragù taste slow-cooked.
- Melt the butter with the olive oil in a heavy 3-quart Dutch oven over medium and cook the vegetables 8 minutes, stirring, until soft and sweet with no color.
- Raise the heat to medium-high, add both meats, and brown 8-10 minutes, breaking the meat small, until it sizzles instead of steams and no gray remains.
- Pour in the wine and scrape the pot clean, boiling until the alcohol smell burns off, about 2 minutes.
- Stir in the tomato paste, then the crushed tomatoes, salt, and pepper; half-cover, drop to the lowest simmer, and cook 30 minutes, stirring occasionally, until the fat glows orange at the surface.
- Pour in the cream, simmer uncovered 4-5 minutes more until the sauce is thick, glossy, and pulls away from the spoon, then taste for salt.
- Serve over zucchini noodles or shirataki with grated Parmesan.
Why this recipe works
- The food processor is the trick Pulsing the onion, carrot, celery, and garlic to a fine mince is what lets a seventy-minute ragù taste slow-cooked. Fine vegetables melt into the sauce instead of sitting in it.
- Two meats, small crumble Beef and pork browned for eight to ten minutes, broken small, until the pan sizzles instead of steams. That dry sizzle is the sound of fond forming, and fond is where the sauce gets its depth.
- Cream finishes it Two-thirds of a cup of heavy cream simmered in at the end turns the tomato base into something thick, glossy, and bolognese-orange. It also brings the sauce to 7 net carbs a serving.
Tips for making this recipe well
No color on the vegetables
Eight minutes in butter and olive oil until soft and sweet, and stop there. Browned soffritto changes the flavor of the whole pot toward something heavier.
Listen for the sizzle
The meat is ready for wine when the steaming stops and the pan sizzles. If it still steams, water is coming out of the meat and the browning has not started.
Lowest simmer, half-covered
Thirty minutes at the gentlest bubble, stirred now and then. The sauce is done when the fat glows orange at the surface and separates slightly.
Wine fully cooked off
Give it about two minutes of boiling after scraping the pot, until the alcohol smell burns away. Undercooked wine leaves a sharp edge in the finished sauce.
Salt at the end
The sauce reduces and concentrates for half an hour, so season after the cream goes in. Early salt can land on the salty side once the volume drops.
Serving suggestions
Serve it over zucchini noodles or shirataki with grated Parmesan, as written, and warm the noodles first so the sauce stays hot at the table. Each serving carries 7 net carbs, and the active work fits inside the first twenty minutes of the seventy. The sauce is thick enough to cling without any help, so skip drowning the noodles and spoon it on. A little Parmesan on top is doing a real job here, not a garnish.
Storage and meal prep
The sauce keeps 3 to 4 days covered in the fridge and is genuinely better on day two, once the fat and tomato have had a night together. It freezes for 2 to 3 months; thaw overnight and reheat gently, stirring, since cream sauces can look slightly broken until they warm through. Double the batch with no extra time beyond the chopping. The pot does not care, and future you eats well for the effort.
Variations worth trying
- Milk instead of cream Traditional versions finish with milk, and whole milk works here the same way. The sauce turns slightly lighter in color and body.
- A pinch of nutmeg Grated nutmeg with the cream is the old-school move. A small pinch is enough; it should be felt, not named.
- Meaty version Add another 4 ounces of ground beef with the same browning time. Keep the crushed tomatoes as written or the balance drifts sweet.
- Rosemary A small sprig simmered with the tomatoes and fished out before the cream. It reads more Sunday-gravy than Bologna, which is not a flaw.
Frequently asked questions
Can I use only beef?
You can, and the sauce still works. The pork brings sweetness and fat that soften the beef, so expect a slightly darker, more savory pot without it.
Why pulse the vegetables instead of dicing?
A fine mince dissolves into the sauce during the simmer, which is how a shorter cook can taste longer. Hand-diced vegetables stay distinct and read as chunky sauce.
Can I simmer it longer than thirty minutes?
Yes, up to an hour, with a splash of water if it tightens too much. The flavor deepens; add the cream in the last five minutes either way.
What do I serve it over?
Zucchini noodles or shirataki, warmed first so the sauce stays hot. The sauce is thick and clings well, so neither noodle needs help.
My sauce looks greasy. Is that wrong?
A glowing orange layer of fat at the surface is the sign the ragù is done, not a mistake. Stir it in with the cream and it becomes part of the body.
Related keto recipes
As an Amazon Associate and affiliate partner, Keto Food Ideas earns from qualifying purchases at no additional cost to you. Nutritional values are estimates. Recipes are developed with AI assistance and reviewed by our editors before publishing.
← More Lunch recipes · Home