I make this baked ziti roughly once a month, usually on a Sunday, and we eat it three more times before it’s gone. That’s the whole reason it exists in my rotation: it feeds eight the first night and it still tastes like dinner on Wednesday, which most pasta bakes absolutely do not.
The trick isn’t a secret ingredient. It’s more sauce than feels right and pasta that comes out of the pot too firm.
Prep time: 20 minutes | Cook time: 45 minutes | Total time: about 1 hour 15 minutes, plus 15 minutes resting | Serves: 8 generously (9×13 pan)
What You’ll Need
- 1 pound ziti (or penne, rigatoni, mostaccioli)
- 2 tablespoons olive oil
- 1 1/2 pounds ground beef, 85/15
- 1 medium yellow onion, diced
- 4 cloves garlic, minced
- 2 tablespoons tomato paste
- 1 teaspoon dried oregano
- 1/2 teaspoon crushed red pepper flakes (optional)
- 1 1/2 teaspoons kosher salt, plus more for the pasta water
- 1/2 teaspoon black pepper
- 48 ounces marinara sauce (two 24-ounce jars, or one jar plus a 28-ounce can of crushed tomatoes)
- 15 ounces whole-milk ricotta
- 1 large egg
- 1/2 cup grated Parmesan, divided
- 1/4 cup chopped fresh basil or flat-leaf parsley
- 16 ounces low-moisture mozzarella, shredded (about 4 cups), divided
Shred the mozzarella yourself if you have five spare minutes. Pre-shredded cheese is coated with starch so it doesn’t clump in the bag, and that same starch makes the top layer a little grainy and slower to melt. It still works. It’s just noticeably better off the block.
How I Make It
- Heat the oven to 375°F (190°C). Bring a large pot of water to a boil and salt it until it tastes like a good soup.
- Cook the ziti about 3 minutes short of the package’s al dente time. For most brands that’s 6 to 7 minutes. It should still snap a little when you bite it. Reserve 1 cup of the pasta water, then drain and leave the pasta in the colander.
- While the water heats, warm the olive oil in a large skillet or Dutch oven over medium-high. Add the ground beef and break it into chunks. Let it sit undisturbed for 2 to 3 minutes so it browns instead of steaming, then keep breaking it up until no pink remains and the meat reads 160°F on an instant-read thermometer.
- Add the onion and cook 4 minutes until softened. Stir in the garlic, tomato paste, oregano, red pepper flakes, salt, and pepper, and cook 1 minute more, until the tomato paste darkens slightly.
- Pour in all 48 ounces of sauce. Simmer 10 minutes, uncovered, stirring now and then. Taste and adjust the salt. If you drained a lot of fat, you may need more than you think.
- In a bowl, stir together the ricotta, egg, 1/4 cup of the Parmesan, the basil or parsley, and a pinch of salt.
- Combine the drained pasta with about two-thirds of the meat sauce in the big pot. It should look soupy. If it doesn’t, splash in some of the reserved pasta water. Stir in 1 1/2 cups of the shredded mozzarella.
- Spread a thin layer of the remaining sauce in a 9×13 pan. Add half the pasta. Dollop the ricotta mixture over it in tablespoon-sized spoonfuls, then add the rest of the pasta, the rest of the sauce, the remaining mozzarella, and the last of the Parmesan.
- Cover tightly with foil and bake 25 minutes. Uncover and bake another 15 to 20 minutes, until the edges bubble and the top is spotted brown. The center should read at least 165°F.
- Let it rest 15 minutes before cutting. It will hold its shape instead of sliding across the plate.
Why This One Doesn’t Dry Out
Baked pasta dries out for two reasons, and both happen before the pan goes in the oven.
The first is fully cooked pasta. Ziti keeps absorbing liquid in the oven and then keeps absorbing it in the fridge. If it was already al dente when it went in, by day two it’s chalky. Pulling it three minutes early leaves it room to drink.
The second is a correctly sauced pan. Forty-eight ounces of sauce for one pound of pasta looks like a mistake when you’re stirring it. It isn’t. That extra liquid is what you’re reheating with on Tuesday. A pan that looks perfect going into the oven will look dry coming out of the fridge.
The Ricotta, Dolloped Not Stirred
I spoon the ricotta mixture over the pasta in clumps instead of mixing it through. Stirred in, it disappears into the sauce and turns everything a dull pink. Dolloped, you get distinct creamy pockets that survive reheating.
The egg matters here. It sets the ricotta just enough that it holds together instead of weeping water into the pan. Skip it and you’ll find a thin puddle under the first slice.
Use whole-milk ricotta. Part-skim is looser and more watery, and cottage cheese, while a workable substitute, needs a quick blitz in the blender or it stays lumpy.
Swaps That Work
Half beef and half Italian sausage is my favorite version when I have both. A pound of sweet Italian sausage with a pound of beef makes the whole thing richer without any extra work, just squeeze the sausage out of its casings and brown it with the beef.
For a meatless pan, skip the beef and add a diced zucchini and 8 ounces of sliced mushrooms, cooked hard in the skillet until the water has evaporated and they’ve started to brown. Undercooked vegetables will release liquid in the oven and thin the sauce.
Skip fresh mozzarella entirely. It tastes wonderful and holds so much water that the top of the casserole goes soupy. Save it for pizza.
If you only have one 24-ounce jar of sauce, stretch it with a 28-ounce can of crushed tomatoes, an extra pinch of salt, and a half teaspoon of sugar. That’s closer to what I actually do most weeks anyway.
Assembling Ahead and Freezing
You can build the whole pan, cover it, and refrigerate it up to 24 hours before baking. Take it out while the oven heats and add 10 to 15 minutes to the covered baking time, since it starts cold.
For the freezer, assemble in a foil pan, wrap in plastic and then foil, and freeze up to 3 months unbaked. Thaw overnight in the refrigerator before baking, and expect it to need closer to 35 minutes covered. Baking straight from frozen works too, covered at 375°F (190°C) for about 75 minutes and then uncovered for 20, but the edges get noticeably darker.
Storing and Reheating
Refrigerate leftovers within two hours of baking, covered, and eat them within 3 to 4 days. Frozen baked portions keep about 3 months.
To reheat a whole pan from the fridge, cover it with foil and put it in a 350°F (175°C) oven for 30 to 40 minutes, until the center hits 165°F. For single servings, I put a slice in a bowl with a tablespoon of water or extra marinara spooned over the top, cover it, and microwave 2 to 3 minutes, stirring once. That spoonful of sauce is what stands between a good leftover and a sad one, so don’t skip it.

