A lighter take on the traditional potatoes au gratin, this zucchini gratin is low-carb, keto-friendly and gluten-free, yet still results in a super creamy and delicious comfort food. Thin slices of zucchini and sweet potato are drenched in a creamy white sauce, sprinkled with a Gruyere/Parmesan blend, then baked until bubbly.
I've been making this dish occasionally the past few months. It started around New Year's, when we wanted a side dish that felt a little special, a little more elevated, and this was it. Since then I've tinkered around with different variations and landed here, with a cheesy, zucchini dish that incorporates a little sweet potato and a cream sauce that you'll most likely want to include in many of your other favorite recipes, too.

Zucchini gratin is a dish that is easy to adapt to fit your diet needs- it is dairy optional and can be made without the sweet potato altogether if you're looking to lower the carb count. Note: There is only one small sweet potato in the entire dish and the estimated net carb count per serving is about 9g net carbs. Another substitute for the sweet potatoes is summer squash, but keep in mind that squash releases a lot of water when cooked, so I recommend sautéing the squash slices first, just until tender and the water evaporates.
This is an easy low-carb side dish that works well for hearty meals and special occasion dinners. It is:
- simple to make with only 15 minutes of prep time before baking
- creamy and flavorful, featuring an easy white sauce infused with aromatics
- gluten-free, low-carb and keto
- dairy optional and vegan-friendly (with modifications, see full recipe)
Let's make it!
This keto zucchini gratin comes together easily and you can make it as low-fuss or as fancy as you like. Layer the zucchini and sweet potato slices in a medium-sized baking dish (like an 8x8 square dish). Or for a prettier look, arrange the veggies in a circular pattern, overlapping, starting from the outside edge of a 9-inch pan (I actually use a pie pan) or cast iron skillet and working your way inward.
the ingredients
To make zucchini gratin, you will need:
- avocado oil, olive oil or butter
- small shallot, chopped
- minced garlic
- full-fat, unsweetened coconut cream or heavy whipping cream
- unsweetened macadamia milk
- nutritional yeast (don't skip- this gives the white sauce a cheesy flavor!)
- salt
- fresh thyme
- ground nutmeg
- medium zucchinis (I use 3-4)
- small sweet potato (choose one that is long and narrow, about the same diameter as your zucchinis)
- Gruyere or Swiss cheese*
- Parmesan cheese*
- crushed pork rinds (optional)
the process
Slicing the zucchini and sweet potato is probably the most involved step. I use a sharp knife to cut the zucchini and sweet potato into ⅛-inch slices (peel the potato first). Or use a mandoline slicer to help keep the slices uniform and speed up the process.
Here are the steps:
- Make the keto white sauce. In a small saucepan over medium heat, warm the butter or oil and then sauté the shallot. Add the garlic and cook for 30 seconds, then add the coconut cream (or heavy cream if not dairy-free), macadamia milk, nutritional yeast, salt and pinch of nutmeg. Heat for about 5 minutes but don't let it come to a boil.
- Arrange the vegetables. Place the zucchini and sweet potato slices in the baking dish, either layered or arranged in a circular, overlapping pattern. Pour the cream sauce over the veggies, then sprinkle the fresh thyme and cheeses on top (swap in vegan cheeses if dairy-free or omit the cheese altogether).
- Bake the zucchini gratin. Cover the dish with aluminum foil and bake at 425°F for 30 minutes. Remove the foil and continue baking for another 8-10 minutes or until the top is bubbly and golden brown. Let the gratin sit for 5-10 minutes, then top with crushed pork rinds (optional) and serve!
recipe notes
- The keto white sauce will be thick with the bits of garlic and shallot mixed in. For a smoother consistency, blend it for 1 minute before pouring it over the zucchini gratin.
- Gruyere cheese is preferred because of its creamy, nutty flavor and the way it melts into cheesy bliss. However, Swiss cheese is a good substitute if you don't have Gruyere on hand.
- For a dairy-free zucchini gratin, omit the cheeses and only sprinkle the pork rinds at the very end. Other topping options: this vegan parmesan cheese from Minimalist Baker, your favorite vegan mozzarella (make sure it's a variety that will melt as some do not) or toasted bread crumbs made with your favorite keto bread.
This easy low-carb zucchini gratin is on our menu for Easter this weekend! If you give it a try and love it too, please leave a star review in the recipe below! And I'd also love to hear if/how you adapted it to make it your own. Drop a comment below or feel free to tag me on Instagram! Enjoy.
more keto zucchini recipes you'll love...
- Zucchini noodle salad and spicy peanut sauce, a fresh zoodle salad with amazing flavors and textures!
- Keto zucchini fritters, an easy and tasty, low-carb side that works any time of the day!
- Keto zucchini bread. Please make this. It's a tender zucchini bread with warm spices and all the potential to be loved by even non-low-carbers. I promise, it's that good.
low-carb zucchini gratin {dairy optional}
A lighter take on traditional potatoes au gratin, this zucchini gratin is full of flavor and a creamy, comforting texture! It is low-carb, keto-friendly, gluten-free, and can be easily adapted for vegan and dairy-free eaters.
Ingredients
- 1 tablespoon olive oil, avocado oil or butter
- 1 small shallot, diced
- 4 cloves garlic, minced (about 2 teaspoons)
- 3-4 medium zucchini, sliced into ⅛-inch thick rounds
- 1 small sweet potato, peeled and sliced into ⅛-inch thick rounds (optional- see notes)
- ½ cup full-fat unsweetened coconut cream or heavy cream
- ¼ cup macadamia milk
- 3 tablespoons nutritional yeast
- 1 teaspoon salt
- ¼ teaspoon nutmeg
- ¼ teaspoon fresh thyme
- 1 cup Gruyere or Swiss cheese, grated
- ½ cup Parmesan, grated
- ⅓ cup crushed pork rinds (optional)
Instructions
- Preheat the oven to 425°F. In a small saucepan over medium heat, warm the butter or oil and then sauté the shallot. Cook for about 3-4 minutes or until it softens. Stir in the minced garlic and cook another 30 seconds.
- Pour in the coconut cream (or heavy cream if not dairy-free), macadamia milk, nutritional yeast, salt, and the nutmeg. Cook for about 5 minutes or until it is completely heated through (but do not let it come to a boil).
- Place the zucchini and sweet potato slices in the baking dish, either layered or arranged in a circular, overlapping pattern. Any way will do.
- Pour the white sauce evenly over the veggies and sprinkle the fresh thyme on top.
- Distribute the grated cheeses evenly over the top of the zucchini/sweet potatoes. (If dairy-free, omit the cheese altogether or see recipes notes for substitutions).
- Cover the zucchini gratin with aluminum foil and transfer the dish to the oven. Bake covered for 30 minutes. Remove the foil and continue baking another 8-10 minutes or so, until the top is bubbly and golden brown.
- Remove the zucchini gratin from the oven and let it sit for 5-10 minutes to cool before serving.
- Top with crushed pork rinds (optional) and serve.
Notes
Choose a sweet potato that is long and skinny, preferably about the same diameter as the zucchinis. To omit the sweet potato, simply substitute one extra zucchini.
The macadamia milk is used to neutralize the sweetness of coconut cream. If you're not dairy-free, you can use whole milk or a little extra heavy cream.
For a dairy-free or vegan zucchini gratin, a few cheese substitution ideas:
- vegan parmesan cheese like this one from Minimalist Baker
- vegan mozzarella (make sure it's a variety that will melt as some types don't)
- skip the cheese altogether and top with the crushed pork rinds or toasted bread crumbs made from your favorite keto bread
The keto white sauce will be thick with the bits of garlic and shallot mixed in. For a smoother consistency, blend it for 1 minute before pouring it over the zucchini gratin.
Gruyere cheese is preferred because of its creamy, nutty flavor and the way it melts into cheesy bliss. However, Swiss cheese is a good substitute if you don't have Gruyere on hand.
Nutrition Information:
Yield: 6 Serving Size: 1Amount Per Serving: Calories: 269Total Fat: 19gSaturated Fat: 10gTrans Fat: 0gCholesterol: 56mgSodium: 199mgCarbohydrates: 12gNet Carbohydrates: 9gFiber: 3gSugar: 5gProtein: 13g
This nutritional information is approximate and is provided for convenience as a courtesy.
Did you make this recipe? Let me know!