Beef and Ricotta Meatballs in Tomato Sauce

5 from 1 vote
Jump to Recipe

This post may contain affiliate links. Please read our disclosure policy.

Soft, melt-in-your-mouth beef and ricotta meatballs in a rich, flavourful tomato sauce. No browning needed; these meatballs go straight into the sauce raw and soak up all that delicious flavour as they cook. Perfect for a cosy Italian weekend meal!

An overhead shot of beef and ricotta meatballs in a stainless steel pan on a rustic wooden surface.
Save this recipe!
Get this sent to your inbox, plus get new recipes from us every week!
Checkboxes

Recipe overview

  • Flavour and texture: soft, tender meatballs in a rich tomato sauce.
  • Total time: 2 hours 20 minutes
  • Serves: 4-6 (around 25 meatballs)
  • Perfect for: a cosy family weekend meal

I am so excited to share this recipe because the meatballs are out-of-this-world delicious!

There’s a method of making meatballs that I’ve always wanted to try. Instead of browning the meatballs, they go straight into the sauce raw. I was curious to see if this would work because, in theory, browning adds flavour and stops the meatballs from falling apart.

I’ve also been on a mission to create the softest, most tender, melt-in-your-mouth meatballs and let me tell you, this recipe delivers!

Ricotta adds moisture and a creamy texture, which keeps the meatballs super soft. And cooking them straight in the sauce has been a revelation. They soak up all that delicious flavour as they simmer and taste incredible!

Most meatball recipes have a fairly short cooking time, but these simmer for 1.5 hours. After lots of testing, I found this timing gave the best flavour and the most amazing texture. Trust me, it’s well worth the extra time.

7 Cozy Italian Family Dinners
Cozy up with 7 comforting Italian dinners plus a bonus dessert all sent straight to your inbox.

Ingredient notes and substitutions

All the ingredients needed to make beef and ricotta meatballs on a rustic wooden surface. Ground beef, plum tomatoes, parsley, oregano, egg, garlic, white bread, milk, ricotta and parmigiano reggiano.

Pin this now to find it later

Pin It
  • Ground beef: use beef with a fat content of 12-15%. Fat adds both moisture and flavour, so don’t use lean beef here. You could also use a 50/50 mix of ground beef and pork for extra flavour.
  • Plum tomatoes: use a brand you know and love. My go-to is Mutti as it’s readily available and such good quality. You can also use crushed/chopped tomatoes such as Mutti Polpa.
  • Ricotta: make sure to use full-fat ricotta (remember fat equals flavour). Drain only the excess water in the tub; you don’t have to drain the ricotta itself before using.
  • Bread soaked in milk (panade): panade is simply bread soaked in liquid (usually milk). It’s another secret ingredient for adding moisture to meatballs. I squeeze out the excess milk before adding the bread because the ricotta already adds extra moisture here too.

Trust the longer cooking time (my testing notes)

I mentioned before that a lot of recipes have a shorter overall cooking time than mine, but there are a few reasons why I found 1.5 hours to be well worth it.

Firstly, you need this extra time for the tomato sauce to reduce and concentrate in flavour, and you can’t speed this up by turning up the heat or the meatballs will fall apart.

Secondly, I taste-tested the meatballs after 45 minutes and 1 hour, as they are cooked through at this point. They were nice, but they hadn’t absorbed all the flavour yet, and as I mentioned before, the sauce wasn’t nearly as concentrated in flavour.

After 1.5 hours of simmering (30 minutes covered and 1 hour uncovered), the flavour was incredible, and the meatballs were still super soft and delicious.

This recipe is designed for a lazy weekend when you have a little bit extra time to let it blip away on the stove, and trust me, it’s well worth it.

Top tips for making the best beef and ricotta meatballs

Simmer gently: it’s important to keep the meatballs on a gentle simmer, especially for the first 30 minutes when the meatballs are forming more structure. Don’t move them too much during this time; then use a spoon to gently turn them after 30 minutes.

Want to add garlic? If you’d like to add garlic to the meatballs themselves, simply add two cloves to the onions, sauté for 1-2 minutes, then split the mixture as directed in the recipe.

Adding different herbs and spices: you can easily add different herbs and spices to the meatballs mix to your own taste, such as fresh basil, chilli flakes or nutmeg.

Can they be prepped in advance?

Yes, you can either assemble the meatballs and keep them stored in the fridge raw for up to 2-3 days or make the entire dish and store it in the fridge for up to 3 days.

How do I know my meatballs are done?

The meatballs will be cooked through after 1 1/2 hours simmering on a medium heat, but if you want to double-check using a meat thermometer, they should have an internal temperature of 71C/160F.

A close up side shot of beef and ricotta meatballs in a tomato sauce in a pan.

Serving suggestions

I love serving these beef and ricotta meatballs as a main dish with sides such as roasted potatoes, green beans, broccolini or creamy polenta. If you’d like to serve them with pasta, I highly recommend making them half the size (about 1/2 tablespoon measure); this makes them easier to eat. Serve them with a short pasta shape such as rigatoni. See some of our favourite sides below!

If you’ve tried these Beef and Ricotta Meatballs or any other recipe on the blog then don’t forget to rate the recipe and let me know how you got on in the comments below, I love hearing from you! You can also follow us on Facebook, Instagram and Pinterest or sign up to our Newsletter to see more of our delicious food

Step By Step Photos Above

Most of our recipes come with step by step photos, helpful tips and tricks to make it perfectly first time and even video!

Beef and Ricotta Meatballs

5 from 1 vote

By Emily

Prep: 40 minutes
Cook: 1 hour 40 minutes
Total: 2 hours 20 minutes
Servings: 4 – 6 servings
Use the camera icon to toggle the step by step photos on and off. Soft, juicy and tender beef and ricotta meatballs simmered in a rich and delicious tomato sauce.

Equipment

  • Large deep pan with a lid (I used 11.5 inch/29cm)
  • Potato masher (or mash tomatoes with hands before adding)

Ingredients

  • 500 g (1.1 lb) ground beef (mince), (12%-15% fat)
  • 150 g ricotta (full-fat), (1/2 heaping cup or 5.3 oz)
  • 20 g (1/4 cup) Parmigiano Reggiano, finely grated, plus extra for serving
  • 1 onion, finely chopped
  • 1 teaspoon dried oregano
  • 1 small handful fresh parsley, finely chopped
  • 1 slice white bread, (about 40g)
  • 2 tablespoons milk
  • 1 large egg (or UK medium), lightly beaten

Sauce

  • 2x 400g (14oz) canned plum tomatoes, (800g/28oz total)
  • 1 onion, finely chopped
  • 1 garlic clove, finely chopped
  • 2-3 tablespoons olive oil
Save this recipe!
Get this sent to your inbox, plus get new recipes from us every week!
Checkboxes

Instructions 

  • Cut the crusts from the slice of white bread and tear it into pieces. Place it in a small bowl and pour the milk over it. Set aside.
  • Finely chop both onions. Heat 2-3 tablespoons of olive oil in a large, deep pan and sauté until soft but not browned. Remove half of the onion to a large mixing bowl.
    Two photos in a collage showing saute onion in a pan then half of it in a mixing bowl.
  • Add finely chopped garlic to the pan and sauté for 1-2 minutes, then add the plum tomatoes. Fill each can halfway with water and add it to the sauce. Use a potato masher to mash the plum tomatoes to a pulp. Add a good pinch of salt and pepper, then simmer gently while you make the meatballs.

To make the meatballs

  • Add the beef, ricotta, oregano, parsley and Parmigiano to the onion in the mixing bowl and mix until well combined. Add the lightly beaten egg, squeeze out the milk from the bread and crumble it into the mixture. Add a generous amount of salt and pepper, then mix until well combined.
    Two photos in a collage showing the before and after of mixing the meatball ingredients.
  • Using a tablespoon measure, form the mixture into meatballs; you should get around 25 meatballs in total.
    Two photos in a collage showing formed meatballs on a plate then in the sauce.
  • Place the meatballs in the sauce, then cover with a lid. Let them simmer gently for 30 minutes. Remove the lid and gently turn the meatballs over in the sauce using a spoon.
    Two photos in a collage showing turning the meatballs and them cooked in the sauce.
  • Simmer gently, uncovered, for another 1 hour until the sauce has reduced and thickened. Serve the meatballs topped with finely grated Parmigiano and your choice of sides.

Notes

  • Ricotta note: drain any excess water in the tub, but there’s no need to drain the ricotta itself before using.
  • Prep ahead: you can prep the meatballs and store them in the fridge raw for up to 2 days or make the whole dish in advance and store it in the fridge for up to 3 days. 
  • Freezing: you can prep the meatballs and freeze them raw (make sure to freeze them in an even layer first or they’ll stick together) or freeze the whole prepared dish for up to 2-3 months.
  • Reheating: reheat the meatballs on the stove. You may need to add a splash of water to loosen the sauce if it’s thickened. Simmer for 15-20 minutes until the meatballs are piping hot throughout.

Helpful Info for All Recipes

  • I always use extra virgin olive oil in all of my recipes unless stated otherwise
  • When I use canned or jarred tomatoes of any kind I always use Cirio or Mutti brands for the best results and flavour.
  • All vegetables are medium sized unless stated otherwise
  • All recipes are tested and developed using a fan (convection) oven
  • Find out more about how nutrition is calculated.
  • Check out our must have Italian Pantry Staples.
  • You can also find all our Essential Kitchen Tools for Italian Cooking.

Nutrition

Calories: 375kcal | Carbohydrates: 12g | Protein: 21g | Fat: 27g | Saturated Fat: 10g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 12g | Trans Fat: 1g | Cholesterol: 102mg | Sodium: 171mg | Potassium: 654mg | Fiber: 2g | Sugar: 6g | Vitamin A: 1316IU | Vitamin C: 21mg | Calcium: 154mg | Iron: 3mg

Nutrition information is automatically calculated, so should only be used as an approximation.

Did you try this recipe?Leave a comment below!
5 from 1 vote

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating




This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Comment

  1. Lina says:

    Love this recipe Emily! My Mamma always cooked her meatballs in the sauce and they were always so soft and delicious, never broke apart. My parents came from a small town in Calabria (Sersale, CZ), and this is how my Nonnas made them. The addition of ricotta is perfection! The only time she fried her meatballs was when she made polpette fritte di carne, which we couldn’t get enough of.

    Thanks for a lovely recipe!5 stars