Vegan Meatballs

Last Updated on August 3, 2026 by Tanya

These Vegan Meatballs hold their shape, soak up sauce beautifully, and bring all the comfort of the classic dish without any meat. A hearty blend of lentils, mushrooms, and breadcrumbs bakes up deeply savoury, then simmers in rich tomato sauce over spaghetti for a meal that feels like a warm hug. Whether for a vegan household or sceptical guests, this is the dish that wins everyone over.

If you used to love spaghetti and meatballs pre-going vegan or just want to try a non-meat alternative these vegan meatballs will be your new go-to. They are packed with flavour, and are incredibly versatile. They can be served with pasta, in a sub sandwich, or just on their own as a protein-packed snack. I went through a lot of trial and error to get a vegan meatball that actually holds together and doesn’t fall apart in the sauce — the combination of lentils, mushrooms, and walnuts turned out to be the winning formula, giving that same dense, meaty bite people expect.

If you love a hearty, saucy comfort meal like this, you’ll also want to try my Vegan One Pot Lasagne — all the classic lasagne flavour, made in a single pot for easy weeknight cooking.

Ingredients

  • Brown Lentils– They are a fantastic source of plant-based protein and fibre, making them the perfect foundation for the meatballs. They also help to bind the meatballs together. 
  • Walnuts– These add a rich, nutty flavour and crunch. They provide healthy fats and contribute to the meaty texture.
  • Mushrooms– Mushrooms add depth and savoury richness to the meatballs. 
  • Flax ‘egg’– Flaxseed meal mixed with water create a “flax egg” acting as a binding agent in place of eggs. To make see notes under recipe.
  • Onions and garlic– Onions add sweetness when sautéed and fresh garlic adds a pungent, aromatic flavour to vegan meatballs. You can use minced or crushed garlic, depending on your preference.
  • Spices– Fennel, cumin, and smoked paprika are the perfect spice mix for these meatballs! Fennel has a hint of anise, adding a unique aromatic touch that mimics the flavour of traditional meatballs. Cumin adds a warm, earthy, flavour and smoked paprika adds the ‘smokiness’
  • Soy sauce– Soy sauce adds a salty, umami flavour that mimics the richness of traditional meatballs.

  • Panko breadcrumbs– These breadcrumbs are light, airy, and crunchy breadcrumbs that add texture and helps the meatballs hold their shape
  • Whole oats– Oats serve as another binding agent
  • Tomato paste– A large spoon of tomato paste can be added to the mixture to enhance the flavour

I made a simple tomato pasta sauce with fried onions, garlic and finely chopped tomatoes, and the added the meatballs to the sauce and served on spaghetti- Yum!

FAQs

Can I bake these instead of frying?

Yes — bake at 200°C (400°F) for around 20–25 minutes, flipping halfway, until golden and firm.

Why are my meatballs falling apart?

Make sure the mixture isn’t too wet before shaping — if needed, add a little extra panko breadcrumbs or oats to help it bind. Chilling the mixture for 15–20 minutes before rolling also helps them hold together better.

Can I make these gluten-free?

Yes — swap the panko breadcrumbs for gluten-free breadcrumbs and double check your soy sauce is a gluten-free variety like tamari.

How do I store leftover meatballs?

Store in an airtight container in the fridge for up to 4 days.

Can I freeze these meatballs?

Yes — freeze cooked meatballs (with or without sauce) for up to 3 months. Thaw overnight in the fridge before reheating.

Looking for other recipes like this? Try these:

A bowl of spaghetti topped with red tomato sauce and vegan meatballs, garnished with chopped green herbs. The dish is on a wooden table with a fork placed to the side of the bowl.

Vegan Meatballs

Print Pin
Course: Main Dishes
Prep Time: 10 minutes
Cook Time: 30 minutes
Total Time: 40 minutes
Servings: 4 servings

Ingredients

  • 1 tablespoon olive oil
  • 1 large onion, chopped
  • 4 garlic cloves, minced
  • 1 teaspoon salt
  • 1 teaspoon fennel seeds
  • 1 teaspoon cumin
  • 1 teaspoon smoked paprika
  • 400g brown mushrooms, sliced (2 small punnets)
  • 2 tablespoons soy sauce
  • 1 cup walnuts
  • 1 can brown lentils drained
  • 1 flax ‘egg’ (see notes)
  • ½ cup panko breadcrumbs
  • ½ cup whole oats
  • 1 tablespoons tomato paste

Instructions

  • Heat oil in pan over a medium heat. Add chopped onions and minced garlic. Saute for a few minutes until softened.
  • Add the salt, fennel seeds, cumin and smoked paprika to pan, stir.
  • Add sliced brown mushrooms and soy sauce. Stir and cook on a medium heat for around 8-10mins until mushrooms are soft.
  • In a food processor, add the onion/mushroom mixture, walnuts, brown lentils, flax ‘egg’ panko breadcrumbs, whole oats and tomato paste. Mix in blender just until a dough forms.
  • Take the meatballs mixture and form into 2inch balls.
  • Heat oil in pan and add around 8-10 balls as a time to pan. Shallow fry on medium heat, turning balls over as they are cooking. When golden brown on outside remove and keep aside until all balls are cooked.
  • Your meatballs are now ready to be used in any recipe you choose! For a simple tomato sauce saute chopped onions and minced garlic inpot, add 1-2 cans of chopped or diced tomatoes. Cook for around 10mins and then add meatballs as shown in video below.

Video

Tried this recipe?Mention @thecozyvegankitchen or tag #thecozyvegankitchen!

Notes

To make a flax ‘egg’: Add 1 tablespoons flaxseed meal and 2.5 tablespoons water to a small dish and stir. Let rest for 5 minutes to thicken. Can be used in recipes in place of 1 egg.