A great lasagna is one of the most purely satisfying things that can come out of a home kitchen — the kind of dish that fills the house with an aroma for an hour before it is ready, that arrives at the table still bubbling at the edges, that holds together in a clean, layered slice that reveals sheets of pasta, a rich tomato sauce, and a creamy, herb-flecked filling, and that produces a specific kind of table silence that only deeply good food can produce. Vegan Ricotta and Spinach Lasagna delivers exactly that experience — without a drop of dairy, without an egg, and without any compromise on the qualities that make lasagna the definitive comfort bake. The tomato sauce is a slow-cooked, deeply savory marinara made with tinned tomatoes, garlic, onion, and a generous quantity of herbs, cooked long enough for the tomato’s acidity to mellow and the sauce to become thick, clinging, and intensely flavored. The ricotta layer is made from firm tofu blended with lemon juice, nutritional yeast, garlic, and fresh basil, producing a creamy, slightly grainy, herb-forward filling that is remarkably close to the texture and flavor of dairy ricotta — particularly after baking, when the tofu proteins set slightly and the filling holds its shape between the pasta layers. The spinach is wilted, squeezed dry, and folded into the ricotta so that its flavor and color are present in every slice without its moisture making the lasagna wet. The top layer is a cashew béchamel — a silky, creamy white sauce made from blended cashews and plant milk, enriched with nutritional yeast and nutmeg — that bubbles and browns during baking and forms the golden, slightly crispy top crust that is the crowning achievement of a well-made lasagna. It is 100% vegan, dairy-free, and egg-free. It serves 8 generously. It is better the next day. The technique is the reason each layer holds its distinct character in the finished bake rather than collapsing into an undifferentiated mass.
The technique is the layer-moisture-balance method. The fundamental structural problem in a baked lasagna is moisture management across three distinct layers — the tomato sauce, the ricotta filling, and the béchamel — each of which has a different moisture content and a different behavior during the 45–55 minutes of baking. If the tomato sauce is too wet, it saturates the pasta sheets from below, producing a soft, formless base layer; if the ricotta filling retains its full moisture (from the spinach, from the tofu), it releases water during baking that pools between the pasta layers and pushes them apart; if the béchamel is too thin, it runs off the top layer and puddles at the edges rather than forming the golden crust. The layer-moisture-balance method addresses each layer’s moisture independently, at the preparation stage, so that when the lasagna is assembled and baked, each layer contributes exactly the right amount of moisture to cook the dry pasta sheets to al dente without making any individual layer wet. Stage one — concentrate the tomato sauce: the marinara is cooked for a full 25–30 minutes uncovered until it reaches a consistency significantly thicker than a serving pasta sauce — it should mound slightly on a spoon rather than running off it. This concentrated sauce releases moisture during baking as it heats, which is absorbed by the dry pasta sheets; if the sauce were at a normal serving consistency at the point of assembly, the combined moisture from the sauce and the other layers would over-saturate the pasta. Stage two — squeeze the spinach: the wilted spinach is squeezed as firmly as possible before being incorporated into the ricotta, eliminating the free water from the spinach cells that would otherwise release into the ricotta layer during baking. Stage three — calibrate the béchamel: the cashew béchamel is made to a consistency that is thick enough to coat the back of a spoon heavily but still pourable — it should flow slowly across the top layer when poured, not run off the edges, and not need to be spread with a spatula. This consistency means it stays where it is placed during baking rather than redistributing into the lower layers. The three calibrations together produce a lasagna that is moist throughout without being wet, where each layer retains its distinct texture and the pasta is cooked through and al dente rather than either undercooked or sodden.
This recipe serves 8.
Recipe Information
| Prep Time | Cook Time | Total Time | Servings | Calories |
|---|---|---|---|---|
| 35 mins | 55 mins | 90 mins | 8 | ~390 kcal |
Ingredients
For the Tomato Marinara Sauce
- 2 × 400g (14oz) tins of crushed tomatoes
- 1 × 400g (14oz) tin of whole peeled tomatoes, crushed by hand
- 1 large onion, finely diced
- 6 cloves garlic, minced
- 2 tbsp olive oil
- 3 tbsp tomato paste
- 1 tsp dried oregano
- 1 tsp dried basil
- 1 tsp sugar
- 1 tsp fine salt
- ½ tsp black pepper
- ½ tsp chilli flakes (optional)
- A small handful of fresh basil, torn — added at the very end of cooking, off the heat; fresh basil added during cooking loses its aromatic brightness; added at the end, it perfumes the sauce without being cooked out
For the Spinach
- 300g (10½oz) fresh baby spinach
- 1 tbsp olive oil
- 2 cloves garlic, minced
- Salt to taste
For the Vegan Ricotta
- 600g (21oz) firm tofu — pressed for 20 minutes to remove excess water (wrap in a clean kitchen towel and place a heavy book or pan on top; the pressing step is important — unpressed tofu retains too much water and makes the filling wet)
- 3 tbsp nutritional yeast
- 2 tbsp lemon juice (fresh)
- 2 cloves garlic, minced or finely grated
- 1 tsp fine salt
- ½ tsp black pepper
- ½ tsp onion powder
- A large handful of fresh basil leaves, roughly torn (or 1 tsp dried basil)
- 2 tbsp olive oil
For the Cashew Béchamel
- 150g (1 cup) raw cashews, soaked in boiling water for 30 minutes and drained
- 600ml (2½ cups) unsweetened oat milk or soy milk
- 3 tbsp nutritional yeast
- 2 cloves garlic
- 1 tsp fine salt
- ¼ tsp ground nutmeg (freshly grated nutmeg is noticeably more aromatic and pungent than pre-ground — if using freshly grated, a small amount goes a long way)
- ½ tsp white pepper or black pepper
- 1 tbsp lemon juice
For the Lasagna
- 12–15 dried lasagna sheets (no-boil/oven-ready sheets are ideal for this recipe — they absorb moisture from the surrounding sauces during baking and finish cooking in the oven, eliminating a separate boiling step and reducing the risk of over-soft pasta; standard lasagna sheets that require pre-boiling can be used but should be boiled for 4–5 minutes only — slightly undercooked — before layering)
- 100g (3½oz) vegan mozzarella-style cheese, grated (optional but excellent — scattered over the béchamel before baking, it adds a melted, slightly stretchy layer on top; use a melting-style vegan mozzarella)
- Fresh basil and a drizzle of good olive oil, to finish
Equipment
- A 33 × 23cm (9 × 13 inch) deep baking dish
Instructions
- Press the tofu. Wrap the firm tofu in a clean kitchen towel, place on a plate, and set a heavy weight on top. Press for 20 minutes. This step cannot be skipped — the moisture removed during pressing is what allows the ricotta to be firm and spreadable rather than wet and loose.
- Make the marinara — Stage 1. Heat the olive oil in a large saucepan over medium heat. Add the diced onion and cook for 8–10 minutes until soft and slightly golden. Add the garlic and cook for 1 minute until fragrant. Add the tomato paste and stir for 2 minutes until it darkens slightly. Add the crushed tomatoes and hand-crushed whole peeled tomatoes, dried oregano, dried basil, sugar, salt, pepper, and chilli flakes if using. Stir well, bring to a gentle simmer, and cook uncovered over medium-low heat for 25–30 minutes, stirring occasionally, until the sauce is thick, reduced, and mounds on a spoon. Remove from the heat, stir in the fresh basil, taste and adjust seasoning. Set aside.
- Wilt and squeeze the spinach — Stage 2. Heat 1 tablespoon of olive oil in a wide skillet over high heat. Add the garlic and stir for 20 seconds. Add all the spinach and toss constantly for 60–90 seconds until fully wilted. Remove from heat, season with salt. Transfer to a clean kitchen towel, wrap tightly, and squeeze firmly over the sink until no more liquid runs out. Open the towel: the spinach should be a compact, nearly dry ball. Roughly chop and set aside.
- Make the vegan ricotta. Crumble the pressed tofu into a large bowl. Add the nutritional yeast, lemon juice, minced garlic, salt, pepper, onion powder, olive oil, and fresh basil. Using a fork, mash and mix everything together until the mixture resembles a slightly chunky ricotta — not completely smooth, with small irregular pieces remaining (a few pulses in a food processor works well too, if a smoother texture is preferred; do not over-process to a paste). Fold the squeezed, chopped spinach into the ricotta mixture until evenly distributed. Taste and adjust salt and lemon.
- Make the cashew béchamel — Stage 3. Drain the soaked cashews. Combine in a high-speed blender with the oat milk, nutritional yeast, garlic, salt, nutmeg, pepper, and lemon juice. Blend on high for 60–90 seconds until completely smooth. The béchamel should be thick enough to coat the back of a spoon heavily and flow slowly when poured — if it seems very thin, add 2 tablespoons more cashews and blend again; if very thick, add a splash of plant milk. Do not cook this béchamel — the blended version is used raw; it will thicken and set during baking.
- Assemble. Preheat the oven to 190°C (375°F). Spread a thin layer of marinara sauce across the base of the baking dish — just enough to prevent the first pasta layer from sticking. Lay 3–4 lasagna sheets over the sauce in a single layer (overlap slightly if needed to cover the base). Spread one-third of the ricotta-spinach mixture evenly over the pasta sheets. Spoon one-third of the remaining marinara over the ricotta layer and spread gently. Add another layer of pasta sheets. Repeat: ricotta, marinara, pasta. Repeat once more for a third time, ending with a final layer of pasta sheets on top. Pour all of the cashew béchamel evenly over the top pasta layer. Scatter the grated vegan mozzarella over the béchamel if using.
- Bake. Cover the baking dish tightly with foil (tent the foil slightly so it does not touch the béchamel surface — contact between foil and a dairy-free béchamel can cause the surface to tear when the foil is removed). Bake at 190°C for 35 minutes. Remove the foil and bake uncovered for a further 15–20 minutes until the top is golden-brown and bubbling at the edges, and the pasta can be pierced easily with a thin knife through the center of the lasagna (resistance means the pasta needs more time; no resistance means it is done).
- Rest and serve. Remove from the oven and leave to rest for 15 minutes before slicing — this resting time is essential for a clean slice; a lasagna cut immediately from the oven is still liquid at the center and will collapse into a heap. After 15 minutes, the layers will have settled and set enough to hold their shape when portioned. Use a sharp spatula to lift clean portions. Finish with torn fresh basil and a drizzle of olive oil.
Pro Tips
- The 25–30-minute sauce reduction is the most important step in the recipe for structural integrity — a well-reduced, thick marinara is what gives the lasagna its body and prevents a wet, soupy bottom layer. Test the sauce by drawing a spoon through it; the parted sauce should hold its edges briefly rather than immediately flowing back together. If in doubt, cook for 5 more minutes — an over-reduced sauce that becomes too thick can always be loosened with a splash of water; a too-thin sauce that makes the lasagna wet cannot be fixed after assembly.
- Use no-boil lasagna sheets — they are not just a convenience shortcut; they produce a better result in a layered lasagna than pre-boiled sheets because they absorb moisture from the surrounding sauces as they cook, pulling flavor from the sauce into the pasta itself. Pre-boiled sheets, which are already hydrated before entering the oven, cannot absorb sauce in the same way and sit as a more neutral layer. The no-boil technique requires the layer-moisture-balance method above to be followed correctly — without sufficient moisture from the surrounding layers, no-boil sheets will be undercooked and tough.
- The 15-minute rest is non-negotiable — every minute of resting time produces a noticeably cleaner slice. A lasagna rested for only 5 minutes will still be liquid at the center; at 10 minutes the edges hold but the center slides; at 15 minutes the whole lasagna is stable and sliceable. For an even cleaner slice (particularly useful for a dinner party), allow to rest for 20–25 minutes — the lasagna remains perfectly warm throughout.
- Make the béchamel last — the cashew béchamel thickens as it sits at room temperature after blending. Make it as close to assembly as possible. If made too far in advance and it has thickened to an unspreadable consistency, blend briefly with a splash of plant milk to return it to the correct pouring consistency.
Lasagna’s Italian Heritage: Layers, Regions, and a Dish That Predates Italy Itself
Lasagna is one of the oldest named dishes in the European culinary record — the word appears in a 14th-century Italian cookbook (the Liber de Coquina, believed to have been written at the Angevin court in Naples) in a form recognizably related to the dish we know today, making it among the first pasta dishes in any written European source. The name itself is older still: the Latin “lasanum” referred to a cooking pot, and the Greek “lasanon” to a chamber pot — both referring to the vessel rather than the food it cooked, in the same way that “casserole” describes both the dish and the vessel in modern English. The modern layered lasagna as we know it — flat pasta sheets alternating with sauce and filling, baked in a deep pan — was codified as a regional dish of Emilia-Romagna in northern Italy, specifically the city of Bologna, where the canonical recipe (lasagne verdi al forno, made with green spinach-infused pasta, a slow-cooked Bolognese meat ragù, and a béchamel sauce made with butter and whole milk) has been officially registered with the Bologna Chamber of Commerce since 1982, a depositing of a recipe with a civic institution that reflects the fierce regional pride Italians attach to their traditional dishes. Southern Italian and Neapolitan lasagna traditions are entirely different — richer, often made with ricotta rather than béchamel, sometimes incorporating hard-boiled eggs, meatballs, and layers of salumi, and associated particularly with festive occasions such as Carnevale and Easter rather than everyday cooking. The ricotta-and-spinach combination in this recipe draws from the southern Italian tradition rather than the Bolognese one, and its vegan adaptation — substituting tofu for dairy ricotta and a cashew cream for the béchamel — follows the same structural logic of the original while replacing only the dairy components that make the traditional version non-vegan.
Flavor Variations
- Roasted Vegetable Lasagna: Add a layer of roasted vegetables between the ricotta and marinara layers — thinly sliced zucchini, bell peppers, and eggplant roasted at 220°C for 20 minutes until caramelized work beautifully. The roasted vegetables add textural variety, additional flavor depth from the caramelization, and make the lasagna even more substantial. Roast the vegetables in advance (the day before, if desired) and layer them cold — they will heat through during baking.
- Lentil Bolognese Lasagna: Replace the plain marinara with a lentil Bolognese — add 1 × 400g tin of drained green lentils and 200g (7oz) of finely diced cremini mushrooms to the marinara sauce during the final 10 minutes of cooking. The lentils and mushrooms add a meaty, substantial texture and a significantly deeper umami flavor. Use this with the ricotta layer as directed, or omit the ricotta entirely for a simpler two-component lasagna.
- White Lasagna (No Tomato): Replace the marinara entirely with an extra batch of cashew béchamel, seasoned more assertively with garlic, white wine (add 60ml of dry white wine to the blender), and lemon. Layer as directed but using only béchamel between the pasta layers rather than alternating béchamel and marinara. Add the spinach-ricotta layer as directed. The all-white lasagna (lasagna bianca) is a dramatically different dish — richer, creamier, more delicate in flavor — and shows how completely the same structural approach produces a different result depending on the sauce.
Nutritional Highlights (Per Serving — Based on 8 Servings)
| Calories | Protein | Carbs | Fiber | Fat |
|---|---|---|---|---|
| ~390 kcal | 18g | 45g | 6g | 14g |
Storage
- Refrigerator: Keeps extremely well in a covered baking dish or sealed container for up to 5 days. Lasagna is one of the definitive make-ahead dishes — the flavors meld significantly overnight and the layers set more firmly, producing a cleaner, more cohesive slice on the second and third days than on the day of baking. Reheat individual portions in the microwave for 2–3 minutes, or reheat the whole dish covered with foil in a 180°C (355°F) oven for 25–30 minutes.
- Freezer: Freezes exceptionally well for up to 3 months. Freeze the unbaked assembled lasagna (before it goes into the oven) for the best results — assembled but unbaked lasagna freezes and reheats more evenly than baked-and-frozen lasagna, and produces a fresher-tasting result. To bake from frozen: add 20–25 minutes to the covered baking time and check doneness with a knife through the center. Alternatively, freeze baked lasagna in individual portions — an excellent meal prep strategy.
- Meal prep: Assemble the entire lasagna up to 24 hours in advance, cover tightly, and refrigerate before baking. This makes the lasagna an excellent dinner-party dish — all the work is done the day before, and the lasagna goes into the oven 90 minutes before serving. Add 10 extra minutes to the covered baking time to account for the cold starting temperature.
- The next day: Leftover lasagna slices, reheated in a skillet with a small splash of water and a lid on, achieve a particularly good result — the underside re-crisps against the pan while the interior heats through, producing a texturally superior result to microwave reheating.
Frequently Asked Questions
My lasagna came out watery with liquid pooling at the bottom. What went wrong?
A watery lasagna is almost always caused by one or more of three things: the marinara was not reduced enough before assembly (the most common cause); the spinach was not squeezed sufficiently dry before adding to the ricotta; or the tofu was not pressed before making the ricotta. For the next bake, focus on Stage 1 (sauce thickness) and Stage 2 (spinach squeeze) of the technique — these two steps together account for approximately 80% of the moisture management in the recipe.
Can I use store-bought vegan ricotta instead of making it from tofu?
Yes — store-bought vegan ricotta (several good brands are widely available) can replace the tofu ricotta entirely. Season it with a small amount of additional lemon juice, nutritional yeast, and salt to taste, as commercial vegan ricotta is often under-seasoned. Fold the squeezed spinach in as directed. The texture will be slightly different from the tofu version depending on the brand, but the overall result is very good and significantly faster.
The pasta sheets are still tough in the center after the recommended baking time. What should I do?
Tough pasta after the full baking time means either the no-boil sheets were not adequately surrounded by moisture (the sauces were too thick at assembly and could not hydrate the sheets during baking), or the sheets were stacked too thickly in places, creating a section that the oven heat and moisture could not penetrate. Re-cover with foil, add 2–3 tablespoons of water or vegetable stock around the edges of the dish, and return to a 190°C oven for 10–15 more minutes.
Can I make this gluten-free?
Yes — use certified gluten-free lasagna sheets (widely available in most supermarkets) in place of standard sheets. The rest of the recipe is naturally gluten-free. Gluten-free lasagna sheets may behave slightly differently in terms of moisture absorption — check doneness at 45 minutes of covered baking and extend if the sheets are still firm.
Tried this recipe? Leave a comment below and let us know how it turned out! Tag us on Instagram and Facebook — we love seeing your plant-powered creations. Looking for more addictive vegan snack and appetizer recipes? Browse all recipes on Easy Vegan Recipes — new recipes posted every single week!