I made these shells for my husband on a random Tuesday and he asked if we were celebrating something.
We weren’t. It was just dinner.
That’s the kind of reaction this recipe gets. It looks like a “special occasion” dish, but it’s honestly easier than most weeknight pasta you’re already making.
Stuffed pasta shells are giant pasta tubes filled with a creamy cheese mixture, smothered in sauce, and baked until bubbly. Think lasagna’s more fun cousin. 🍝
I’ve made this dish probably 40 times at this point (some weeks more than once, no shame). And I’ve picked up a few tricks that make it foolproof, even if you’ve never made stuffed pasta before in your life.
The filling is the real star here. It’s a mix of ricotta, mozzarella, parmesan, and garlic, with just enough spinach to make you feel slightly virtuous about it.
Bake it under a blanket of marinara and melted cheese, and you’ve got something that tastes like it took hours. It didn’t.
Let’s get into it.
What You’ll Need
Here’s everything you’ll want to have on hand before you start.
For the shells:
- 1 box (12 oz) jumbo pasta shells
- 1 tablespoon olive oil
For the filling:
- 15 oz ricotta cheese
- 2 cups shredded mozzarella, divided
- ½ cup grated parmesan
- 1 large egg
- 2 cups fresh spinach, chopped
- 2 garlic cloves, minced
- 1 teaspoon Italian seasoning
- ½ teaspoon salt
- ¼ teaspoon black pepper
- ¼ teaspoon nutmeg
For everything else:
- 24 oz marinara sauce (homemade or jarred)
- Fresh basil, for topping
- Extra parmesan, for topping
Tools You’ll Need
- Large pot for boiling
- 9×13 baking dish
- Mixing bowl
- Spoon or piping bag for filling shells
- Aluminum foil
Pro Tips Before You Start
These are the things I wish someone had told me the first time I made this.
1. Undercook the shells slightly.
Pull them off the boil about 2 minutes early. They’ll finish cooking in the oven, and this keeps them from turning mushy or ripping when you stuff them.
A fully cooked shell is fragile. Half the “my shells fell apart” complaints online come down to this one thing.
2. Use a piping bag (or a sandwich bag with the corner cut off).
A spoon works, but it’s messy and slow. Piping the filling in takes half the time and your kitchen stays cleaner.
3. Sauce the bottom of the dish first.
This isn’t optional. Shells without sauce underneath stick to the pan and dry out on the bottom. Always start with a sauce layer.
4. Don’t skip the foil.
Baking covered for the first 20 minutes keeps the shells from drying out. Uncover only at the end to get that golden, bubbly cheese top.
5. Let them rest for 5 minutes after baking.
I know it’s tempting to dig in immediately. But resting lets the filling set so it doesn’t ooze everywhere when you serve it.
Five minutes feels long when you’re hungry. It’s worth it every time.
How to Make Stuffed Pasta Shells
Step 1: Boil the shells.
Bring a large pot of salted water to a boil. Add the jumbo shells and cook 2 minutes less than the package instructions say. Drain and toss with olive oil so they don’t stick together.
Step 2: Make the filling.
In a mixing bowl, combine the ricotta, 1 cup of mozzarella, parmesan, egg, spinach, garlic, Italian seasoning, salt, pepper, and nutmeg. Stir until everything’s well mixed.
The nutmeg seems random, but trust it. It’s a tiny amount and it makes the ricotta taste rounder, not spiced.
Step 3: Prep your baking dish.
Spread about 1 cup of marinara across the bottom of your 9×13 dish. This is the step people skip and regret.
Step 4: Stuff the shells.
Fill each shell with about 2 tablespoons of the ricotta mixture. Place them in the dish, opening facing up, snug next to each other.
They don’t need much space between them. Snug shells hold their shape better while baking.
Step 5: Sauce and cheese.
Pour the remaining marinara over the shells. Sprinkle the rest of the mozzarella on top.
Step 6: Bake.
Cover with foil and bake at 375°F for 20 minutes. Remove the foil and bake another 10 minutes, until the cheese is melted and slightly golden.
Step 7: Rest, then serve.
Let the dish sit for 5 minutes. Top with fresh basil and extra parmesan before serving.
Substitutions and Variations
This recipe is pretty forgiving, so here’s how to make it your own.
| Swap This | For This | Why |
|---|---|---|
| Ricotta | Cottage cheese (blended smooth) | Lighter, slightly tangier filling |
| Spinach | Kale or swiss chard | Heartier greens, same effect |
| Ground beef or sausage | Add 1 lb, cooked | Makes it more filling |
| Marinara | Vodka sauce or alfredo | Totally different (delicious) vibe |
| Regular pasta shells | Gluten-free jumbo shells | Works the same, just more delicate when stuffing |
If you want it spicier, add a pinch of red pepper flakes to the filling. If you want it richer, mix a few tablespoons of mascarpone into the ricotta. Both are excellent.
I’ve also seen people swap in butternut squash puree for half the ricotta in the fall. It sounds odd, but it works surprisingly well with sage instead of basil on top.
Make Ahead Tips

You can assemble the entire dish up to 24 hours ahead.
Just cover it tightly and store it in the fridge unbaked. When you’re ready, pull it out and bake as directed, adding about 5 extra minutes since it’s starting cold.
You can also freeze it before baking. Wrap it well and it’ll keep for up to 3 months. Thaw overnight in the fridge before baking.
Leftovers and Storage
Leftover shells keep in the fridge for up to 4 days in an airtight container.
To reheat, cover with foil and bake at 350°F for about 15 minutes, or microwave individual portions for 1-2 minutes.
They also freeze beautifully after baking. Just thaw overnight and reheat the same way.
A Few Extra Details
Nutritional snapshot (per serving, makes about 6 servings):
Roughly 380 calories, 19g protein, 14g fat, and 36g carbs per serving. This will shift depending on the sauce and cheese amounts you use.
For a lighter version: Use part-skim mozzarella and low-fat ricotta. You’ll barely notice the difference.
Meal pairing ideas: A simple arugula salad with lemon vinaigrette cuts through the richness perfectly. Garlic bread is also never a bad call here.
Time-saving tip: Boil the shells the night before and store them in the fridge in a bit of olive oil. This turns a 45-minute recipe into a 20-minute one on a busy weeknight.
You can also make the filling a day ahead and keep it covered in the fridge. By the time you’re ready to cook, all that’s left is boiling, stuffing, and baking.
FAQ
Can I make this without spinach?
Yes, just leave it out. The filling will be slightly less green and slightly more rich, which isn’t a bad trade.
Why did my shells tear when I stuffed them?
They were probably overcooked. Pull them off the boil a couple minutes early next time, and handle them gently.
Can I use no-boil shells?
Jumbo shells don’t really come in a no-boil version like lasagna sheets do, so stick with boiling them first.
How many shells does one box make?
A standard 12 oz box has about 35-40 shells, though some will tear during boiling. This recipe uses about 20-24 stuffed shells.
Can I make this vegetarian?
It already is, as written. Just double check your marinara doesn’t contain meat (some do).
Why is my filling watery?
This usually happens if your ricotta is extra wet or your spinach wasn’t squeezed dry enough. Pat your spinach with a paper towel before mixing it in, and you’ll be fine.
Can I double this recipe?
Yes, just use two baking dishes instead of stacking everything into one. Stacked shells in a single dish won’t cook evenly.
Wrapping Up
This is one of those recipes that looks far more impressive than the effort it actually takes.
It’s the kind of dish you make once for a “just because” Tuesday, and then it quietly becomes your go-to for actual celebrations too.
Make it once and you’ll understand why it ends up on repeat in so many kitchens, mine included.
Try it this week and let me know how it turns out in the comments below. I’d love to hear what swaps you tried, what your family thought, and any questions you run into along the way.