Jump to Recipe Print Recipe
This vegan shakshuka is made with spinach and silken tofu in a smoky tomato and red pepper sauce. It’s perfect for breakfast or dinner, easy to make, and absolutely delicious scooped up on crusty pita wedges.

For a long time I’ve been both intrigued and grossed out by the idea of shakshuka. Grossed out because: eggs. They were always at the top of my least favorite foods list. But even if I could never get past the taste and the smell of eggs, I’ve got to admit, folks have come up with some pretty cool ways to cook them.
The eggs in shakshuka get poached right in the sauce, which is pretty cool indeed. That’s one of the reasons the dish always sounded so intriguing to me. That and the sauce itself.
I got my hands on a jar of shakshuka sauce a couple of years ago (the sauce was vegan — yay!) and loved it. I created by own version and started cooking all kinds of things in it. Tofu and greens were my favorite! Tofu has an eggy texture that works great in dishes like tofu scramble and even vegan quiche. And I love greens in just about anything!
I’ve enjoyed this vegan shakshuka for broth breakfast and dinner. It’s absolutely delicious, easy to make, and can be served plain or made fancy for brunch with delicious toppings and accompaniments.
Jump to:
- Ingredients You’ll Need
- How It’s Made
- Variation with Pan-Fried Tofu
- Leftovers & Storage
- More Eggy Vegan Breakfast Recipes
- Vegan Shakshuka
Ingredients You’ll Need
- Olive oil. You could technically get away with using another high-heat oil, but olive will give your vegan shakshuka the best flavor.
- Onion.
- Red bell peppers.
- Spices. We’re 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 with regular diced tomatoes if you absolutely must.
- Baby spinach. This isn’t normally an ingredient in traditional shakshuka, but it makes a great addition to our vegan version, adding some texture and vibrant flavor.
- Salt and pepper.
- Silken tofu. This is our egg substitute. You can use any firmness of silken tofu that’s available, but soft works best.
- Kala namak. This is for adding 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 is high in sulfur content, so it’s great for making things taste like egg. You can leave it out if you’re not super concerned with making this taste like traditional shakshuka. Look for kala namak in Indian markets or online.
- Fresh cilantro.
- 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 It’s Made
The following is a detailed photo tutorial on how to make this dish. Scroll all the way down if you’d like to skip right to the recipe!


Heat your olive oil in a skillet, then add diced onion and bell pepper. Cook the veggies until they start to soften. Add the garlic and spices and cook everything for a minute or so.


Add your tomatoes — both crushed and diced. Stir the mixture up, bring it to a boil, and let it simmer until the peppers are tender.
Tip: I love cooking shakshuka in a cast iron skillet. Make sure if you do this that your skillet is well seasoned. Otherwise the acid from the tomatoes could erode your patina.


Add the spinach. It might not all fit at once! Just add a handful at a time, mixing in each handful until it wilts before adding more. Give the sauce a taste test at this point and season it with salt and pepper.


Add your silken tofu. Grab a spoon and drop it in dollops right into the skillet. Let the mixture simmer for a minute or two more to heat up the tofu.


Take the skillet off of heat. Sprinkle each tofu dollop with some 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 Pan-Fried Tofu


Prefer regular tofu to silken? You can use it in this recipe! Start with diced super firm or pressed extra firm tofu and pan-fry your tofu in some oil. Optionally, sprinkle it with some lemon juice, kala namak or regular salt, then stir it into your shakshuka sauce.
Leftovers & 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.