Vegan Shakshuka with Tofu Recipe
- Megan

- Jan 19
- 3 min read
Shakshuka is a beloved dish known for its rich tomato base and poached eggs. But what if you want to enjoy this classic without eggs or animal products? This vegan shakshuka with tofu offers a satisfying, protein-packed alternative that keeps all the bold flavors intact. It’s perfect for breakfast, lunch, or dinner and pairs beautifully with crusty bread.

Ingredients
This recipe uses simple, wholesome ingredients that come together quickly:
2 tbsp olive oil
1 onion, chopped
2 large garlic cloves, minced
1 red pepper, deseeded and chopped
1 tsp smoked paprika
1 tsp ground cumin
1/2 tsp chili powder
Pinch of red pepper flakes
1/4 tsp salt
2 x 400g (14 oz) cans of chopped or crushed tomatoes
1 block of tofu, drained and pressed
black salt (kala namak), optional
Handful of fresh coriander or parsley, chopped
Black pepper to taste
Vegan feta (optional)
Kalamata olives, sliced in half (optional)
Crusty bread for serving
Instructions
Heat the olive oil in a large skillet over medium heat. Add the chopped onion, garlic and red pepper and cook until fragrant and slightly softened, about 5 minutes.
Stir in the spices: smoked paprika, cumin, chili powder, red pepper flakes, and salt. Cook for a minute or 2 to release their aromas.
Pour in the chopped tomatoes along with their juices. Stir well and bring the mixture to a simmer. Let it cook for about 5 minutes.
Cut the tofu into 1/2" slices. I like to use a round cutter to cut the tofu slices into circles to resemble to the look of eggs. With the remaining tofu scraps I break them up with my fingers sprinkling onto the sauce. If you want that eggy flavor you can sprinkle the tofu slices with a very tiny bit of black salt. (Alternatively, you can sprinkle black salt over the entire dish once it's finished cooking. Or omit the black salt altogether.) Gently place the tofu slices into the sauce. Cover with a lid and let it simmer for another 10 minutes on low heat so the tofu absorbs the flavors.
Season with black pepper and adjust salt if needed.
Sprinkle fresh coriander and/or parsley over the top. Add sliced olives if desired. Add chopped/crumbled vegan feta if you like a tangy, creamy contrast.
Serve the shakshuka hot with crusty bread to soak up the sauce. This dish also reheats well, making it a great option for meal prep.
Tips for the Best Vegan Shakshuka
How much tofu to use depends on the size of your skillet. Here in Norway most tofu blocks sold are small (200-300g), so I use the entire block. Feel free to use just half a block. If your tofu is packaged with a lot of water, be sure to the press some of the water out. This helps it absorb the sauce better and prevents it from becoming mushy.
Use good quality canned tomatoes for a rich, fresh flavor. San Marzano or plum tomatoes work well.
Adjust the spice level by adding more or less chili powder and red pepper flakes according to your taste.
Why This Recipe Works for Everyone
This vegan shakshuka is a great option for people who want to enjoy a traditional dish without animal products. It’s:
High in protein thanks to tofu
Rich in vitamins and antioxidants from tomatoes and peppers
Easy to customize with herbs and spices
Perfect for any meal of the day (yes, it's even eaten for breakfast!)
Whether you’re vegan, vegetarian, or just looking to try something new, this recipe offers a delicious, nutritious meal that’s simple to prepare.



Comments