Creamy Tomato Basil Meatballs (Printable)

Juicy meatballs in a velvety tomato basil cream sauce, pure Italian-American comfort on a plate.

# What You'll Need:

→ Meatballs

01 - 1 lb ground beef (or a blend of beef and pork)
02 - 1/2 cup breadcrumbs
03 - 1/4 cup grated Parmesan cheese
04 - 1 large egg
05 - 2 cloves garlic, minced
06 - 1/4 cup milk
07 - 1/2 tsp salt
08 - 1/4 tsp black pepper
09 - 2 tbsp fresh basil, finely chopped (or 1 tsp dried basil)

→ Creamy Tomato Basil Sauce

10 - 2 tbsp olive oil
11 - 1 small onion, finely chopped
12 - 3 cloves garlic, minced
13 - 1 can (14 oz) crushed tomatoes
14 - 1/2 cup heavy cream
15 - 1/2 cup chicken or vegetable broth
16 - 1 tsp sugar (optional, to balance acidity)
17 - 1/2 tsp salt, or to taste
18 - 1/4 tsp black pepper
19 - 1/3 cup fresh basil leaves, chopped
20 - 1/4 cup grated Parmesan cheese

→ For Serving

21 - Cooked pasta, rice, or crusty bread (optional)
22 - Extra fresh basil leaves for garnish

# Directions:

01 - In a large bowl, combine ground beef, breadcrumbs, Parmesan cheese, egg, minced garlic, milk, salt, black pepper, and chopped basil. Gently fold everything together until just evenly incorporated—avoid overmixing to keep the texture tender.
02 - Roll the mixture into golf ball–sized portions, yielding approximately 16 meatballs. Arrange them on a plate or sheet pan as you go.
03 - Heat olive oil in a large skillet over medium heat. Add the meatballs in a single layer and cook, turning frequently, until evenly browned on all sides, about 6 minutes. Transfer to a plate and set aside—they will finish cooking in the sauce.
04 - In the same skillet, add the chopped onion and sauté until softened and translucent, 3 to 4 minutes. Add the minced garlic and cook for 30 seconds until fragrant.
05 - Pour in the crushed tomatoes and broth. Season with salt, pepper, and sugar if using. Stir to combine and bring to a gentle simmer for 5 minutes, allowing the flavors to meld.
06 - Stir in the heavy cream and 1/4 cup Parmesan cheese until smoothly incorporated. Fold in the chopped basil, then return the browned meatballs to the skillet, nestling them into the sauce.
07 - Reduce heat to low and simmer uncovered for 15 to 20 minutes, gently turning the meatballs occasionally, until they are cooked through and the sauce has thickened to a creamy consistency.
08 - Taste the sauce and adjust seasoning as needed. Garnish with fresh basil leaves and serve over pasta, rice, or alongside crusty bread.

# Expert Tips:

01 -
  • The sauce comes together in one pan and tastes like it simmered all day, even though the whole thing takes under an hour.
  • These meatballs are practically foolproof and reheat beautifully, which means lunch the next day is something you actually look forward to.
02 -
  • Pulling the skillet off the heat before adding the cream prevents the sauce from breaking and turning grainy, a lesson I learned the hard way more than once.
  • The meatballs will look slightly underdone when you remove them from browning, but that is intentional because finishing them in the sauce keeps them incredibly moist and lets them soak up flavor.
03 -
  • Use a cookie scoop to portion the meatballs so they are all the same size and cook at the same rate.
  • The secret to a silky sauce is patience on low heat, never let it come to a hard boil once the cream goes in.