Prep Time 20 minutes mins
Cook Time 25 minutes mins
Total Time 45 minutes mins
Don't overmix the meat – it's the biggest mistake that leads to tough meatballs. Use whole-milk ricotta for the best texture; part-skim will release too much water. To freeze uncooked meatballs, place them on a parchment-lined baking sheet, freeze solid, then transfer to a freezer bag. Cook from frozen, adding 10 minutes to the bake time. For dairy-free, use plant-based ricotta and parmesan. For gluten-free, use gluten-free panko. Reheat leftover meatballs gently in a skillet with a splash of water or extra sauce.