Vegan Swedish Meatballs
This IKEA vegan Swedish meatballs copycat makes moist and tender cauliflower meatballs coated in a rich dairy-free cream sauce with coconut milk. Serve these plant-based meatballs over mashed potatoes or noodles for a cozy comfort food dinner.

If visits to IKEA have you feeling left out, this is how to make vegan Swedish meatballs at home that are just as classic and comforting! My vegan Swedish meatballs recipe makes juicy, flavour-packed cauliflower quinoa meatballs simmered in rich plant-based gravy. To make the sauce, you’ll make a roux with flour and vegan butter, then add in vegetable broth, coconut milk, and seasonings. It’s rich and creamy, without any dairy.
About This Vegan Swedish Meatballs Recipe
- Juicy and tender. These meatballs are crispy outside, tender inside, and they hold their shape well.
- The best dairy-free Swedish gravy. Simple ingredients, including flavour powerhouses like soy sauce, Dijon, and garlic powder, come together to make the best vegan version of this classic cream sauce I’ve ever tasted. It’s rich, silky, and coats the meatballs perfectly.
- Versatile. Serve your vegan Swedish meatballs over pasta, with rice or farro, or as a meatball appetizer for the holidays.
- Make them ahead. 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.
If you love meatballs as much as I do, be sure to save my vegan cranberry meatballs and classic 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 Meatballs
- Roasted cauliflower – Roasting brings out the flavours. For extra depth of flavour, roast the garlic cloves in the same pan as I do for my vegan mashed cauliflower.
- Cooked quinoa – Here’s how to cook quinoa.
- Bob’s Red Mill Egg Replacer – You can also make a flax egg from flax meal and water.
- Red onion – Or another mild onion, like white onion or shallot.
- Garlic – Combined with sea salt and cracked black pepper to flavour the meatballs. Use freshly minced garlic, roasted garlic, or you can substitute 1 tablespoon of jarred garlic for each fresh clove.
- Breadcrumbs – Use gluten-free breadcrumbs if needed.
- Coconut oil – Or your preferred cooking oil for browning the meatballs.
Vegan Swedish Meatball Sauce
- Vegan butter – Use store-bought or make your own vegan butter.
- Flour – If needed, swap all-purpose flour with gluten-free flour.
- Vegetable broth – Here’s how to make your own vegetable broth. You can also use store-bought low-sodium broth.
- Coconut milk – Make sure you use canned coconut milk, not the refrigerated kind sold in big cartons!
- Garlic powder – Feel free to use fresh, finely minced garlic here. One clove should replace 1/2 teaspoon of garlic powder.
- Light soy sauce – You can use liquid aminos here, too.
- Dijon mustard – Or yellow mustard, though the flavour will be slightly stronger.
- Parsley – Optional, for garnish.

How to Keep Vegan Meatballs From Falling Apart
If you find that your vegan cauliflower meatballs aren’t holding their shape, it’s likely because you haven’t blended the mixture smooth enough. Rice the cauliflower first, then blend it with the other ingredients until you have a smooth, cohesive dough. Here are some tips:
- Blend thoroughly. You shouldn’t see bits of quinoa and cauliflower in the mixture. Pulse it in your food processor until it’s very well-combined. The finished mixture shouldn’t fall apart when you try to form the meatballs.
- Beware of substitutes. 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.
- Press and roll firmly. I like to squeeze each meatball together properly before adding them to the pan, like you would with regular meatballs.
- Roll the meatballs right before frying. This way, they’ll be tightly rolled right before they hit the hot pan to sear and seal their shape. Scoop a tablespoon of the vegan meatball mixture and form it into a ball with your hands. Then, place the meatball in the skillet and repeat with the remaining meatball mixture.
More Tips for Successful 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!
Serving Suggestions
Add these vegan Swedish meatballs to a hoagie for a Swedish meatball sandwich, or serve them over cauliflower rice, quinoa, or other grain. I also love them ladled over mashed potatoes or pasta. And they’re a favourite party appetizer served on toothpicks!
Make-Ahead, Storage, and Freezing
- Make ahead. Prepare, roll, and cook your meatballs 1-2 days in advance. When it’s time to serve, prepare the sauce and add the meatballs. Done!
- Refrigerate 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. Reheat the meatballs in a skillet on the stovetop over medium-low heat, or in the microwave.
- 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.
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!
More Vegan Comfort Food Recipes

Vegan Swedish Meatballs
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
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.


How much and what kind of mustard? U said it was important but it isn’t listed in the ingredients.
Hi Theresa,
Sorry about that! I just added it in – it’s 1/2 teaspoon mustard. Thanks so much for bringing that to my attention and I hope you enjoy!!
Hi Jessica
Quick question re the coconut milk – is this tinned (like you would use for Thai curry) or is it just plain old coconut milk from a carton (so like a carton of almond milk or hemp milk)
Thanks
Debbie
Hi Debbie,
Tinned coconut milk! I’ll update the recipe to reflect that. I hope you enjoy so much!!
Made this tonight for the family. It was a big hit. I made sure I stuck to the meatball mixture to the letter. Not a problem at all. The meatball nmixture doughed up in the processer like you said. They were very flavoursome. I thought the sauce was a little runny to start with but it all worked over a pile od mash potato. Thanks for another yummy recipe. The red lentil curry is still a family and friends of family favourite.
Oh wow! We’re happy that you made the recipe to the letter and liked it. Thank you for leaving this kind reply. We’re happy that it was able to please you and your amazing family!
This one was a big hit all round, my toddlers’ nearly bit my finger off going in for seconds, my mother in law was impressed and even my meat eater husband said they were very tasty (believe me this is high praise from Mr ‘I just don’t like vegan food’! Luckily we’ve got enough left for another meal so I’m hoping they freeze well!
I’m so happy to hear that you and your family enjoyed it Jess! Thank you for leaving such a nice comment!
Made this recipe this week and it turned out fantastic! The flavor is great and the meatballs held together when cooked. Thanks for the great idea!
So happy to hear that Erin! Thank you so much for reading and trying the recipe! Also thank you so much for this great review
One of the best (if not THE best) vegan cream sauces I have ever eaten. Can only speak to the sauce, as I used premade gardein brand frozen vegan meatballs, but it was truly so delicious. I put it over mashed potatoes, and it was the perfect texture and consistency. Excited to try the meatballs themselves when I have a bit more prep time.
We’re so happy that you enjoyed this recipe Ellen! Thank you so much for reading and leaving such a nice comment!
Hi Jessica.
Quick question! I’m curious about your recipe, but sadly, I have a quinoa allergy.
What would you recommend, another ingredient instead of quinoa?
Hi Maki,
You can use cooked brown rice in the same weight/quantity! 🙂 I hope that helps!
I’m not sure about the coconut measurement.
I read the reviews and you noted to use tinned coconut milk. Is that the same as canned?
If so, how many cans? Sweetened or unsweetened, full fat or not?
Thanks
Hi Cheryl thanks so much for reading. You can use one can of full fat(not lite) unsweetened coconut milk. One can is normally around 13.4 ounces. I hope this helps!
I made these and they are so good! The sauce turned out great and the meatballs were perfect! I’m obsessed with the texture! My only complaints (minor) is that they are kind of time consuming but with proper planning I’ll definitely make them again. Also they are quite delicate when reheated in the sauce but doable! I baked them instead of frying at 400 degrees for eight to ten minutes on both sides and only a couple flattened out. I will use shallots next time instead of red onion as mine was quite pungent, absolutely a great recipe to have veganized! Thank you!
Hi Jessica,
These look fantastic. If I want to sub cashew cream instead of coconut milk, how much cream should I use? I assume this would work as well. Thoughts?
Thanks for all of your terrific recipes. Happy Holidays!
Hi Deb,
You should use 1 ½ cups of cashew cream but I would ensure it’s as “watery” as coconut milk and not too thick so the sauce isn’t too thick! I hope that helps and Happy Holidays to you too!