Vegan Swedish Meatballs

Vegan Swedish meatballs are tender, savory little balls made from textured soy protein and rice, baked and then simmered in a creamy coconut-milk gravy spiced with nutmeg and garlic. They deliver the same cozy, comforting flavor as the classic Köttbullar med gräddsås (meatballs with cream sauce), with no meat, eggs, or dairy. Make them when you want a high-protein, family-friendly dinner that tastes like a warm hug on a plate.

Vegan Swedish Meatballs

I think it’s safe to say that meatballs are sort of a comfort food for the Swedes. If you asked ten Swedish families for their Köttbullar recipe you would get ten different answers, because there is no single standard version — each household nudges the spices to their own taste. Because this dish is so popular and delicious, I decided to create a very similar recipe for vegan Swedish meatballs that you can easily recreate at home, using pantry-friendly plant ingredients instead of the traditional beef and pork.

What goes into these vegan meatballs

The meatballs lean on a few workhorse ingredients. Here is what each one does and how to choose it:

  • Textured soy protein granules (TSP/TVP): the meaty base. Buy the small granule form rather than large chunks so the mixture holds together and rolls smoothly.
  • Vegetable broth: used to rehydrate the granules, so it carries flavor deep into them. Water works, but broth gives a richer, more savory result.
  • Cooked rice: adds body and helps bind the mixture. Let it cool fully before mixing so it does not turn the balls gummy.
  • Psyllium husks: the vegan binder. Once hydrated they turn gelatinous and hold everything together, doing the job an egg would. For a vegetarian version you can swap in 1 egg instead.
  • Breadcrumbs: soak up excess moisture and firm up the texture. Use gluten-free crumbs if needed.
  • Nutritional yeast, smoked paprika, cumin, and Italian seasoning: build the deep, savory, faintly smoky flavor that makes these read as satisfying rather than plain.
how to make vegan swedish meatballs

The secret is in the creamy coconut gravy

No Swedish meatball is complete without its blanket of cream sauce, and this vegan version gets there with full-fat canned coconut milk. Full-fat is important here: the higher fat content gives the gravy the silky, rich body that a light coconut milk cannot match. It simmers together with vegetable broth, lightly roasted flour, garlic powder, and a pinch of nutmeg — that nutmeg is the classic Swedish signature that makes the sauce taste unmistakably like the real thing.

Vegan Swedish Meatballs with white sauce

Why roasting the flour matters

The recipe calls for lightly roasted flour in the gravy, and that step is worth doing properly. Toasting flour in a dry pan until it turns pale gold cooks off the raw, pasty taste and deepens the flavor with gentle nutty notes. It also makes the flour easier to whisk in without lumps, so your sauce thickens into a smooth, glossy gravy instead of a gluey one. Keep the heat moderate and stir constantly, since flour can scorch quickly once it starts to color.

Tips for meatballs that hold their shape

  • Drain the granules well. After the soy protein has absorbed the broth, press out the excess liquid. A soggy mix will not hold together when you roll it.
  • Let the mixture rest. Giving the psyllium a few minutes to fully hydrate helps the balls bind firmly before baking.
  • Keep them small. Use 1 to 2 tablespoons of mixture per meatball. Smaller balls cook through evenly and are less likely to crack.
  • Bake first, then fry. Baking sets the structure so the meatballs stay intact; a quick fry on both sides afterward adds a golden crust before they meet the sauce.
  • Roast the flour ahead. Have the toasted flour ready before you build the gravy so nothing sits and overcooks while you scramble.
Vegan Swedish Meatballs with sauce

What to serve with vegan Swedish meatballs

Traditionally these go with mashed potatoes, which soak up the creamy gravy beautifully, but they are just as good over pasta or alongside a simple green salad. For a fully plant-based spread you could round out the table with a warming bowl of vegan red lentil soup to start, or lean into the comfort-food theme with a hearty vegan mushroom lasagna. If you love this meatball-in-gravy style, you will probably enjoy my vegan beef bourguignon too, which shares the same rich, saucy, cozy spirit.

Make-ahead and storage

These meatballs are a great make-ahead dish. You can shape and bake them in advance, then store them in an airtight container in the fridge for up to 3 to 4 days and add the sauce when you are ready to serve. Baked meatballs also freeze well: freeze them in a single layer first, then transfer to a bag so they do not clump. The coconut gravy is best made fresh, since it can thicken and separate slightly once chilled, but a splash of broth and gentle reheating on the stovetop brings it right back. If you want to prep further ahead, the toasted flour keeps in a jar and the granules can be measured out so weeknight assembly is quick. For more batch-cooking ideas, my one-week vegan macrobiotic meal plan is full of dishes that store and reheat well.

Vegan Swedish Meatballs recipe

If you make these vegan Swedish meatballs, I would love to know how the coconut gravy turned out for you and whether you served them over mashed potatoes or something else. Please rate the recipe and leave a comment below with any spice tweaks you made — after all, every family has its own version.

Vegan Swedish Meatballs chiftelute suedeze de post

Vegan Swedish Meatballs

Tender vegan Swedish meatballs made from textured soy protein and rice, baked and then pan-fried until golden, and finished in a rich coconut-milk gravy. A comforting, high-protein plant-based dinner that comes together in about 40 minutes.
Prep Time 10 minutes
Cook Time 30 minutes
Total Time 40 minutes
Choose Serving Size 4

Ingredients 

  • 1 ½ cup textured soy protein granules
  • 1 cup vegetable broth or water
  • 1 onion finely chopped
  • 2 cloves garlic minced
  • 2 Tbsp olive oil
  • ½ cup rice
  • 2 Tbsp psyllium husks or 1 egg, for a vegetarian version
  • ½ tsp cumin
  • 1 Tbsp smoked paprika
  • 2 Tbsp Italian seasoning
  • 2 Tbsp nutritional yeast
  • ¼ cup breadcrumbs use gluten-free if needed
  • salt and pepper to taste

For the sauce:

  • 2 cups vegetable broth or water
  • 1 cup full fat coconut milk canned
  • ¼ cup flour lightly toasted; use gluten-free if needed
  • ½ tsp garlic powder
  • ½ tsp nutmeg
  • salt and pepper to taste

Instructions

  • Preheat the oven to 200°C (400°F).
  • Boil the rice, then set it aside to cool.
  • Bring the vegetable broth to a boil and pour it over the textured soy protein.
  • Add the cumin, smoked paprika, Italian seasoning, salt, and pepper.
  • Cover and let sit for about 10 minutes, until the liquid is absorbed.
  • Heat 1 Tbsp of the olive oil in a skillet over medium heat.
  • Add the chopped onion and minced garlic.
  • Sauté for about 3 minutes, until the onion is translucent.
  • Drain off any excess liquid from the textured soy protein granules.
  • In a bowl, combine the textured soy protein, the onion and garlic, the psyllium husks (or egg), the breadcrumbs, the paprika, the nutritional yeast, and salt and pepper to taste. Mix until well combined. Add the cooked rice and fold everything together with a spatula. Roll into meatballs, using 1-2 Tbsp of the mixture for each one.
  • Arrange the meatballs on a baking tray and bake for about 20 minutes.
  • Heat the remaining 1 Tbsp olive oil in a skillet over medium heat. Add the baked meatballs and fry on both sides, about 3 minutes per side.
  • Pour in the vegetable broth and coconut milk, add the toasted flour, and stir until the gravy starts to thicken. Season with garlic powder, nutmeg, salt, and pepper.
  • Serve with mashed potatoes, pasta, a simple salad, or anything else you like.

Notes

Use full-fat canned coconut milk for the gravy: the light version will not give it the same richness. Toast the flour in a dry pan until lightly golden before adding it, so the sauce tastes nutty instead of raw. Leftovers keep in the fridge for up to 3 days; reheat gently with a splash of vegetable broth to loosen the gravy.

Frequently Asked Questions

Are these Swedish meatballs vegan or vegetarian?

As written, they are fully vegan. The binder is psyllium husks and the sauce uses canned coconut milk instead of cream, so there are no animal products. The recipe offers an optional vegetarian version where you swap the psyllium husks for 1 egg, but the default is 100% plant-based.

What can I use instead of textured soy protein?

The recipe is built around textured soy protein (TSP/TVP) granules, which give the meatballs their meaty base and structure. If you cannot use soy, textured pea protein granules are the closest swap. Keep in mind that other bases like beans or lentils will change the texture and binding, so you may need to adjust the breadcrumbs and psyllium to hold the mixture together.

Why do you bake the meatballs before frying them?

Baking first sets the structure of the meatballs so they hold their shape and do not fall apart. A quick fry on both sides afterward adds a golden, slightly crisp crust for extra flavor and texture before they go into the sauce. Skipping the bake makes them much more likely to crumble.

Can I make vegan Swedish meatballs gluten-free?

Yes. Use gluten-free breadcrumbs in the meatball mixture and gluten-free flour for the gravy, both of which the recipe already notes as options. Also double-check that your vegetable broth and Italian seasoning are certified gluten-free, since some blends can contain traces.

How do I store and reheat them?

Store baked meatballs in an airtight container in the fridge for 3 to 4 days, or freeze them in a single layer before bagging them. The coconut gravy is best made fresh because it can thicken or separate when chilled. Reheat gently on the stovetop and loosen the sauce with a splash of vegetable broth if needed.

What should I serve with vegan Swedish meatballs?

Mashed potatoes are the classic pairing because they soak up the creamy gravy, but pasta or a simple green salad work just as well. For a fuller plant-based meal, start with a light soup or serve alongside another comforting main.

Similar Posts

5 from 1 vote

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating




2 Comments

  1. 5 stars
    The meatballs at Ikea were one of my favorite meals for years in a row 🙂 Finally found the courage to try your vegan recipe and I can’t believe so good these are!!! I’m in love!