Keto Shepherd’s Pie
This post may contain affiliate links. See my disclosure policy.
My keto shepherd’s pie features a rich and meaty gravy layered with a creamy, buttery cauliflower topping. It’s freezer-friendly and only has 3 grams of net carbs!

Few dishes quite encapsulate comfort food like shepherd’s pie, but as you can imagine, traditional shepherd’s pie is the opposite of keto-friendly.
Thankfully, I’ve devised the perfect keto shepherd’s pie recipe. With layers of juicy ground beef, savory gravy, and the best creamy cauliflower mash on top, this recipe leaves NO room for wanting.
The secret is treating the cauliflower like proper mashed potatoes. I borrowed the technique from my mom’s indulgent mashed potato recipe (she uses cream, butter, and cheese), then simply swapped in cauliflower. Honestly, no one guesses it’s not made with potatoes.
Table of Contents
Why I love this recipe
- Deceptively easy to make. For how many elements go into this dish, you’ll be shocked by how simple it is.
- Comfort food without carbs. It’s got savory, creamy, and cheesy flavors in every bite.
- Perfect for meal prep. I don’t make shepherd’s pie often, but when I do, I make a double-batch and keep one in the freezer. It’s one of my favorite freezer meals.
- Customizable. There’s a good bit of wiggle room in here, so don’t fret if you don’t have every ingredient listed. I’ll provide variations below.

Key Ingredients
- Ground beef. I used lean ground beef. If you want to use a fattier cut of beef, cook it separately and drain the excess fat. When I want a lighter pie, I’ve used ground turkey or ground chicken. Ground lamb also works really well.
- Olive oil, garlic cloves, and onion.
- Almond flour. It’s optional, but I find a little bit thickens the filling nicely.
- Crushed tomatoes. To add richness to the gravy. I opt for the canned ones in their natural juices.
- Beef bouillon. Adds the necessary savory notes.
- Worcestershire sauce. Just a pinch to bring out the meaty flavors.
- Bay leaf. For aroma. I just discard it before assembling.
- Beef stock. Thins out the filling enough that it becomes a thick gravy. I recommend choosing a broth with minimal additives or fillers. I really enjoy Campbell’s beef broth.
For the mashed cauliflower topping:
- Cauliflower. A low-carb swap for mashed potatoes. I’ve also been known to use mashed turnips in a pinch, and they turn out just as delicious.
- Heavy cream. Room temperature. I have used milk in a pinch, but the cream adds another level of richness.
- Butter. Room temperature butter mixes seamlessly into the cauliflower.
- Salt and black pepper. To taste.
- Shredded cheese. Optional, but I like to sprinkle some mozzarella or Parmesan for an even creamier topping.
How to make low carb shepherd’s pie
I’ve included step-by-step photos below to make this recipe easy to follow at home. For the full printable recipe instructions and ingredient quantities, scroll to the recipe card at the bottom of this post.

Step 1- Brown the beef. Add oil to a skillet. Add the onion, garlic, and ground beef, and cook until no longer pink.

Step 2- Build the gravy. Mix in the flour. Add the crushed tomatoes, Worcestershire sauce, bay leaves, and beef broth. Bring to a simmer, then reduce the heat to medium. Cook until thick and gravy-like.

Step 3- Make mashed cauliflower. Add the steamed cauliflower and chopped butter to a food processor and blend until smooth. Add the cream, salt, pepper, and shredded cheese.

Step 4- Assemble and bake. Spread the cauliflower mixture on top of the pie and bake for 35-40 minutes or until golden brown and bubbling.
Arman’s recipe tips
- Save time with frozen cauliflower rice. When I’m short on time, I’ll steam frozen cauliflower rice and blend it in a food processor or blender. It cuts the mash time in half.
- Use a cast-iron skillet. I cook the beef filling, spread the cauliflower mash straight over the top, then transfer the whole skillet to the oven. It means one less dish to wash.
- Let the filling cool for 5 minutes. Giving the gravy a few minutes to settle helps it thicken slightly, making it easier to spread the cauliflower mash over the top.
Frequently asked questions
Absolutely. I often assemble the shepherd’s pie a day before I plan to serve it, then cover it tightly and refrigerate it. When you’re ready to eat, let it sit at room temperature for about 20 minutes while the oven preheats, then bake as directed.
Yes. Assemble the pie, let the filling cool completely, then wrap it tightly and freeze for up to 2 months. Thaw overnight in the fridge before baking, or bake from frozen, adding about 25 minutes to the cooking time.

What to serve with keto Shepherd’s pie
This shepherd’s pie is hearty enough to enjoy on its own, but if you’re feeding a crowd, here are a few of my favorite sides:

Keto Shepherd’s Pie
Video
Ingredients
- 1 1/2 tablespoons olive oil 22mL
- 2 cloves garlic minced
- 1 large onion chopped, 150g
- 1 1/2 pounds ground beef 680g
- 2 tablespoons almond flour 14g
- 1 cup canned tomatoes 240g
- 1 tablespoon Worcestershire sauce 15mL
- 1 bay leaf
- 1/2 cup beef broth 120mL
For the mashed cauliflower
- 1 medium cauliflower chopped, 700g florets
- 1/2 cup heavy cream 120mL
- 1/4 cup butter 55g
- 1/2 teaspoon salt
- 1/4 teaspoon pepper
- 1/2 cup shredded cheese optional, 50g
Instructions
- Heat oil in a large pan and place over medium heat. Once hot, add the onions and garlic and cook for a minute. Add the beef and cook until no longer pink.
- Turn the heat to medium-high and add the flour and mix in. Add the crushed tomatoes, Worcestershire sauce, and bay leaves, then the beef stock. Bring it to simmer, before reducing it to medium heat. Cook for 10-15 minutes, until thick and gravy-like.
- Transfer the filling into a 9 x 13-inch baking dish or a 9-inch cast iron skillet.
- Preheat the oven to 180C/350F.
- Steam your cauliflower in a pot until soft and tender. Drain and place in a food processor. Add the butter and blend until combined. Add the cream, salt, pepper, and shredded cheese and blend until smooth.
- Spread the cauliflower mixture on top of the pie. Bake for 20-25 minutes, or until deep golden brown and bubbling on the sides. Remove from the oven and sit for 5 minutes, before sprinkling with fresh thyme and serving.


















The meal was okay, but I felt the cauliflower potatoes didn’t quite do it justice. I think the dish would actually be better without them.
Hi Trevor- sorry to hear that. Was it not seasoned enough? Whenever I make this, most of my friends/family can’t tell it’s cauliflower.
I haven’t made yet but will. Do you need to drain the liquid of the canned tomatoes first? Also in the video here you show tomato paste along with other vegetables. Is the video of a different reciepe from this written one?
Hi Leta- You can, especially if your tomatoes have excess liquid. I find diced tomatoes to be quite even and the brands I use reflect that (Muir Glen). Our original recipe called for tomato paste, which I then retested and recommend just canned tomatoes. I’ll update the video to reflect it 🙂
I am an older female who has to watch my carbs and fats. Can you substitute the heavy cream for fat free half and half?
Hi Tirzah! Yes- that should be fine for this. As long as you don’t omit the butter, the topping will still be nice and creamy 🙂
Great recipe.. What can I say? I am on a low carb diet but my husband is not.. Then I found this recipe to make his favorite recipe and instead of mash potatoes, it reminded me to used mashed califlower. Very pleased with the resulting shepherd pie or cottage pie as it is known. Thank you
Excellent and easy. I didn’t even add the bay leaf or broth and I subbed the cream cheese for the butter as suggested. I also used rice cauliflower from the store so didn’t need to use a food processor etc. This is the kind of recipe that you cannot get wrong and the variations are endless (eg. I might add other veg to the meat base next time)
Amazing! So glad you found this one nice and easy Tania! Thanks for taking the time to share some feedback.
Great recipe, I added tomato paste in place of sauce and 1/2 tsp thyme.
I made this for supper tonight and it was sooooo good!!!
Nice! Thanks so much for sharing Melissa, so glad you liked it 🙂