I’ve been testing recipes for a while now to try and crack vegan lasagna and this has been my best effort yet. It takes a bit of time but it makes 4 servings (or 2 with seconds!!) and can be frozen for future dinners.

I didn’t use lasagna sheets, instead I opted for a healthier courgette ribbons for the “pasta” layers, but there’s no reason why you couldn’t include the pasta layers as normal.

Ultimate Vegan Lasagna

1 hour 30 mins
Serves 4


For the lasagna

½ head of broccoli (including the stalk)
1 courgette
1 red pepper
1 yellow pepper
1 red onion

For the tomato sauce

Olive oil
2 tins chopped tomatoes
4 cloves of garlic, crushed
Handful fresh basil, chopped (or 2 tsps dried)
½ tsp paprika (optional)
1 tbsp agave syrup (optional)
Salt & pepper to taste

For the cheese sauce

80ml olive oil
2 tbsps flour
300ml almond milk (plus extra as needed)
200g vegan cheese, grated (I used Violife original)
¼ tsp nutmeg (optional)
Salt & pepper to taste


Preheat your oven to 180 degrees celcius.

Put a small dollop of olive oil in a pot on a medium heat and fry the garlic until fragrant – about 2 minutes. Add in the 2 tins of chopped tomatoes, your basil, paprika and agave syrup. Season with salt and pepper and let simmer on a medium to low heat until you’re ready with the rest of your ingredients.

Remove the skin on your onion and slice it whole, then pull apart so you end up with thinly sliced onion rings.

Take the root and seeds out of the peppers and slice them whole from top to bottom in thin slivers. Set these aside.

Using a spiraliser create ribbons with your courgette, or if you don’t have one, simply slice thin slivers anyway you prefer.

Remove the florets from the broccoli (set the stalk aside) and chop them up very small, these will help make your tomato sauce “meaty”. Add your broccoli florets to the tomato sauce and continue to let it simmer and reduce while you prepare the rest of the ingredients.

Slice the stalk of the broccoli very finely – this is optional but it’s so good for you and it adds an extra layer of depth to your veggie lasagna.

Now we’re going to make the white vegan cheese sauce. Put the 80ml olive oil into another pot on a medium heat. After a couple of minutes add the flour to the pan and mix together until it forms a paste. Slowly (I can’t stress this enough) add the almond milk to the mixture a little bit at a time stirring constantly. Only add more milk, a little bit at a time, once it’s been mixed thoroughly with the paste each time.

Once all 300ml is added you should have a very liquid runny sauce, but don’t worry this is what we want because the cheese will thicken it. If it’s not liquid and looks like a nice thick sauce at this point, add more almond milk as needed. Don’t worry if you add too much as time on the cooker will help thicken the sauce again.

Once you’re happy that you have a fairly liquid sauce, add in your grated vegan cheese, nutmeg and salt & pepper to taste. Turn the cooker heat down to a low setting now. Keep stirring it to make sure it doesn’t get lumpy and wait until the cheese melts.

Take the tomato broccoli sauce and white sauce off the heat now.

Get a large lasagna dish and take a few spoonfuls of the tomato sauce just to cover the bottom of the dish – not much, just a light covering so vegetables don’t stick to the bottom.

Add a layer of half your peppers.

Add a layer of half your onion rings.

Add a layer of half your courgette ribbons.

Add a layer of half your tomato broccoli sauce.

Add a layer with all of your broccoli stalks.

Add another layer with the rest of your peppers.

Add a few spoonfuls (ideally 20%) of your white sauce now, but just a small drizzle, it doesn’t have to cover the entire dish because we want to save most of this sauce for the top.

Add another layer with the rest of your courgette ribbons.

Add another layer with the rest of your tomato broccoli sauce.

The final layer is the rest of your white sauce smothered over the top of everything.

I put a sprinkle of paprika, fresh basil and another small amount of vegan cheese on top but this is completely optional. Note that Violife vegan cheese doesn’t melt very well, which is why I put it inside the sauce instead of putting it on top like a regular lasagna.

Put in the oven for about 40 mins until there is a nice colour on top.

Bon appetit!

Follow me on instagram or on for more ideas on what to eat 🙂