When I was creating our Dairy-Free Target Guide, I was reminded how certain unsuspecting foods typically contain dairy, like meatballs. Most store-bought brands and recipes contain milk, cheese, and sometimes butter. But dairy isn’t necessary for making this meaty classic. Just whip up this delicious recipe for dairy-free Italian meatballs and you’ll see! They’re even baked in the oven for cleaner, no fuss cooking. And they’re a great budget option that freezes well.
Dairy-Free Italian Meatballs that are Fork Tender and Flavorful
I adapted these dairy-free Italian meatballs from a well-loved recipe by Chef John on Allrecipes.com. Chef John uses milk and parmesan, but I use broth instead, which adds more depth in flavor, while still giving these meatballs great moisture. I’ve made a few other adjustments to his recipe based on our personal tastes and preferred cooking techniques. And, I’ve added more options for the recipe and have some quick ingredient tips.
- Breadcrumbs: I actually use the “butts” of leftover sprouted breakfast bread, and it works out great. Whatever bread you have on hand, simply toast a couple slices, let cool, and grind them in your spice grinder or blender into coarse crumbs.
- Broth: You can use low sodium or regular broth. Obviously, regular adds a bit more flavor, but these are very flavorful meatballs. You can substitute chicken broth, another broth, or even your favorite unsweetened dairy-free milk beverage, if you want to be more traditional.
- Salt: We like this full amount of salt. But if you need lower sodium, you can reduce the added salt to 1 1/2 teaspoons. Just keep in mind that this will affect how flavorful your dairy-free Italian meatballs are. Some people like to substitute sweet Italian sausage for the pork. I haven’t tested this, but if you do, you might want to reduce the added salt. Sausage meat is typically pre-seasoned.
- Crushed Red Pepper: This adds a nice burst of spice, but this amount doesn’t make these dairy-free Italian meatballs spicy overall. That said, if serving to kids or other timid taste buds, feel free to omit the red pepper.
Special Diet Notes: Italian Meatballs
By ingredients, this recipe is dairy-free / non-dairy, optionally gluten-free, nut-free, peanut-free, and soy-free.
For egg-free dairy-free Italian meatballs, see our Egg Substitute Guide. I like aquafaba best for this recipe, and would use about 1/3 cup to substitute both eggs. Or you can make these Instant Pot Meatballs or Meatballs Marinara. Both are made without egg.
- ¾ cup dairy-free breadcrumbs (use gluten-free, if needed)
- ½ cup beef broth
- 1½ tablespoons olive oil
- 1 medium yellow onion, diced (1½ to 2 cups)
- ⅓ cup chopped fresh parsley or 1 tablespoon dried parsley
- 4 garlic cloves, minced or ½ teaspoon garlic powder
- 2 teaspoons salt
- 1 teaspoon black pepper
- 1 teaspoon Italian seasoning
- ½ teaspoon crushed red pepper
- 2 eggs, lightly beaten (see post above for egg-free options)
- 1 pound ground beef (I use 85/15)
- 1 pound ground pork
- Place the breadcrumbs in a large mixing bowl, and stir in the broth to coat. Let sit while you make the onions.
- Heat the oil in a medium skillet over medium heat. Add the onions and sauté for 5 minutes. Reduce the heat to low, and cook, stirring occasionally, for 15 minutes or more. The onion should become quite tender. Remove from the heat and let cool for 5 minutes.
- Add the onion, parsley, garlic, salt, pepper, Italian seasoning, and crushed pepper to your soaked bread crumbs, and stir to combine. Add the egg and stir to combine.
- Add the ground beef and ground pork, and stir or work with your hands, until the ingredients are evenly combined. Try not to over work the meat.
- Cover and refrigerate the meatball mix for at least 1 hour to let the flavors meld.
- Preheat your oven to 425 F and line one or two jelly roll pans (or other pans with high sides) with parchment paper.
- Shape the mixture into 1½ inch meatballs (about .9 to .95 ounces each). Place the meatballs on your prepared pans, about 1 to 2 inches apart.
- Bake the meatballs for 15 to 20 minutes, or until lightly browned and cooked through.
- You can simmer the meatballs in sauce or serve as is. Leftovers can be refrigerated for up to 2 days or frozen for longer storage.