This vegan shakshuka is made with spinach and silken tofu in a smoked tomato and red pepper sauce. It’s perfect for breakfast or dinner, easy to make and absolutely delicious served in crusty pita slices.

I have long been intrigued and annoyed by the idea of shakshuka. Gone because: Eggs. They were always at the top of my list of least favorite foods. But even if I’ve never been able to get over the taste and smell of eggs, I have to admit that they are cooked in some pretty cool ways.
The eggs in the shakshuka are poached right into the sauce, which is pretty cool. This is one of the reasons why the dish always sounded so intriguing to me. That and the sauce itself.
I picked up a jar of shakshuka sauce a couple of years ago (the sauce was vegan, yay!) and loved it. I created my own version and started cooking all kinds of things with it. The tofu and veggies were my favorites! Tofu has an eggy texture that works great in dishes like tofu scramble and even vegan quiche. And I love green in just about anything!
I have enjoyed this vegan shakshuka for breakfast and dinner with broth. It’s absolutely delicious, easy to make and can be served plain or for brunch with delicious toppings and sides.
Jump to:
Ingredients you will need
- Olive oil. Technically, you could get away with using another oil on high heat, but olive will give your vegan shakshuka the best flavor.
- onion
- Red peppers
- Spices. We are using ground cumin, paprika and cayenne pepper.
- Canned crushed tomatoes.
- Fire-roasted tomatoes. These will add a delicious, smoky flavor to your shakshuka sauce. You can substitute regular diced tomatoes if needed.
- Baby spinach. It’s not usually an ingredient in traditional shakshuka, but it’s a great addition to our vegan version, adding texture and vibrant flavor.
- salt and pepper
- Silken tofu This is our egg substitute. You can use any firmness of silken tofu available, but soft works best.
- To install Kala namak. This is to add eggy flavor to the silken tofu. Kala namak (also known as black salt) is a type of salt that’s common in Indian cooking and has a high sulfur content, so it’s great for making things taste like eggs. You can leave it out if you’re not too worried about making this taste like traditional shakshuka. Look for kala namak in Indian markets or online.
- fresh coriander
- fresh parsley
- Optional accompaniments. I like to serve my vegan shakshuka with pita wedges, sliced avocado, and tofu feta (or store-bought vegan feta).
How is it done
The following is a detailed photo tutorial on how to make this dish. Scroll down if you want to jump straight to the recipe!

Heat the olive oil in a pan, then add the diced onion and pepper. Cook the vegetables until they begin to soften. Add the garlic and spices and cook for a minute or so.

Add the tomatoes, both crushed and diced. Stir the mixture, bring to a boil and simmer until the peppers are tender.
Tip: I love cooking shakshuka in a cast iron skillet. If you do, make sure your pan is well seasoned. Otherwise, the acid in the tomatoes could erode the patina.

Add the spinach. Maybe not everything fits at once! Only add a handful at a time, mixing each handful until it is browned before adding more. Taste test the sauce at this point and season with salt and pepper.

Add your silken tofu. Take a spoon and drop it in tiles directly into the pan. Let the mixture simmer for another minute or two to warm the tofu.

Remove the pan from the heat. Sprinkle each spoonful of tofu with a little kala namak and black pepper. Top your vegan shakshuka with chopped cilantro and parsley, as well as any additional toppings you’d like to use, such as avocado and vegan feta.
Variation with fried tofu

Do you prefer regular to silken tofu? You can use it in this recipe! Start with cubed super firm or pressed extra firm tofu and fry the tofu in a little oil. Optionally, sprinkle with lemon juice, kala namak, or regular salt, then stir into your shakshuka sauce.
Leftovers and storage
Leftover vegan shakshuka will keep in an airtight container in the fridge for about 3 days. Reheat it in the microwave or in a saucepan on the stove.
More vegan breakfast recipes with eggs
Do you like this recipe? If so, please stop by and leave me a review and rating below if you try it! Also be sure to follow me on Facebook, Pinterest, or Instagram, or subscribe to my newsletter for more recipes like this!

Vegan Shakshuka
This vegan shakshuka is made with spinach and silken tofu in a smoked tomato and red pepper sauce. It’s perfect for breakfast or dinner, easy to make and absolutely delicious served in crusty pita slices.
Ingredients
-
2
spoonfuls
olive oil -
1
medium onion,
diced -
2
medium red peppers,
roughly chopped (1-inch pieces) -
3
garlic cloves,
chopped -
2
teaspoons
ground cumin -
1
spoon
sweet red pepper -
½
teaspoon
cayenne pepper
(or to taste) -
1
(14 ounces/400 grams) can
crushed tomatoes -
1
(14 ounces/400 grams) can
fire roasted tomatoes -
4
ounces
baby spinach -
salt and pepper,
Taste -
1
package (12.3 ounces).
silken tofu
(Note 1) -
¼
teaspoon
kala namak,
or to taste (optional) -
¼
cup
chopped fresh cilantro -
¼
cup
chopped fresh parsley
Instructions
-
Coat the bottom of a large pan with olive oil and place over medium heat.
-
When the oil is hot, add the onion and peppers. Sweat them for about 5 minutes, until they start to soften, stirring occasionally.
-
Add the garlic, cumin, paprika, and cayenne pepper to the pan. Saute everything for about 1 minute more, stirring constantly, until the garlic is very fragrant.
-
Stir in the crushed tomatoes and the fire-roasted tomatoes. Raise the heat and bring the mixture to a boil.
-
Lower the heat and simmer the sauce, uncovered, for 10 to 15 minutes, until the peppers are soft and the sauce has thickened a bit. You can add a splash of water if it gets too thick while simmering.
-
Stir in the spinach and let the mixture simmer for about 2 more minutes, until the spinach has completely wilted.
-
Taste the sauce carefully (it will be hot) and season with salt and pepper to taste.
-
While the sauce is still simmering, use a spoon to scoop up a few drops of silken tofu, transferring them directly to the pan. Get about 6 or 7 large spoonfuls and try to spread them relatively evenly over the sauce.
-
Continue boiling the shakshuka for about 2 minutes, just to warm the tofu.
-
Remove the pan from the heat and sprinkle the tofu with kala namak (or table salt) and black pepper to taste.
-
Add parsley and cilantro, along with any additional desired toppings, such as avocado or vegan feta cheese.
-
Divide into plates and serve with pita bread.
Recipe notes
- Some brands of silken tofu are available in different levels of firmness. Any firmness can be used, although mild is ideal for this recipe.
nutritional data
Vegan Shakshuka
Amount per serving
calories 225
Calories from fat 93
% Daily Value*
fat 10.3 g16%
Saturated fats 1.5 g8%
sodium 572 mg24%
potassium 770 mg22%
Carbohydrates 24.9 g8%
Fiber 7.7 g31%
Sugar 14.1 g16%
protein 11.9 g24%
calcium 153 mg15%
iron 5 mg28%
* Percent Daily Values are based on a 2000 calorie diet.