Go Back

Best Veggie Meatballs (Vegan, Gluten-Free & Easy)

a plate full of vegan meatballs: Meet your new favorite vegan meatballs — crispy on the outside, tender inside, and full of that cozy Italian-herb flavor that makes the whole kitchen smell like Sunday at Nonna’s. These bean-based, plant-powered meatballs come together in under 30 minutes, with pantry ingredients you probably already have. No fancy meat substitutes needed — just real food, big flavor, and that irresistible “I can’t believe these are meatless” bite.
Meet your new favorite vegan meatballs — crispy on the outside, tender inside, and full of that cozy Italian-herb flavor that makes the whole kitchen smell like Sunday at Nonna’s.
These bean-based, plant-powered meatballs come together in under 30 minutes, with pantry ingredients you probably already have. No fancy meat substitutes needed — just real food, big flavor, and that irresistible “I can’t believe these are meatless” bite.
Munchyesta.com
Prep Time 10 minutes
Cook Time 20 minutes
Serving Size 4 people (20 meatballs)

Ingredients

  • 1 can pinto beans or black beans - drained and rinsed
  • 1 can cannellini beans or butter beans - drained and rinsed
  • 1 teaspoon salt
  • ⅔ cup quick oats - use gluten-free oats if needed
  • 2 tablespoons almond flour - or sub oat flour
  • 3 cloves garlic - minced (or ½ teaspoon garlic powder)
  • ½ cup chopped onion
  • 2-3 teaspoons Italian seasoning
  • ¾ teaspoon fennel seed - crushed (optional but adds great flavor)
  • ½ teaspoon crushed red pepper flakes
  • 2 tablespoons vegetable oil - for pan-frying; skip if baking

Instructions

  • Preheat the oven to 350°F (175°C) if baking. Line a baking tray with parchment paper.
(If pan-frying, preheat a non-stick skillet with oil over medium heat.)
  • Prepare the mixture:
In a food processor, combine all ingredients. Pulse until well-blended but still slightly textured — don’t over-process. The mix should hold together when rolled.
  • Shape the meatballs:
Scoop about a tablespoon of the mixture and roll into balls. Small meatballs cook more evenly and get crispier edges.

Cook:

  • To bake: Place meatballs on the lined tray. Bake 10 minutes, flip, then bake another 10 minutes or until golden and firm.
  • To pan-fry: Add to the hot skillet and cook for 5–7 minutes, turning to brown all sides until crisp and heated through.
  • Serve & enjoy:
Serve with pasta and marinara, in a meatball sub, over grain bowls, or as party appetizers.

Notes

Pro Tips
  • For the perfect texture: Stop blending before the mix turns into a paste. You want a little bean texture left for that “meaty” bite.
  • If mixture feels too wet: Add an extra tablespoon of oats or almond flour.
  • If it’s dry or crumbly: Add a drizzle of olive oil or a splash of tomato sauce.
  • Chill before cooking: 15–20 minutes in the fridge helps them firm up and hold shape beautifully.
  • Batch prep: These freeze like a dream! Make a double batch and stash them for quick dinners.
Serving Suggestions
  • Toss with spaghetti and marinara sauce for classic comfort food.
  • Layer in a vegan meatball sub with melted vegan cheese.
  • Pair with BBQ sauce or sweet chili glaze for appetizers.
  • Add to grain bowls or salads for extra protein.
  • Serve Swedish-style with gravy and mashed potatoes.
Variations
  • Mexican-Inspired: Add cumin, chili powder, and lime zest; serve with avocado crema.
  • Asian-Style: Mix in soy sauce, garlic, and sesame oil; serve with teriyaki glaze.
  • Mediterranean: Add chopped spinach, lemon zest, and oregano; drizzle with tahini.
  • High-Protein: Swap half the beans for firm tofu or add hemp seeds.
Storage & Meal Prep
  • Refrigerate: Up to 5 days in an airtight container.
  • Freeze: Up to 3 months, cooked or uncooked.
  • Reheat: Bake or air fry until hot and crisp again (about 10 minutes).
Pro Tip: Freeze cooked meatballs in portions for quick weeknight meals or lunch bowls.