Fall comfort food doesn’t get much better than this. I love how butternut squash becomes sweet and tender when you roast it, making the perfect base for all kinds of good stuff. But I’ll be honest – I used to think stuffed squash was too much work for a weeknight dinner.
That changed when I realized I could prep most of this recipe ahead of time. While the squash roasts, I cook the bacon and wilt the spinach. Then it’s just a matter of mixing everything together with cheese and stuffing it back into those golden squash halves. The kids love anything with bacon and cheese, and I love that they’re getting their vegetables without complaining.
Want something hearty but not too heavy? This hits the spot every time. You can even make extra filling and use it for other meals during the week.

Why You’ll Love This Stuffed Butternut Squash
- Impressive presentation – This beautiful dish looks like something from a fancy restaurant but is totally doable at home, making it perfect for dinner parties or special occasions.
- Naturally low-carb and keto-friendly – The butternut squash serves as a nutritious vessel for the rich, cheesy filling, giving you all the comfort without the heavy carbs.
- Perfect balance of flavors – The sweet roasted squash pairs beautifully with salty bacon, creamy cheese, and fresh herbs for a combination that hits all the right notes.
- Make-ahead friendly – You can prep these ahead of time and just pop them in the oven when you’re ready to serve, making entertaining so much easier.
- Wholesome comfort food – This recipe gives you that cozy, satisfying feeling while still being packed with vegetables and good-for-you ingredients.
What Kind of Butternut Squash Should I Use?
For this stuffed recipe, you’ll want to pick medium-sized butternut squash that feel heavy for their size and have a nice tan color with no soft spots or green patches. The best ones will have a long neck and smaller bulb end, which gives you more room for stuffing and easier scooping. When you tap the squash, it should sound hollow, and the skin should be firm and matte rather than shiny. If you can only find larger squash, that’s totally fine – you’ll just have more delicious stuffing to work with, and any leftovers make great lunch the next day.

Options for Substitutions
This stuffed squash recipe is pretty adaptable, so here are some swaps you can make:
- Butternut squash: If you can’t find butternut squash, acorn squash or delicata squash work great too. Just adjust the cooking time since these varieties might cook a bit faster than butternut.
- Fresh spinach: Frozen spinach works perfectly here – just thaw it completely and squeeze out all the excess water before mixing. You’ll need about 10 oz of frozen to equal 6 oz fresh.
- Cream cheese: You can swap this with ricotta cheese for a lighter texture, or use Greek yogurt (thick, full-fat works best) for a healthier option. The filling might be slightly less creamy but still delicious.
- Parmesan cheese: Gruyere, sharp cheddar, or even goat cheese make tasty alternatives. Each will give the dish a different flavor profile, so pick what your family enjoys most.
- Bacon: For a lighter version, try turkey bacon or pancetta. Vegetarians can skip the meat entirely or add chopped walnuts or pine nuts for extra texture and richness.
- Fresh thyme: Dried thyme works fine – just use 1 tablespoon instead of 3. You can also try fresh sage or rosemary for a different herb flavor.
Watch Out for These Mistakes While Cooking
The biggest mistake when making stuffed butternut squash is not cooking the squash long enough before stuffing, which leaves you with hard, undercooked flesh that won’t blend well with the filling – roast the halves cut-side down for at least 45 minutes until they’re fork-tender.
Another common error is adding the spinach without properly wilting and draining it first, as excess moisture will make your filling watery and prevent the cheese from melting properly.
Don’t forget to scoop out enough flesh from the roasted squash to create a good well for stuffing, and be sure to mash some of that scooped flesh back into your filling mixture for extra flavor and creaminess.
Finally, cover the stuffed squash with foil during the final baking stage if the tops start browning too quickly, and let them rest for 5 minutes before serving so the filling can set up nicely.

What to Serve With Stuffed Butternut Squash?
This stuffed butternut squash is pretty hearty on its own, but I love serving it alongside a simple arugula salad with lemon vinaigrette to cut through all that creamy richness. A crusty dinner roll or some warm focaccia bread is perfect for soaking up any extra cheese and bacon goodness that might spill out. If you want to make it a bigger meal, roasted Brussels sprouts or green beans work really well since they complement the fall flavors without competing with the star of the show. For wine lovers, a crisp white wine like Chardonnay or even a light Pinot Noir pairs beautifully with the bacon and cheese combo.
Storage Instructions
Refrigerate: Your stuffed butternut squash keeps really well in the fridge for up to 4 days. Just cover the squash halves tightly with foil or plastic wrap, or transfer the filling to a separate container if you prefer. The flavors actually get even better after a day or two!
Freeze: These freeze great for busy weeknight dinners! Wrap each stuffed half individually in plastic wrap, then foil, and freeze for up to 3 months. You can also scoop out the filling and freeze it separately in portions if that works better for your family.
Reheat: To warm up your stuffed squash, cover with foil and bake at 350°F for about 20-25 minutes if refrigerated, or 45-60 minutes if frozen. You can also microwave individual portions on medium power, but the oven gives you that nice crispy top again.
| Preparation Time | 20-30 minutes |
| Cooking Time | 55-60 minutes |
| Total Time | 75-90 minutes |
| Level of Difficulty | Medium |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 1600-1800
- Protein: 50-60 g
- Fat: 120-130 g
- Carbohydrates: 70-80 g
Ingredients
For the squash:
- 2 medium butternut squash
- 2 tbsp olive oil
- 1/4 tsp salt
- Fresh ground black pepper
For the cheese and spinach filling:
- 1 tbsp olive oil
- 6 oz fresh spinach leaves
- 8 oz cream cheese
- 1 cup shredded parmesan cheese
- 3 strips cooked bacon, chopped
For finishing:
- 3 strips bacon, cooked and crumbled
- 3 tbsp fresh thyme leaves
- Ground black pepper for topping
Step 1: Prepare and Roast the Butternut Squash
- 2 medium butternut squash
- 2 tbsp olive oil
- 1/4 tsp salt
- fresh ground black pepper
Preheat your oven to 400°F.
Carefully slice each butternut squash in half lengthwise and scoop out the seeds and any fleshy strands.
Place the squash halves cut-side up on a baking sheet; drizzle and rub the cut sides with 2 tablespoons olive oil.
Season generously with 1/4 teaspoon salt and some freshly ground black pepper.
Turn the squash halves over onto the baking sheet, cut sides down.
(Lining the baking sheet with parchment paper makes for easy clean-up.) Roast in the oven for 40 minutes.
Step 2: Wilt the Spinach
- 1 tbsp olive oil
- 6 oz fresh spinach leaves
While the butternut squash is roasting, heat 1 tablespoon olive oil in a medium skillet over medium heat.
Add the fresh spinach leaves and cook for about 5 minutes, stirring occasionally, until the spinach is wilted.
If any liquid accumulates in the pan, drain it before proceeding.
Step 3: Make the Bacon-Cheese Filling
- 8 oz cream cheese
- 1 cup shredded Parmesan cheese
- cooked spinach from Step 2
- 3 strips cooked bacon, chopped
Place the cream cheese in a large, microwave-safe bowl and briefly soften it in the microwave—just until it’s mixable, not melted.
Add the wilted spinach from Step 2, 1 cup shredded Parmesan cheese, and half of the cooked, chopped bacon.
Mix everything together until well combined.
I like to reserve the other half of the bacon for topping the stuffed squash later for texture and flavor.
Step 4: Stuff the Butternut Squash
- bacon-cheese-spinach mixture from Step 3
- remaining 3 strips bacon, cooked and crumbled
After roasting, remove the squash from the oven and let cool slightly.
Carefully turn the squash halves cut-side up.
Using a spoon, scoop out most of the flesh, leaving about a 1-inch border along the sides to help the shells hold their shape.
Divide the bacon-cheese-spinach mixture from Step 3 among the four squash halves, stuffing and leveling the mixture.
Top each half with the reserved bacon pieces for extra crunch and flavor.
Step 5: Bake, Broil, and Finish
- ground black pepper for topping
- 3 tbsp fresh thyme leaves
Return the stuffed squash halves to the oven at 400°F and roast for another 15 minutes, until the cheese mixture is melted through.
Optionally, broil the stuffed squash for 3–5 minutes to create a golden crust on top.
Broil on the second rack from the top and watch closely, as every oven is different—I find 5 minutes is just right for some caramelized color.
When done, remove from the oven and immediately top with fresh thyme and a little extra ground black pepper for a fresh finish.

Irresistible Stuffed Butternut Squash with Spinach, Bacon, and Cheese
Ingredients
For the squash:
- 2 medium butternut squash
- 2 tbsp olive oil
- 1/4 tsp salt
- fresh ground black pepper
For the cheese and spinach filling:
- 1 tbsp olive oil
- 6 oz fresh spinach leaves
- 8 oz cream cheese
- 1 cup shredded Parmesan cheese
- 3 strips cooked bacon, chopped
For finishing:
- 3 strips bacon, cooked and crumbled
- 3 tbsp fresh thyme leaves
- ground black pepper for topping
Instructions
- Preheat your oven to 400°F. Carefully slice each butternut squash in half lengthwise and scoop out the seeds and any fleshy strands. Place the squash halves cut-side up on a baking sheet; drizzle and rub the cut sides with 2 tablespoons olive oil. Season generously with 1/4 teaspoon salt and some freshly ground black pepper. Turn the squash halves over onto the baking sheet, cut sides down. (Lining the baking sheet with parchment paper makes for easy clean-up.) Roast in the oven for 40 minutes.
- While the butternut squash is roasting, heat 1 tablespoon olive oil in a medium skillet over medium heat. Add the fresh spinach leaves and cook for about 5 minutes, stirring occasionally, until the spinach is wilted. If any liquid accumulates in the pan, drain it before proceeding.
- Place the cream cheese in a large, microwave-safe bowl and briefly soften it in the microwave—just until it's mixable, not melted. Add the wilted spinach from Step 2, 1 cup shredded Parmesan cheese, and half of the cooked, chopped bacon. Mix everything together until well combined. I like to reserve the other half of the bacon for topping the stuffed squash later for texture and flavor.
- After roasting, remove the squash from the oven and let cool slightly. Carefully turn the squash halves cut-side up. Using a spoon, scoop out most of the flesh, leaving about a 1-inch border along the sides to help the shells hold their shape. Divide the bacon-cheese-spinach mixture from Step 3 among the four squash halves, stuffing and leveling the mixture. Top each half with the reserved bacon pieces for extra crunch and flavor.
- Return the stuffed squash halves to the oven at 400°F and roast for another 15 minutes, until the cheese mixture is melted through. Optionally, broil the stuffed squash for 3–5 minutes to create a golden crust on top. Broil on the second rack from the top and watch closely, as every oven is different—I find 5 minutes is just right for some caramelized color. When done, remove from the oven and immediately top with fresh thyme and a little extra ground black pepper for a fresh finish.