Ricotta Meatballs with Tomato Butter Sauce


Valentine’s Day dinner for me always has to involve pasta and is there anything more romantic and sexy than a plate of pasta with giant juicy meatballs, a velvety red sauce, and a shower of parmesan?! This might just be my all-time favorite pasta comfort meal. The meatballs use ricotta cheese to create an ultra-light and tender meatball that gets slathered with the best tomato sauce there ever was – Marcella Hazan’s famous tomato butter sauce. And to keep it easy, the meatballs get baked in the oven for a fuss-free meatball making experience! 

P.S. Use the rest of that ricotta to make Ricotta Tiramisu for Two and you’ve got yourself a night to remember. Also, I like to just serve a very simple green salad with lots of herbs to go with.

Note: this recipe has three components, so it’s best to do it with a partner or prep some items ahead (like making the sauce or forming the meatballs).

(Meatballs inspired by Alison Roman and sauce by Marcella Hazan)

Ingredient highlight

Canned tomatoes! While we often think that the freshest produce is the most nutritious, think again! Canned tomatoes actually have a much higher concentration of nutrients like calcium, iron, and lycopene (the superstar antioxidant found in tomatoes).

PRO TIP: whole peeled canned tomatoes are the least processed and purest form of canned tomatoes. They’re all I use when I make tomato sauce. Diced tomatoes have calcium chloride added to them so that the chunks don’t break down, adding a flavor and texture that I find unpleasant!

(See video for more canned tomato tips!)

Servings 4
Prep Time 20 minutes
Cook Time 40 minutes


For the sauce and pasta:

  • 1 (28 oz) can whole peeled tomatoes*
  • 5 tbsp butter
  • 1 yellow onion, quartered (leave root in tact), divided
  • Kosher salt, to taste
  • 8-12 oz orzo**

For the meatballs:

  • ½ cup whole milk ricotta cheese
  • cup rolled oats, coarsely ground***
  • ¼ cup grated parmesan cheese, plus more for topping
  • ½-1 cup parsley, finely chopped, plus more for topping
  • 1 large egg
  • 2 garlic cloves, grated or finely chopped
  • ¼ yellow onion, finely chopped (leftover from sauce above)
  • 1 tsp kosher salt, divided
  • 1 lb grass-fed ground beef (or use a mix of beef and pork)
  • ½ tsp black pepper
  • ½ tsp red pepper flakes (optional, for spice)
  • 2 tbsp olive oil
  • *Get high quality san Marzano if you can, these are the BEST. I save these tomatoes for recipes like this one where the tomatoes really shine.
  • **Use any pasta shape or serve this over polenta, gnocchi, or even simply roasted potatoes! The meatballs and sauce are filling, so I find that I don’t need as much pasta (hence the 8-12 oz range)
  • ***To grind your oats, add them to a high-speed blender and blend until a coarse flour forms.
  • Add veg! ~ Serve this with a simple green salad or a side of sauteed or roasted broccolini. You COULD add some roasted veggies or cooked greens to your bowl if you want to, but I prefer this just as is.
  • Note: ~ this recipe has three components, so it’s best to do it with a partner or prep some items ahead (like making the sauce or forming the meatballs).


  • Preheat the oven to 425F convection. If you don’t have convection, preheat it to 450F. Line a baking sheet with parchment paper.
  • To make the sauce, in a medium pot, add the tomatoes and break them up using your hands or scissors (be careful of splatter). Add the butter, 3 quarters of the onion (save the remaining ¼ for the meatballs), and a generous pinch of salt (about ½ teaspoon).
  • Bring to a rapid simmer over medium-high heat, then reduce it to low to maintain a gentle simmer. Cook, uncovered, for 30-40 minutes, or until the sauce has reduced, stirring occasionally. Remove the onion pieces. Taste and season with more salt, if needed. Transfer to a high speed blender and blend until smooth, making sure to keep the lid vented. The sauce will become creamy and delicious. Pour back into the pot.
  • To make the meatballs, in a medium bowl, add the ricotta, ground oats, parmesan, parsley, egg, garlic, remaining ¼ onion and ½ teaspoon salt and mix together with a spoon. Let sit for 5-10 minutes to hydrate the oats.
  • Add the meat, remaining ½ teaspoon salt, pepper, and chili flakes (if using). Use your hands to thoroughly mix together. Form into about 10-12 large meatballs (bigger than a golf ball!).
  • Add 2 tablespoons of oil to the baking sheet. And spread it around. Add the meatballs to the baking sheet and roll each one in the oil to coat it completely. Arrange them evenly on the baking sheet, then bake for 15-20 minutes or until they are deeply browned on the bottoms. Add the meatballs to the pot with the sauce to keep warm.
  • Meanwhile, cook the pasta (or other starchy base) according to the package instructions. Drain and set aside.
  • Serve the meatballs over pasta (or other starch). Spoon the sauce over the meatballs and pasta. Top with parmesan, black pepper, and parsley (if using)

Items you can prep ahead (optional)

  • Grind up (coarsely) ⅓ cup rolled oats
  • Grate ¼ cup parmesan cheese, plus more for topping 
  • Finely chop ½-1 cup parsley, plus more for topping 
  • Grate or finely chop 2 cloves garlic 
  • Finely chop ¼ yellow onion (keep the rest whole to use for the sauce) 
  • Mix and form the meatballs
  • Make the tomato butter sauce


  • To make gluten-free, use a gluten-free pasta or serve over roasted potatoes.
  • This recipe simply cannot be made vegan or dairy-free. For a vegan option, try these Beetballs (use a flax egg). For a dairy-free option, make these meatballs (skip the parmesan and add an extra ¼ teaspoon salt).
  • You can use whole milk cottage cheese in place of ricotta.
  • You could substitute beef with ground pork (a mix of beef and pork is actually the best IMO), chicken, or turkey. Just note that chicken and turkey have a lot less fat, so they might be a little dry compared to using beef or pork. 
  • Sub panko bread crumbs for the rolled oats


  • Store leftovers in an airtight container in the fridge or freezer:
    • Meatballs: up to 4 days in the fridge or 2 months in the freezer
    • Sauce: up to 6 days in the fridge or 2 months in the freezer

Leftovers + Repurposing:

  • Warm up leftover pasta, meatballs, and sauce until warmed through. It helps to cut the meatballs in half or into smaller pieces so they reheat faster and more evenly. Best practice is to reheat the components separately and then assemble, but that takes more time and dishes!
  • If the sauce has thickened or you want to just stretch it a bit, stir in a splash of water once it’s heated up.
  • Add leftover meatballs to simple salads or bowls or simply eat them as a high-protein snack. 
  • Make a meatball sandwich or quesadilla!

This Content is for Cooking Club Members

If you have an account but your membership expired; please get a new one Click here to sign in.