This post may contain affiliate links. Please read our disclosure policy.
It’s been a mission of mine for a while to achieve perfectly delicious, moist, and simple classic Italian meatballs that are Whole30 compliant. I think I finally found the perfect combination and they are just to die for. Plus, talk about one that the whole family can enjoy, my kids LOVE these Perfect Whole30 Italian Meatballs just as much as we do. I serve mine over zoodles, spaghetti squash, or sauteed kale while I serve my kiddos with Jovial Brown rice pasta.
I also finish cooking mine in the sauce, which contributes to their tenderness…but if you are feeling lazy and want to bake them in the oven that is totally fine. I can’t promise you that they are as good as frying them in oil.. I mean, I think that is pretty obvious; however, they’ll still be delicious!
I also make my own sauce but I highly recommend Rao’s Homemade Marinara if you are opting for store bought on a busy weeknight. It’s the ONLY store bought marinara that is of homemade quality, in my opinion!
So go make these absolutely scrumptious Perfect Whole30 Italian Meatballs and sauce to comfort the bellies of your family and friends.
- 2 lbs. ground beef
- 2 eggs, whisked
- 1 tsp. kosher salt
- 1/2 tsp. black pepper
- 1/2 tsp. dried oregano
- 1 tbsp. freshly chopped parsley
- 2 cloves garlic, minced
- 1/2 cup almond flour
- 1 tbsp. cassava flour
- 2 tbsp. olive oil, for frying
- 2 tbsp. olive oil
- 1/4 yellow onion, finely diced
- 2 cloves garlic, minced
- 1/2 tsp. crushed red pepper flakes (optional)
- 1 tbsp. tomato paste
- salt and pepper, to taste
- 28 oz. whole, peeled tomatoes (preferably san marzano)
- 15 oz can tomato sauce
- 1 tsp. dried oregano
- 1/4 cup freshly chopped parsley
- 2 large basil leaves, chiffonade
- 1/4 cup beef broth
- Heat 2 tbsp. olive oil in a pot over medium heat. Add onions, garlic, crushed red pepper and season with a little salt and pepper. Saute until onions are tender, about 5 minutes.
- Add the tomato paste and saute 1-2 more minutes.
- Add the whole peeled tomatoes and using a wooden spoon break up the whole tomatoes by mashing them up. They will continue to fall apart while cooking so they don't have to be perfect. Just break them up as well as you can.
- Add in the tomato sauce, oregano, parsley, basil, beef broth and a little more salt and pepper.
- Once the sauce reaches a boil, reduce it to a slight simmer and let cook.
- Meanwhile, cook the meatballs (method below) and once the meatballs are browned, add them to the sauce (with the excess oil from the frying pan or baking sheet for extra flavor) and simmer, uncovered for 15-20 minutes with the meatballs in the sauce.
- In a large bowl, combine all of the meatball ingredients EXCEPT for the olive oil. Using your hands, mix the meat until it is well combined.
- Scoop out 2 tbsp. of meat and roll into meatballs. Set aside on parchment paper and continue to roll meatballs until all are done.
- Heat a large skillet over medium high heat. Set meatballs in the skillet (you may need to do this in 2 batches depending on the size of your skillet, don't overcrowd the pan) and fry meatballs on 2 sides until golden brown, about 3-4 minutes per side. The meatballs don't have to be cooked through, they will continue to cook in the sauce.
- Add browned meatballs to the sauce and let simmer until fully cooked through, another 15-20 minutes.
- You can bake the meatballs on a parchment paper lined baking sheet for 20 minutes at 375 degrees F. They should be almost, but not completely cooked through. Add meatballs to the sauce (and any fat in the baking sheet) and let simmer for 20 minutes, or until cooked through and tender.