Ground Beef And Zucchini Skillet (Low-Carb)
There’s a particular kind of quiet magic that happens on a Sunday afternoon when the rain taps gently at the window and the kitchen fills with the scent of garlic softening in oil. This Ground Beef and Zucchini Skillet is my favourite low-carb project for those lazy, slow-burning hours. It’s a one-pan affair that asks for nothing more than your full attention and a willingness to let the ingredients do their quiet, fragrant work.
Recipe Overview
- Prep time: 15 minutes
- Cooking time: 25 minutes
- Total time: 40 minutes
- Servings: 4 generous portions
- Difficulty: Easy — just requires a little patience
Why You’ll Love This Ground Beef and Zucchini Skillet (Low-Carb)
- It transforms simple, everyday vegetables into something deeply savoury and rich, with a texture that feels properly indulgent.
- After testing this recipe five times, I finally got it just right — the zucchini holds its shape without turning to mush, and the beef develops a proper crust.
- It’s a complete meal in one pan, meaning less washing up and more time curled up on the sofa afterwards.
- The aromas that drift through your home as it cooks are genuinely therapeutic — think browned butter, thyme, and a gentle sweetness from the caramelised courgettes.
- I’ve been making this for over 7 years, and it never disappoints — it’s become my go-to for welcoming friends who eat low-carb without making them feel like they’re missing out.
Ingredients You’ll Need
- 500g beef mince (15-20% fat)
- 3 medium courgettes (about 600g total)
- 1 large onion (finely diced)
- 4 cloves garlic (minced)
- 2 tablespoons tomato puree
- 200ml beef stock (unsalted)
- 1 teaspoon dried thyme
- 1 teaspoon smoked paprika
- ½ teaspoon sea salt (plus more for courgettes)
- ½ teaspoon black pepper
- 3 tablespoons olive oil
- 30g Parmesan cheese (finely grated)
- Small handful of fresh parsley (chopped)
Tip: Choose courgettes that feel firm and heavy for their size — they contain less water and will hold up better during cooking without releasing too much liquid into the pan.
How to Make Ground Beef and Zucchini Skillet (Low-Carb)
- Prepare the courgettes. Trim the ends off each courgette, then slice them into half-moons about 1cm thick — not too thin, or they’ll disappear into the sauce. Scatter them over a clean tea towel, sprinkle lightly with salt, and leave to sit while you prepare everything else. This draws out excess moisture, and you’ll see tiny beads of water forming on the surface after 10 minutes. Pat them dry with kitchen paper before cooking.
- Brown the mince. Place your large frying pan over a medium-high heat and add one tablespoon of the olive oil. When the oil shimmers and you can smell its warmth, add the beef mince. Let it sit undisturbed for a full 3 minutes — you want to hear a steady, happy sizzle. When the underside is a deep mahogany brown, break it apart with your wooden spoon. Continue cooking until all the mince is browned and no pink remains, about 5-6 minutes total. The kitchen will smell wonderfully toasty. Remove the mince to a bowl using a slotted spoon, leaving the rendered fat in the pan.
- Sweat the aromatics. Lower the heat to medium and add the remaining two tablespoons of olive oil. Tip in the diced onion and stir. Listen for a gentle hiss rather than a violent spatter. Cook for about 4 minutes, stirring occasionally, until the onion turns translucent and the edges begin to catch a pale gold colour. Add the minced garlic and cook for another 30 seconds — the moment the garlic releases its sweet, pungent fragrance, you know it’s ready.
- Caramelise the courgettes. Increase the heat to medium-high again and add the dried courgette slices in a single layer (work in two batches if your pan is crowded). Let them cook without stirring for 2 minutes, until the undersides develop golden-brown patches. Flip them and cook for another 2 minutes. They should feel tender when pierced with a fork but still hold their shape. The sound will shift from a wet sputter to a drier, more confident sizzle as the moisture evaporates.
- Build the sauce. Return the browned beef to the pan. Add the tomato puree, dried thyme, smoked paprika, salt, and black pepper. Stir everything together and cook for 1 minute — the tomato puree will darken slightly and smell intensely rich. Pour in the beef stock and scrape the bottom of the pan with your wooden spoon to release any browned bits (that’s pure flavour). Bring the mixture to a gentle simmer — you want lazy bubbles, not a furious boil.
- Simmer and finish. Reduce the heat to low, cover the pan with a lid, and let the skillet bubble quietly for 10 minutes. The liquid will reduce to a luscious, clingy sauce that coats the back of a spoon. Uncover, stir in the grated Parmesan, and let it melt into the sauce for 1 minute. The finished dish should look glossy and inviting, with the courgettes sitting proudly among the rich, dark mince. Sprinkle with fresh parsley just before serving.
Tips From My Kitchen
- Salt the courgettes in advance. This is non-negotiable for a low-carb skillet. Courgettes are mostly water, and if you skip this step, the excess moisture will flood your pan and you’ll end up with a watery, grey stew rather than a rich, concentrated sauce. The 10-minute salt rest draws out the liquid without cooking the courgettes.
- Use a pan with a wide surface area. A crowded pan traps steam instead of encouraging browning. If your mince or courgettes look like they’re steaming rather than browning, you’ve packed too much in. Cook in batches if necessary — the extra 4 minutes is worth the deep, caramelised flavour you’ll gain.
- Let the mince form a crust before stirring. I know it’s tempting to poke and prod, but leaving the mince undisturbed for the first 3 minutes builds a proper Maillard reaction. That browned crust is the foundation of the entire dish’s savoury depth. You’ll know it’s ready when you can slide your spatula underneath and feel the resistance of a good, crisp layer.
- Adjust the consistency to your liking. After simmering, if the sauce looks too thick for your taste, add a splash of warm water or extra stock. If it’s too thin, remove the lid and let it bubble uncovered for another 2-3 minutes. The sauce should cling to the beef and courgettes without pooling at the bottom of the pan.
- Grate your own Parmesan. Pre-grated cheese contains anti-caking agents that prevent it from melting smoothly. Grating a small block yourself takes 30 seconds and ensures the cheese dissolves into the sauce, thickening it naturally and adding a subtle nutty richness that ties everything together.
Equipment You’ll Need
- Large frying pan or skillet (preferably 30cm or wider)
- Sharp knife and cutting board
- Mixing bowls (for resting the courgettes)
- Wooden spoon or spatula
- Kitchen paper or a clean tea towel
- Slotted spoon
Common Mistakes to Avoid
- Overcrowding the pan: When you cram too many courgettes or too much mince into the pan, the temperature drops dramatically and the ingredients release their moisture instead of browning. Cook in batches if needed — the golden-brown colour you achieve is the difference between a dish that tastes flat and one that tastes deeply savoury.
- Wrong temperature: This recipe needs you to move between heat levels with intention. Browning requires medium-high heat to create that crust. Simmering needs low heat to gently concentrate flavours without toughening the beef. If you keep the heat too high throughout, the mince will turn dry and the courgettes will fall apart.
- Skipping the rest time: After the skillet finishes cooking, let it rest off the heat for 2-3 minutes before serving. This brief pause allows the sauce to settle and the courgettes to absorb a little more flavour. If you serve it immediately, the sauce will be looser and the ingredients won’t have had time to meld together harmoniously.
Delicious Variations to Try
- Spicy Version: Add one finely chopped red chilli (seeds removed if you prefer less heat) along with the garlic. For extra warmth, stir in half a teaspoon of cayenne pepper with the smoked paprika. The gentle heat cuts through the richness beautifully without overwhelming the courgettes.
- Vegetarian/Vegan Option: Replace the beef mince with 400g of cooked green lentils or a plant-based mince alternative. Use vegetable stock instead of beef stock, and skip the Parmesan or use a vegan alternative. The lentils bring an earthy, satisfying texture that works wonderfully with the courgettes.
- Different Protein: Swap the beef mince for turkey mince or lamb mince. Turkey will cook slightly faster and has a milder flavour, so consider adding an extra pinch of smoked paprika. Lamb brings a beautiful, gamey richness that pairs exceptionally well with the thyme and courgettes.
What to Serve With Ground Beef and Zucchini Skillet (Low-Carb)
- A simple side salad with a sharp lemon and olive oil dressing to cut through the richness.
- Cauliflower rice, sautéed briefly in butter, for extra bulk without the carbs.
- Steamed green beans or a handful of fresh rocket on the side for a peppery contrast.
- If you’re not strictly low-carb, a slice of crusty sourdough to mop up every last drop of the sauce.
Still hungry for ideas? You might also love Cheesy Ground Beef And Rice Casserole Skillet, High Protein Beef And Broccoli Skillet from our sister kitchens.
Frequently Asked Questions

Ground Beef and Zucchini Skillet (Low-Carb)
Ingredients
Method
- Prepare the courgettes. Trim the ends off each courgette, then slice them into half-moons about 1cm thick — not too thin, or they'll disappear into the sauce. Scatter them over a clean tea towel, sprinkle lightly with salt, and leave to sit while you prepare everything else. This draws out excess moisture, and you'll see tiny beads of water forming on the surface after 10 minutes. Pat them dry with kitchen paper before cooking.
- Brown the mince. Place your large frying pan over a medium-high heat and add one tablespoon of the olive oil. When the oil shimmers and you can smell its warmth, add the beef mince. Let it sit undisturbed for a full 3 minutes — you want to hear a steady, happy sizzle. When the underside is a deep mahogany brown, break it apart with your wooden spoon. Continue cooking until all the mince is browned and no pink remains, about 5-6 minutes total. The kitchen will smell wonderfully toasty. Remove the mince to a bowl using a slotted spoon, leaving the rendered fat in the pan.
- Sweat the aromatics. Lower the heat to medium and add the remaining two tablespoons of olive oil. Tip in the diced onion and stir. Listen for a gentle hiss rather than a violent spatter. Cook for about 4 minutes, stirring occasionally, until the onion turns translucent and the edges begin to catch a pale gold colour. Add the minced garlic and cook for another 30 seconds — the moment the garlic releases its sweet, pungent fragrance, you know it's ready.
- Caramelise the courgettes. Increase the heat to medium-high again and add the dried courgette slices in a single layer (work in two batches if your pan is crowded). Let them cook without stirring for 2 minutes, until the undersides develop golden-brown patches. Flip them and cook for another 2 minutes. They should feel tender when pierced with a fork but still hold their shape. The sound will shift from a wet sputter to a drier, more confident sizzle as the moisture evaporates.
- Build the sauce. Return the browned beef to the pan. Add the tomato puree, dried thyme, smoked paprika, salt, and black pepper. Stir everything together and cook for 1 minute — the tomato puree will darken slightly and smell intensely rich. Pour in the beef stock and scrape the bottom of the pan with your wooden spoon to release any browned bits (that's pure flavour). Bring the mixture to a gentle simmer — you want lazy bubbles, not a furious boil.
- Simmer and finish. Reduce the heat to low, cover the pan with a lid, and let the skillet bubble quietly for 10 minutes. The liquid will reduce to a luscious, clingy sauce that coats the back of a spoon. Uncover, stir in the grated Parmesan, and let it melt into the sauce for 1 minute. The finished dish should look glossy and inviting, with the courgettes sitting proudly among the rich, dark mince. Sprinkle with fresh parsley just before serving.
Notes
I hope this skillet becomes as cherished in your kitchen as it is in mine. There’s something deeply satisfying about leaning into the process — the gentle sizzle, the slow browning, the quiet transformation of simple ingredients into something genuinely comforting. If you give it a try, I’d love to hear how you get on. Drop a comment below and tell me about the aromas that filled your kitchen, or how you made it your own.