Vegan Spinach Lasagna (Tofu Ricotta)
There’s something deeply satisfying about a steaming dish of layered lasagna: the way saucy tomato goodness marries with creamy, herb-scented ricotta and tender pasta. This Vegan Spinach Lasagna (Tofu Ricotta) version swaps dairy for plant-powered alternatives but keeps every comforting bite. It’s bright with tomato, richly spiced, and surprisingly easy to pull together—perfect for a cozy weeknight dinner or a weekend meal to impress friends. I tested the balance of herbs, garlic, and nutty cashew cream so the texture stays silky and the flavors pop.
Why you’ll love this recipe
- Comforting and wholesome: Classic lasagna vibes using pantry-friendly ingredients and fresh spinach.
- Protein-packed: Firm tofu adds substance and a ricotta-like texture without dairy.
- Creamy cashew white sauce: A silky alternative to béchamel made with cashews and dairy-free milk.
- Everyday ingredients: No specialty vegan cheeses required—use a dairy-free shred or nutritional yeast for topping.
Ingredients
Use these exact ingredient names and amounts when assembling the dish.
- 1 Onion (medium)
- 2 cloves Garlic
- 14 oz Chopped tomatoes (1 can)
- 5 oz Sieved tomato puree aka Tomato sauce
- 1 tsp Sweet paprika powder
- 2 tsp Oregano
- 2 tsp Basil
- Salt and Pepper to taste
- ½ cup Cashew
- ½ cup Dairy-free milk (homemade cashew milk)
- 1 clove Garlic
- 1 Tbsp Nutritional yeast
- ½ tsp Nutmeg optional
- Salt and Pepper to taste
- 1 Vegan white sauce from above
- 4 oz Fresh spinach leaves
- 10 oz Firm tofu
- 6 Lasagna pasta sheets
- 7 oz Dairy-free cheese or vegan parmesan or more nutritional yeast
Prep notes and tips
- If you prefer a smoother ricotta texture, press the firm tofu for 10–15 minutes before crumbling to remove excess water.
- Soak the cashews for at least 30 minutes in hot water if your blender is not high-speed. Drain before blending with dairy-free milk and garlic.
- Use no-boil lasagna sheets if you want a slightly easier assembly; otherwise, cook the lasagna sheets according to package directions until al dente.
- Adjust herbs and seasoning to taste—if you like a stronger herb profile, add an extra ½ teaspoon of oregano or basil.
Step-by-step directions

Below are clear, sequential steps to make this Vegan Spinach Lasagna (Tofu Ricotta). Follow them in order for the best result.
- Make the tomato sauce: Peel and finely chop the 1 Onion (medium). Mince the 2 cloves Garlic. Heat a tablespoon of oil in a medium saucepan over medium heat. Add the chopped onion and cook until translucent and fragrant, about 5–7 minutes. Add the minced garlic and stir for 30–60 seconds until aromatic.
- Pour in the 14 oz Chopped tomatoes (1 can) and the 5 oz Sieved tomato puree aka Tomato sauce. Stir to combine.
- Season the sauce with 1 tsp Sweet paprika powder, 2 tsp Oregano, 2 tsp Basil, and Salt and Pepper to taste. Reduce heat to low and simmer the sauce gently while you make the white sauce, about 10–15 minutes, stirring occasionally so it doesn’t stick. Taste and adjust seasoning if needed.
- Prepare the cashew white sauce (vegan béchamel): If you haven’t soaked the ½ cup Cashew, pour hot water over them and let sit 30 minutes, then drain. Into a blender add the drained cashews, ½ cup Dairy-free milk (homemade cashew milk), 1 clove Garlic, 1 Tbsp Nutritional yeast, ½ tsp Nutmeg optional, and Salt and Pepper to taste. Blend until completely smooth and creamy, scraping down the sides as necessary. Transfer this sauce to a small saucepan and warm gently over low heat, whisking so it stays silky. This is your 1 Vegan white sauce from above.
- Make the tofu ricotta: Crumble the 10 oz Firm tofu into a mixing bowl with your hands or fork until it resembles ricotta curds. Add a few spoonfuls of the warm Vegan white sauce and a pinch of Salt and Pepper to taste. Fold in the 4 oz Fresh spinach leaves—if the leaves are large, give them a rough chop first. The residual heat from the sauce and tofu will wilt the spinach slightly while still keeping a fresh green color. Taste and add additional seasoning if needed. If you prefer a smoother ricotta, pulse the tofu mixture briefly in a food processor but take care not to puree it completely; you want some texture.
- Assemble the lasagna: Preheat your oven to 375°F (190°C). Use a baking dish sized to fit 6 Lasagna pasta sheets in layered rows—an 8×8-inch or similar rectangular dish works well. Spread a thin layer of the tomato sauce across the bottom of the dish to prevent sticking.
- Place the first layer of lasagna pasta sheets (generally 2–3 sheets depending on your dish shape) over the sauce. Spoon and spread about one-third of the tofu ricotta mixture evenly over the pasta. Then drizzle or spread a thin layer of the tomato sauce over the tofu ricotta. Finish this layer with a light drizzle of the remaining Vegan white sauce if desired.
- Repeat for a second layer: add another set of lasagna pasta sheets, spread another one-third of the tofu ricotta, cover with more tomato sauce, and a bit of the white sauce. Top with the final set of lasagna pasta sheets and spread the remaining tomato sauce over the top layer. Pour the remaining Vegan white sauce across the top to create a creamy finish.
- Add the topping: Sprinkle the 7 oz Dairy-free cheese or vegan parmesan (or more nutritional yeast if you prefer) evenly over the top of the lasagna. This will form a golden, savory crust as the lasagna bakes.
- Bake: Cover the baking dish loosely with foil and bake in the preheated oven at 375°F (190°C) for about 25 minutes. Remove the foil and bake for an additional 10–15 minutes, or until the edges are bubbling and the top is lightly golden. If you like a browned finish, place under the broiler for 1–3 minutes—watch carefully so it doesn’t burn.
- Rest and serve: Remove the lasagna from the oven and let it rest for 10–15 minutes before slicing. Resting helps the layers set so the slices hold together. Serve warm with a simple side salad or steamed vegetables.
Serving suggestions

Slice this Vegan Spinach Lasagna (Tofu Ricotta) into generous portions and garnish with a light sprinkle of extra nutritional yeast or chopped fresh basil. A crisp green salad with lemon vinaigrette and a handful of toasted pine nuts complements the richness of the lasagna. For a heartier plate, serve alongside roasted root vegetables or garlic sautéed mushrooms.
Make-ahead and storage
- To assemble ahead: Build the lasagna in your baking dish, cover tightly with plastic wrap or foil, and refrigerate for up to 24 hours. When ready to bake, add a few extra minutes to the covered baking time to account for a cold dish.
- To freeze: After assembling (but before baking), wrap the covered dish well and freeze for up to 3 months. Thaw overnight in the fridge before baking and add 10–15 minutes to the covered baking time as it warms through.
- Leftovers: Store cooled pieces in an airtight container in the refrigerator for up to 4 days. Reheat in a 350°F (175°C) oven until warmed through, or microwave individual portions.
Ingredient swaps and variations
- Cashew-free white sauce: Substitute ½ cup sunflower seeds or blanched almonds blended with the dairy-free milk if you have a nut allergy. Adjust seasoning to taste.
- Greens: Replace or supplement the fresh spinach with kale or Swiss chard—blanch and squeeze out excess liquid before folding into the tofu ricotta.
- Spicy tomato sauce: Add ½ tsp red pepper flakes to the tomato sauce while simmering for a gentle kick.
- Herby boost: Fold chopped fresh parsley or basil into the tofu ricotta for an extra herbaceous lift.
Final thoughts
This Vegan Spinach Lasagna (Tofu Ricotta) brings together pantry staples and a few fresh ingredients to create a satisfying, layered casserole that’s creamy, herb-forward, and rich in texture. The tofu ricotta keeps the center light while the cashew-based white sauce adds silkiness to each bite. Whether you’re feeding a crowd or looking for a make-ahead weeknight dinner, this lasagna delivers on flavor and comfort without relying on dairy.
Enjoy the process of layering, the warm aroma that fills your kitchen as it bakes, and the gratifying moment when you cut into a perfectly set slice. Happy cooking—and don’t be surprised if this one becomes a regular in your rotation.

Vegan Spinach Lasagna (Tofu Ricotta)
Ingredients
- 1 onion (medium) peeled and chopped
- 2 cloves garlic peeled and chopped (use 1 clove for cashew white sauce separately)
- 14 oz chopped tomatoes 1 can
- 5 oz sieved tomato puree (tomato sauce)
- 1 tsp sweet paprika powder
- 2 tsp oregano
- 2 tsp basil
- salt to taste (for marinara and other components)
- black pepper to taste
- 1/2 cup cashews soaked (for cashew white sauce)
- 1/2 cup dairy-free milk homemade cashew milk recommended
- 1 clove garlic for cashew white sauce
- 1 Tbsp nutritional yeast for cashew white sauce
- 1/2 tsp nutmeg optional, for cashew white sauce
- 1 vegan white sauce made from the cashew white sauce ingredients above
- 4 oz fresh spinach leaves washed and chopped
- 10 oz firm tofu pressed and crumbled
- 6 lasagna pasta sheets
- 7 oz dairy-free cheese or vegan parmesan or additional nutritional yeast, for topping
Instructions
- Preheat the oven to 400°F (204°C).
- Heat a little olive oil in a non-stick frying pan over medium heat; add the chopped onion and cook until glossy, about 5 minutes.
- Add the chopped garlic to the pan and cook 1–2 minutes until fragrant.
- Stir in the chopped tomatoes, tomato puree, paprika, oregano, basil, salt, and pepper; simmer for about 5 minutes to make the marinara sauce.
- While the sauce simmers, prepare the cashew white sauce: drain soaked cashews and combine in a blender with 1/2 cup dairy-free milk, 1 clove garlic, 1 Tbsp nutritional yeast, nutmeg (if using), salt, and pepper; blend until smooth and creamy.
- Press the firm tofu to remove excess water, then crumble it into a mixing bowl with your fingers.
- Add the cashew white sauce to the crumbled tofu and mix thoroughly to form the spinach ricotta base.
- Finely chop or pulse the washed fresh spinach in a food processor and fold it into the tofu mixture until evenly distributed.
- Spoon a thin layer of marinara sauce into the bottom of a 9×7×2-inch (23×18×5 cm) oven-safe dish.
- Layer the lasagna: place pasta sheets, spread a layer of marinara, then add a layer of the spinach-tofu ricotta; repeat the pasta→marinara→ricotta sequence so you have three stacked sets (about 3 layers) to fill the dish.
- Finish with a top layer of marinara and sprinkle the dairy-free cheese or vegan Parmesan (or extra nutritional yeast) over the surface.
- Bake the assembled lasagna in the preheated oven for 30 minutes, until heated through and the top is lightly browned.
- Let the lasagna rest a few minutes before slicing and serving.
Equipment
- Non-stick frying pan (10.5 inch / 26 cm)
- immersion hand blender or blender/food processor
- tofu press or heavy weight and towel
- Mixing Bowl
- oven-safe glass baking dish (9×7×2 inch / 23×18×5 cm)
- Measuring Cups and Spoons
Notes
- Frozen spinach can be used if fully thawed and excess water squeezed out.
- One bag (~10 oz / 280 g) frozen spinach approximates 1 lb fresh; this recipe uses 4 oz fresh.
- To substitute frozen, use about 2.5 oz (75 g) thawed frozen spinach for the 4 oz fresh called for here.
- Press tofu well to avoid a watery filling.

