This post may contain affiliate links. Please read my disclosure policy.
These Stuffed Pasta Shells with Ground Beef and Spinach are truly, the best stuffed shell recipe you’ll find. They’re packed with ground beef, nutty parmesan cheese, a little bit of spinach, and just enough creamy ricotta to hold the filling together. They’re served in an easy marinara sauce, covered with fresh mozzarella and baked. Classic comfort food!
Stuffed Pasta Shells with Ground Beef and Spinach
I have a true love for stuffed pastas. Specifically, stuffed pastas with meat. An odd statement coming from a gal that isn’t exactly a meat and potatoes kind of eater, but the proof is littered across this website.
Some favorites: Ravioli stuffed with all the makings of a hearty bolognese sauce. The most melt-in-your-mouth Cannelloni made with a trio of ground beef, veal, and chicken. And Stuffed Pasta Shells with Ground Beef and Spinach. Oh, and ricotta too.
This hearty take on a classic stuffed shells recipe has quickly shot up from obscurity to ranking amongst some of our most popular Italian recipes we’ve shared here. Here’s what’s happening:
Lean ground beef is tossed with spinach, parmesan, egg, and just enough creamy ricotta to bind the mixture into one smooth homogenous mixture. The addictive filling, is stuffed into large aldente pasta shells, nestled into a simple tomato sauce, and then studded with fresh mozzarella cheese and baked.
The end result is a hearty, yes surprisingly light Italian dish that’s sure to become a classic in your family as well.
Ingredients in Stuffed Shells with Ground Beef
The Shells
Ground beef. Typically the only time I like to use a high fat to meat ratio when it comes to ground beef is when I’m making burgers or meatballs. In recipes like these, where I’m combining the ground beef with other important ingredients, I like to use a lean ground beef. Here, we used a 90/10 ratio which worked perfectly. Of course, if all you have on hand is 80/20 or something similar, no worries, just make sure to drain the grease before assembling the filling.
Onion and garlic.
Spinach. You could use fresh or frozen spinach here. I went with frozen because about a half a cup of spinach, cooked down, is two to three bags of fresh spinach, so it just makes more sense to buy it in frozen form for this particular recipe. Make sure to defrost the spinach completely and then squeeze out any excess moisture there may be within the spinach leaves. There tends to be quite a bit.
Egg. Just like any meatball recipe or filling, you need an egg to bind everything together. It also adds a richness to the filling that I love.
Ricotta. For me, no stuffed shells recipe is complete without ricotta showing up in some fashion. Although contrary to most recipes where ricotta is the star, here, it’s just background player, adding a creamy, cheesy element to the ground beef.
Parmesan. A little bit of parmesan goes a long way in adding an extra cheesy, nutty element to the stuffed shells with ground beef. I like to use parmigiano regianno, but any aged parmean will work great.
Large shells. You can typically find large shells on the top shelf in the pasta isle. You won’t need a full box for this recipe, however, I recommend cooking up the whole box anyways, as this type of shell tends to break easily when it cooks.
Optional Marinara
Ok, so you’re going through the trouble of cooking the stuffed shells and making sure each one comes out perfectly aldente and in tact. You’re making a completely from-scratch filling. And then you’re then stuffing the shells one-by-one.
Is it really necessary to make your own marinara? The answer will vary from person to person. For me, yes, it’s something I like to do. But since the true glory of this stuffed shells recipe is well, in the stuffed shells with ground beef, using your favorite jarred marinara is more than okay with me. If you want to make your own quick marinara, here’s how I do it.
Ingredients
- olive oil
- garlic and onion
- red wine
- tomato paste
- water
- sugar, salt, and Italian seasoning
Instructions
- Heat olive oil over a medium-low heat. Add onion and garlic. Saute until soft, about 2 minutes.
- Add red wine. Bring to a boil and reduce to a simmer. Simmer until reduce by half.
- Whisk in tomato paste. Cook for one minute.
- Whisk in water, sugar, salt, and seasoning. Bring to a boil and reduce to a simmer. Simmer for about 10-15. Season to taste with salt and pepper.
How to cook Stuffed Shells with Ground Beef and Spinach
Make the marinara.
We talked about this before, so if you do decide to make your own easy marinara sauce, the beginning is where you want to start. Because it does need to simmer for 10-15 minutes, it’s best to make it first so everything finishes up around the same amount of time.
Make the filling.
- Heat a large skillet to a medium heat. Add beef. Brown until almost cooked through, drain any grease. Add the onion and garlic to the pan, and finish cooking the beef. Cook until onion and garlic are soft, about 4-5 minutes.
- Transfer the meat mixture to a bowl. Cool for a few minutes. Once the mixture has cooled, add egg, ricotta, spinach, parmesan, salt and pepper. Mix to combine.
Cook the pasta. Unlike most pasta, cooking shells can be kind of tricky. Here are my tricks:
- It is super important you don’t take it past an aldente state, or the shells will just flop and fall apart when you go to take them out and stuff them.
- Even though the recipe only makes 12 shells, I like to cook the whole box and then pick out only the best ones that made it through the boiling process.
- Instead of draining them all at once, use a slotted spoon to pull them out one by one and drain them on a paper towel.
- Lastly, let them cool off and dry out for a few minutes, they will be easier to stuff if they are cool and aren’t slippery from the pasta water.
Assemble
- Transfer filling to a large plastic baggie. Cut about an inch off of the tip. Pick up a shell and pipe the filling into it. Place in the skillet with the sauce. Repeat with remaining shells.
- Spoon a little bit of the sauce over the shells, you don’t want them completely covered.
- Sprinkle with fresh mozzarella.
- Bake until the cheese has melted, and the sauce is hot and bubbly, about 20 minutes.
Can I make these stuffed shells with ground beef ahead of time?
Yes! Make the sauce and stuff the shells. Cover with a lid and place in the fridge until you’re ready to bake. Let the shells sit about for about 10-15 minutes before baking (this can be done while the oven preheats) and then bake as instructed.
Are stuffed shells good the next day?
Yes! They are SO good the next day. I don’t recommend baking them again, as they could dry out. Spoon as much as you want on to a plate and cover with a damp paper towel. Microwave in 30-second increments until hot.
Do I have to use ground beef?
No! You can also use ground turkey, ground veal, even ground chicken.
Substitutions and Tips and Tricks for Recipe Success
- Swap out frozen spinach for fresh if that’s what you have. You’ll need about 1/2 pound.
- We love to use fresh mozzarella here, but you can also use block mozzarella, fontina, or any other cheese that melts well.
- Be sure you don’t overcook the large shells. They tend to break easily, so you really want to cook them just until aldente and then GENTLY pull them out one by one with a a slotted spoon,
- To make stuffing easier, let the shells cool and dry completely before stuffing them, otherwise they can get pretty slippery.
- If you are using store-bought marinara, we recommend this brand. It’s pricey, but tastes just like homemade!
Some of our other favorite Italian dishes
- These Crispy Sheet Pan Chicken Parmesan Tenders are a family favorite! They’re baked, so there’s no mess on the stove. Eat them as is, or serve with cooked pasta and tomato sauce.
- Our Italian list wouldn’t be complete without mentioned our famous Spaghetti and Meatballs. Thanks to Italian sausage and crushed saltine crackers, these meatballs, are truly the best.
- These Tender Ricotta Meatballs will literally melt in your mouth. They’re light, airy and SO delicious.
Pretty things/Tools we used in today’s Post
Stuffed Pasta Shells with Ground Beef and Spinach
Ingredients
- 2 tsp olive oil
- 1/2 cup diced onion, divided
- 4 large garlic cloves, minced and divided
- 1/2 cup red wine
- 6 oz tomato paste
- 12 oz water
- 1 tsp sugar
- 1 3/4 tsp kosher salt, divided
- 1/2 tsp italian seasoning
- 1 lb lean ground beef
- 1/2 cup whole milk ricotta
- 1/2 cup frozen spinach, thawed and squeeze of any excess moisture.
- 1 large egg
- 1/2 cup grated parmesan cheese, plus more for garnish
- 1 lb large shells
- 8 oz fresh mozzarella cheese, cut into cubes.
Equipment
- Mixing bowls
- Large skillet
Instructions
- Preheat oven to 375 degrees. Bring a large pot of water to a rolling boil. Season liberally with salt. It should be as salty as the sea.
- Heat a large skillet with high sides to a medium-low heat. Add olive oil. Once the oil is hot, add 1/4 cup of the onion and half of the garlic. Saute for 1-2 minutes until slightly softened and fragrant. Season with a little bit of salt and pepper. Add in red wine. Bring the mixture to a boil and then reduce to a simmer. Simmer until reduced by half.
- Whisk in tomato paste. Cook for 1 minute. Whisk in water, 1/2 teaspoon salt, sugar, and italian seasoning. Bring to a boil and reduce to a low simmer. Cover and simmer for 10-15 minutes. Season to taste with salt and pepper.
- In another medium non-stick skillet. Cook the ground beef until slightly browned and almost all the way cooked through. If any excess grease is produced, drain. Add remaining onion, garlic, and 1 teaspoon salt. Continue to cook until beef is cooked all the way through and onion and garlic are soft, about 3-4 minutes. Remove from heat and cool.
- Drop the pasta shells in the water and cook until aldente.(I like to cook them all even though we only use 12 becaue some will bread.) DO NOT OVER COOK. Use a slotted spoon to pull the shells out one by one. Drain of any excess water and let cool.
- Once the beef has cooled slightly, add remaining 1/4 teaspoon salt, spinach, ricotta, parmesan cheese, and egg. Mix to combine. Season to taste with salt and pepper. (I added an extra 1/4 teaspoon of salt, but I like things on the saltier side.)
- Transfer filling to a large ziplock bag. Cut off about 3/4-inch of the tip. Pipe the filling into the cooled shells. Turn the heat off on the sauce and arrange shells in the pan. (If you're using store-bought marinara, just pour the marinara into a skillet with high sides and arrange the stuffed shells in the pan.)
- Spoon a little bit of the sauce on top of the shells, but don't completely cover them. Sprinkle shells with mozzarella. Bake until cheese has melted and sauce is bubbly and hot, about 20 minutes. Garnish with extra parmesan cheese.
b says
We both loved this pasta dish!
Had to sub Italian sausage and added tube basil
to the stuffing. Used my own marinara sauce.
This was so wonderful!
LOVE, LOVE, LOVE
Susan says
Is it just me or is the temp to bake the shells on missing? Ouch…mine are ready to bake. I’ll have to guess
Nicole says
So sorry! It’s 375. Hope you liked them!
JoJo says
Nicole, thank you for sharing this recipe. Growing up on Long Island in an Italian family, I jumped at the opportunity to make a childhood favorite. We also used Italian sausage, sweet and hot. Made your sauce, added to a bit of homemade left over sauce. Excellent comfort food in scary Covid-19 times. Thank you for such a great reminder of Grandma’s Sunday dinners . Delicious
JoJo says
Nicole, thank you for sharing this recipe. Growing up on Long Island in an Italian family, I jumped at the opportunity to make a childhood favorite. We also used Italian sausage, sweet and hot. Made your sauce, added to a bit of homemade left over sauce. Excellent comfort food in scary Covid-19 times. Thank you for such a great reminder of Grandma’s Sunday dinners . Delicious , we will enjoy this dish again.
Nicole says
Love hearing this story! So glad you loved it! I’ll have to try it with Italian sausage.