These Vegan Swedish Meatballs have the perfect meatball texture, and they’re coated in a rich, creamy sauce just like the original. A cozy comfort food dinner made without dairy and meat!

Vegan Swedish meatballs in skillet with wooden spoon

When it comes to comfort food, meatballs and creamy sauces both rank at the top of the list. So when you combine them in one dish? Magic happens! It’s easy to see why Swedish meatballs are so popular—and if visits to IKEA have you feeling left out, now you can make your own vegan Swedish meatballs right at home!

This recipe starts with my cauliflower quinoa meatball recipe, which yields that perfect meatball texture—slightly crispy on the outside and tender on the inside. Then there’s the sauce, which is like a fairy tale. You make a roux with flour and vegan butter, then add in vegetable broth, soy sauce, garlic powder, mustard, coconut milk, and seasonings. It’s rich and creamy, all without the usual dairy.

Serve your vegan Swedish meatballs over pasta, with rice or farro, or just grab a fork and dig in!

(PS – If you love meatballs as much as I do, be sure to save my Vegan Cranberry Meatballs and Vegan Spaghetti and Meatballs too!)

Notes on Ingredients

Please note that this is important information on the ingredients and instructions and the FULL recipe with amounts and details can be found DOWN BELOW (scroll to it) in the recipe card.

For the Vegan Meatballs:

  • Roasted cauliflower
  • Cooked quinoa – Here’s how to cook quinoa.
  • Bob’s Red Mill Egg Replacer or flax eggs – Here’s how to make flax eggs.
  • Red onion
  • Ground black pepper
  • Sea salt
  • Garlic 
  • Breadcrumbs – Use gluten-free breadcrumbs if needed.
  • Coconut oil

For the Swedish Meatball Sauce:

  • Vegan butter – Use store-bought or make your own vegan butter.
  • Flour
  • Vegetable broth – Here’s how to make your own vegetable broth.
  • Coconut milk – Make sure you use canned coconut milk, not the refrigerated kind sold in big cartons!
  • Garlic powder
  • Light soy sauce or liquid aminos
  • Dijon mustard
  • Ground black pepper
  • Fresh parsley
  • Salt
Vegan meatballs in a bowl with sauce and other ingredients around it

How to Make Swedish Meatballs

If you want to get a head start on this recipe, you can make the meatballs a day or two in advance, then warm them up in the sauce.

Make the Meatballs:

Roast the cauliflower. Preheat your oven to 450°F/230°C. Place the cauliflower florets on a sheet pan and drizzle them with olive oil. Roast for 15 to 20 minutes, then let the cauliflower cool a bit.

Rice the cauliflower. Add the roasted cauliflower to a food processor and pulse until it’s completely riced. You should have 1 cup of riced cauliflower.

Make the meatball mixture. Add a cup of the cauliflower to all of the remaining meatball ingredients except the coconut oil. You can pulse them in the food processor or mix them together until the mixture can be formed into a tight ball. 

Cook the meatballs. Heat the coconut oil in a large skillet set over medium-high heat. While it’s heating, scoop a tablespoon of the meatball mixture and form it into a ball with your hands. Place it in the skillet and repeat with the remaining meatball mixture. Roll the meatballs as they cook until all of the sides are lightly browned; this should take 4 to 5 minutes. Transfer the cooked meatballs to a plate.

Make the sauce:

Make the roux. In a pan set over medium heat, melt the vegan butter. Whisk in the flour and continue to whisk until the butter and flour form a smooth roux, without any lumps. Let the roux cook for about 2 minutes.

Finish the sauce. Slowly whisk in the vegetable broth, followed by the coconut milk. Add the garlic powder, soy sauce, mustard, black pepper, and 1 tablespoon of the parsley. Whisk and add salt to taste.

Add the meatballs. Remove the sauce from the heat and add the cooked meatballs, slowly turning the pan to coat the meatballs in the sauce. Garnish with parsley and serve.

Tips for Success

Here’s my best advice for perfect vegan Swedish meatballs:

  • Adjusting the sauce. I like a thick sauce here, but if you want to thin it out a bit, add up to 1/2 cup of additional broth, adjusting the seasonings as needed.
  • Don’t skip the mustard! Even if you’re not a mustard fan, don’t worry—it doesn’t give the sauce a mustard-y flavour. Instead, it helps neutralise the flavour of the coconut milk. 
  • Add more soy sauce if needed. I started with 1 tablespoon, then ended up adding an extra 1/2 tablespoon of light soy sauce and I felt like it really enhanced the flavour. So start with 1 tablespoon, and add more if you think you need it. Also, if you don’t use light soy sauce or liquid aminos, note that the sauce will be saltier, so adjust accordingly!
Vegan Swedish meatballs in skillet with wooden spoon, garnished with parsley

How Do You Keep Vegan Meatballs From Falling Apart?

Here’s my #1 tip for why your vegan meatballs are falling apart if you’re making my recipe: you’re not grinding them enough. 

You want a cohesive dough; it shouldn’t be falling apart when you try to form the meatballs and you shouldn’t see bits of quinoa and cauliflower in the mixture. Pulse it in your food processor until it’s very well-combined.

Also, if you decide to substitute any ingredients—like using store-bought riced cauliflower instead of making it yourself—be sure that you get any excess liquid out before adding it. Extra liquid will make vegan meatballs fall apart. 

Finally, I like to squeeze each meatball together properly before adding them to the pan, like you would with regular meatballs. 

How Do You Eat Swedish Meatballs?

Here are some of my favourite ways to enjoy these vegan Swedish meatballs:

  • Add them to a hoagie for a Swedish meatball sandwich.
  • Serve them over cauliflower rice, quinoa, or other grain.
  • Make them a party appetizer by serving them on toothpicks.
  • Ladle them over mashed potatoes or pasta.

How to Store and Reheat Leftovers

If you have leftover vegan Swedish meatballs, you can store them in an airtight container in the refrigerator for 3 to 4 days. Note that the meatballs will soften as they sit in the sauce, so the texture of the dish will change. Reheat the meatballs in a skillet on the stovetop over medium-low heat, or in the microwave.

Can This Recipe Be Frozen?

You can freeze this recipe for up to 2 months in an airtight storage container. I recommend letting it thaw in the refrigerator and then reheating in the microwave or on the stovetop.

Enjoy friends! If you make this vegan Swedish meatballs recipe, please snap a photo and tag #jessicainthekitchen on Instagram! We’d also love it if you would leave a comment below, and give the recipe a rating! Thanks so much!

Vegan Swedish meatballs in skillet with wooden spoon, garnished with parsley

Vegan Swedish Meatballs

These plant-based Swedish meatballs have everything you love about the comfort food classic, minus the meat and dairy!
5 (from 7 ratings)

Ingredients

Vegan Meatballs Base

  • 8 ounces roasted cauliflower (instructions below), (1 cup)
  • 1 cup cooked quinoa, (137g)
  • 2 Bob’s Red Mill Egg Replacers OR flax eggs, if flax eggs, less one tablespoon of liquid per flax egg
  • ½ cup red onion, finely diced, (114g)
  • 1/2 teaspoon ground black pepper
  • ¾ teaspoon sea salt
  • 3 cloves garlic, minced
  • 1 cup breadcrumbs, gluten free if needed
  • 1 ½ tablespoons coconut oil

Swedish Meatballs Sauce

  • 3 tablespoons vegan butter
  • 1/4 cup flour
  • 2 cups vegetable broth
  • 1 13.4 ounce can of coconut milk
  • 1/2 teaspoon garlic powder
  • 1 – 1 1/2 tablespoons light soy sauce or liquid aminos*
  • 1/2 teaspoon dijon mustard
  • 1/4 teaspoon ground black pepper
  • 3 tablespoons chopped fresh parsley
  • salt to taste, depending on your vegetable broth

Instructions 

Sauce

  • I would make the sauce after the meatballs are finished cooking. In a pan over medium heat, melt the vegan butter. Add the flour to pan, and whisk vigorously with a whisk until the flour is fully incorporated with the butter with no lumps, forming a roux. Let it cook for about 2 minutes to remove any flour taste.
  • Slowly mix in the vegetable broth, whisking at the same time, until a smooth sauce is formed. Add in the can of coconut milk, whisking at the same time too until fully incorporated.
  • Add in the garlic powder, soy sauce, mustard, black pepper and 1 tablespoon of the parsley. Mix, taste, and add salt to test.
  • Remove the sauce from the heat and add in the meatballs, slowly turning to coat the meatballs. Add the last of the parsley to garnish and serve and enjoy!

Vegan Meatballs Base

  • Preheat oven to 450°F/230°C. Cut the cauliflower’s stem off, and cut into even-sized florets. Drizzle the cauliflower with maybe a teaspoon of oil. Roast the cauliflower for 15-20 minutes in the oven. Remove and allow to cool for a few minutes.
  • In a food processor, add the cauliflower and pulse it until it’s completely riced. Remove from the food processor. You only need 1 cup of this for this recipe and 8 ounces should make about 1 cup.
  • Add the 1 cup of riced cauliflower and all the other meatball ingredients EXCEPT the coconut oil. You can pulse them or mix them together until they form into a tight ball, combining everything. You want to ensure they are so mixed together that you’re not seeing individual cauliflower or quinoa florets, it’s all one big mixture. That’s how you’ll ensure the meatballs will hold together!
  • Heat the coconut oil in a pan over medium high heat. While it’s heating, use a tablespoon measurer to form one raw meatball and shape into a ball with your fingers. You can place them on a plate while the oil heats.
  • Add one meatball to test the oil. Cook on one side for about 1-2 minutes, turning on all sides onto fully cooked inside and out, about 4 minutes. You can add as many meatballs as can fit in the pan without overcrowding it, cooking them all for about 4-5 minutes turning on each side, to cook them through.
  • Lower/turn the heat off. Prep the sauce either in this cooled down pan, or in a separate pan then add the meatballs to it as in the sauce directions. You can enjoy these vegan meatballs alone, in a nice hoagie or with cauliflower rice or quinoa on the side, you know, for a double down. You could even have them on toothpicks as an appetiser at your parties! Enjoy!

Notes

*I started with 1 tablespoon then ended up adding in an extra 1/2 tablespoon light soy sauce and I felt like it really enhanced the flavour. So start with 1 tablespoon, and add more if you think you need it. Also, if you don’t use light soy sauce or liquid aminos, please note that it WILL be saltier, so adjust accordingly!
How to store: If you have leftover vegan Swedish meatballs, you can store them in an airtight container in the refrigerator for 3 to 4 days. Note that the meatballs will soften as they sit in the sauce, so the texture of the dish will change. Reheat the meatballs in a skillet on the stovetop over medium-low heat, or in the microwave.
How to freeze: You can freeze this recipe for up to 2 months in an airtight storage container. I recommend letting it thaw in the refrigerator and then reheating in the microwave or on the stovetop.
Calories: 126kcal, Carbohydrates: 11g, Protein: 3g, Fat: 9g, Saturated Fat: 6g, Sodium: 426mg, Potassium: 144mg, Fiber: 1g, Sugar: 1g, Vitamin A: 201IU, Vitamin C: 8mg, Calcium: 25mg, Iron: 1mg

Disclaimer: Although jessicainthekitchen.com attempts to provide accurate nutritional information, kindly note that these are only estimates. Nutritional information may be affected based on the product type, the brand that was purchased, and in other unforeseeable ways. Jessicainthekitchen.com will not be held liable for any loss or damage resulting for your reliance on nutritional information. If you need to follow a specific caloric regimen, please consult your doctor first.