Why you’ll love it

Lasagna stuffed shells is a rich and comforting dish, perfect for the weekend, that’s loaded with all the flavours you expect from an epic lasagna but a little quicker to make.

This lasagna shells recipe doesn’t mess around. It’s not just a few pasta shells with a little bit of meat sauce drizzled over and some cheese; these shells are stuffed to the brim with a simple creamy and cheesy filling (in place of a classic bechamel) and then the entire thing is absolutely loaded with bolognese meat sauce. It’s flavour city and every mouthful has plenty of everything.

It starts with that meat sauce; it simmers slowly on the stove until it’s ultra-rich and tasty, while you get on with preparing the pasta and filling. That filling is just a simple mixture of spinach and three cheeses – ricotta, parmesan and mozzarella to give the perfect combination of creamy, flavoursome and gooey! It’s all topped off with more glorious cheese

A baking dish filled with baked lasagna stuffed shells.

Ingredients you’ll need

Ingredients for lasagna stuffed shells on a baking tray.

Jump to the recipe for full ingredients and instructions.

For the meat sauce

  • Beef mince: Beef mince (ground beef) is the perfect meat for this but you could use half beef and half pork mince (ground pork) and you could even turn this into a chicken or turkey version using those minces.
  • Onion, carrot, garlic: A brown onion and large carrot make up the veggie portion of the sauce. They both add flavour and a little sweetness too. Fresh garlic cloves give the best punch of flavour.
  • Tomato passata: Tomato passata as it’s known here in Australia is essentially tomato puree. Some parts of the world call it tomato sauce (not in Aus; in Aus, tomato sauce is ketchup – don’t use that). Passata is just pureed, totally smooth, tomatoes. Some have a little seasoning or herbs added.
  • Beef stock: You can swap the beef stock for chicken stock or vegetable stock but the flavour will change slightly. Beef stock adds a real heartiness to this.
  • Milk: Make sure to use whole milk / full cream milk. Reduced fat versions can split in the sauce.
  • Balsamic vinegar: A wonderful ingredient, balsamic vinegar adds sweetness and tang all at once plus a little extra something. I use this, in place of using red wine and reducing it down and I think the balsamic is where my heart lies now for a bolognese sauce.
  • Seasonings: A little sugar for balance, salt and pepper for seasoning and mixed italian herbs for flavour. It’s best to use mixed Italian herbs over Italian seasoning as the latter often has other ingredients like garlic, onion and salt added. You can just swap the herbs for a mix of dried oregano and dried basil.

For the filling and pasta

  • Giant pasta shells: It can’t be stuffed lasagna shells without lasagna shells, so grab a bag or box of giant pasta shells. You could also use cannelloni in their place.
  • Ricotta cheese: Use full fat ricotta cheese for the best flavour and texture.
  • Parmesan cheese: Parmesan adds deep umami flavour to the filling. Please don’t use the shelf-stable stuff. Instead, buy a block and finely grate it yourself. It goes a long way and the flavour is so worth it. You could use Pecorino cheese too.
  • Mozzarella cheese: Use fresh balls of mozzarella or block-style mozzarella and grate it yourself.

When you want a good melt, always start with a block of cheese and grate it yourself. Pre-shredded cheese often has a coating that can affect the way it melts. Block cheese is also more affordable. Win, win!

How to make stuffed shells

While lasagna stuffed shells aren’t really quick enough to make the entire dish on a weeknight, you can make it 2-3 days ahead, then just bake it when you’re ready. For this reason, it’s a great freezer dish too. Get the kids involved and make a double batch so that you can freeze one ready for later.

Jump to the recipe for full ingredients and instructions.

For the meat sauce

A collage showing how to make the meat sauce.
  1. The veg: Finely chop or shred your carrot and onions (I use my food processor) and mince the garlic, then add them all to some hot oil in a pan over medium-high heat. Cook them until they’re softened (photo 1) (about 4 minutes).
  2. The meat: Now add the meat and cook, breaking it up as it goes, until it’s browned all over (photo 2).
  3. The sauce: Finally, add all the sauce ingredients (photo 3) and give it a good mix (photo 4).
Showing how to thicken the pasta sauce.
  1. Bring it to a low simmer (photo 5), then cook it over very low heat so that it’s just simmering for about 40 minutes. Easy peasy! When it’s done it’ll be dark, thick and rich (photo 6).

Cook the pasta

Giant pasta shells in a saucepan of water.
  1. While the meat sauce is cooking, bring about 2 litres of salted water to a boil and add your pasta shells (photo 7). Cook them for just 8 minutes – no more. They shouldn’t be cooked through, they shouldn’t even be al-dente, they just need to be slightly softened. They’ll cook the rest of the way in the sauce later.

For the filling

A collage showing how to make the filling and stuff the shells.
  1. Spinach: Start by heating the spinach in the microwave just for a minute to wilt it, then roughly chop it up (photo 8).
  2. Cheeses: Add the ricotta, parmesan and mozzarella to the spinach and mix it all up (photo 9).
  3. Fill the shells: Fill the shells nice and full with the spinach ricotta mixture (photo 10).
  4. Start assembling: Pour a couple of spoonfuls of the meaty pasta sauce into the bottom of the baking dish, then arrange your filled jumbo shells over the top, cheese side up (photo 11).
The lasagna with cheese on top before baking.
  1. Spoon the rest of the sauce over the top, letting it seep down into any gaps (photo 12).
  2. Sprinkle more mozzarella and parmesan over the top (photo 13) and bake!

How long to bake stuffed shells

If you’re baking your spinach and ricotta stuffed shells immediately, then bake them for about 30-35 minutes until the cheese is turning golden and it’s all getting bubbly at the sides. If you’ve prepared your stuffed shells in advance, then bake it for about 50-55 minutes. Make sure to take it out of the fridge at least 20-30 minutes before baking though to lessen the risk of your baking dish cracking and cover with foil for the first 40 minutes.

Closeup of the meat sauce.


If you’re lucky enough to have leftover stuffed lasagna shells, cover with plastic wrap and store in the refrigeratore for 2-3 days.

Making it ahead

These ricotta cheese stuffed shells can be made ahead of time, right up until the point of baking then stored in the fridge for 2-3 days or in the freezer for up to 3 months.

If you know you’re going to make it ahead of baking, it’s a good idea to use a disposable foil tin, instead of a baking dish. The temperature change from the cold fridge to the hot oven can cause your dish to crack. Or make sure to take it out of the fridge 20-30 minutes before baking.

Thaw before baking, which may take 24 hours in the fridge. Cover with foil and bake for 40 minutes, then remove the foil and bake for a further 10-15 until the cheese is melted and turning golden.

A plate with lasagna shells.

Did you try this lasagna stuffed shells recipe?
Leaving a rating and comment below the recipe is so helpful!

Hungry for more? Subscribe to the newsletter for free recipes straight to your inbox. Also, follow along on Facebook, Pinterest and Instagram.

Baked lasagna shells on a scoop.
4.8 from 4 ratings
These lasagna stuffed shells, with a three-cheese filling and rich and hearty meat sauce, have all the flavour of lasagna stuffed into giant pasta shells.


  • 2 tablespoon extra-virgin olive oil notes
  • 1 medium onion
  • 1 large carrot
  • 3 cloves garlic, minced
  • 500 g beef mince (ground beef) (17 ½ oz) (notes)
  • 2 cups tomato passata (tomato purée), see notes (500ml)
  • 1 cup beef stock (beef broth)
  • ½ cup whole milk (125ml)
  • 1 tablespoon dried mixed herbs (notes)
  • 1 tablespoon balsamic vinegar
  • ½ teaspoon sugar
  • ½ teaspoon freshly ground black pepper
  • ½ teaspoon salt


  • 375 g ricotta cheese (1 ¾ cups / 13oz)
  • 150 g fresh baby spinach (5 ½oz)
  • 2 cups shredded fresh mozzarella cheese, lightly packed (300g / 10 ½ oz)
  • 1 cup finely shredded parmesan cheese, lightly packed (95g / 3 ½ oz)
  • 28-30 jumbo pasta shells

For best results, always weigh ingredients where a weight is provided



    Start by finely chopping the onion and grating the carrot. Or roughly chop them both and blitz them in your food processor until fine.
  • Heat the oil in a large frying pan or dutch oven over medium-high heat.
  • Add the onion, carrot and garlic and saute, stirring often for 3-4 minutes until the vegetables have softened.
  • Add the beef and cook stirring and breaking up the meat until there’s no more pink left.
  • Add the remaining meat sauce ingredients: First the tomato passata, then add the beef stock to the empty can/jar, give it a swirl and add that in too.Now add everything else – milk, herbs, balsamic vinegar, sugar, black pepper and salt.
  • Stir well to combine then bring to a low simmer and cover. Keep the heat on very low heat – just enough for a few bubbles to be popping up at once. Simmer like this for around 40 minutes, until the sauce has thickened and tastes rich. The meat should be tender.
    While the meat sauce cooks, bring a large pot of salted water to a boil.
  • Add the pasta shells and cook for 8 minutes – no more. You want them to be undercooked so they don’t fall apart, and they will cook the rest of the way as the lasagna shells bake.
  • Drain, rinse lightly with cold water and set aside.
    To a microwave-safe medium bowl, add the spinach. Cook in the microwave for 1 minute to wilt. Roughly chop and return to the bowl.
  • Add the ricotta, ½ of the mozzarella and ¾ of the parmesan. Mix well to combine.
    Preheat the oven to 180C (160C fan forced) / 350F.
  • Place a couple of good ladels full of the meat sauce into the base of a 9×13 inch casserole dish.
  • Fill each of the pasta shells with the ricotta filling and place them open side up into the dish. You can dot any remaining ricotta mixture around them.
  • Spoon over the remaining meat sauce so that it gets in and around all the shells and seeps into any gaps.
  • Top with the remaining 1 cup of mozzarella and ¼ cup of parmesan cheese. At this point, you can cover it with foil or plastic wrap and store in the fridge for 2-3 days (take it out 45 minutes before placing into the hot oven).
  • Bake for around 30 minutes if baking immediately or up to 40 minutes if from the fridge, until the inside is hot the cheese is golden and it’s blipping and bubbling at the sides.
  • Please take a moment to leave a comment & rating. It's appreciated and so helpful.


  1. Tablespoons: I use a standard Australian 20ml tablespoon (equal to 4 teaspoons). Check yours before measuring.
  2. Tomato passata: Passata is essentially just tomatoes pureed up and looks like a thick tomato sauce. It should have no other ingredients, except those that have some herbs or a little salt added. It is also known as tomato puree or tomato sauce in some places. That last one can be confusing because tomato sauce in some countries is ketchup. You don’t want that. Just pure tomatoes pureed up. Phew!
  3. Milk: Stick to whole milk, or half n half will work. Don’t use hilo or reduced fat milk as it’s likely just to split. While you can leave it out, the milk does a wonderful job of tenderising the meat and adds the slightest creaminess to the sauce.
  4. Balsamic: Try to stick to a standard balsamic vinegar. Caramelised balsamic or balsamic glaze are very concentrated and much sweeter. If it’s all you have on hand, you can use them but don’t add the extra sugar.
  5. Mozzarella / Parmesan: I like use fresh balls of mozzarella that are stored in whey. You can use block style but please always grate it yourself. Please by block parmesan too. Don’t buy pre-grated cheeses if you want them to melt nicely. Pre-grated/shredded cheeses have coatings to stop the shreds sticking together but these coatings can affect the texture when they melt.
  6. Nutrition details are approximate only – scroll below the recipe to find the full nutritional information.
Have you tried this recipe?Don’t forget to leave a rating and comment below and let me know how it was! I love hearing from you. Nutrition information is approximate and derived from an online calculator. The brands you use may cause variations.
Nutrition Facts
Lasagna Stuffed Shells
Amount Per Serving
Calories 565 Calories from Fat 297
% Daily Value*
Fat 33g51%
Saturated Fat 15g94%
Trans Fat 1g
Polyunsaturated Fat 1g
Monounsaturated Fat 13g
Cholesterol 101mg34%
Sodium 709mg31%
Potassium 836mg24%
Carbohydrates 34g11%
Fiber 3g13%
Sugar 7g8%
Protein 33g66%
Vitamin A 4112IU82%
Vitamin C 14mg17%
Calcium 474mg47%
Iron 4mg22%
* Percent Daily Values are based on a 2000 calorie diet.