Tofu Lettuce Wraps (Better Than PF Chang’s)

One of my favorite healthy dinner recipes. It's high in protein, full of flavor, and perfect for when you're craving something easy and fresh.

Make these Tofu Lettuce Wraps when you’re craving something fresh and healthy without sacrificing flavor or satisfaction. The tofu filling is so savory and addictive, you may find yourself eating it straight out of the pan before it ever makes its way into the lettuce wraps! This quick and easy meal is one of my favorites during the summer especially, since it’s so refreshing. (It’s basically a salad, after all.)

This recipe was originally inspired by PF Chang’s popular lettuce wraps, which you can order vegetarian. Our version kicks things up a notch by adding tofu to boost the protein. (Their version is all-veggie.) If I do say so myself, I think the homemade lettuce wraps are far tastier and fresher!

vegan lettuce wraps with crumbled tofu

Why You’ll Love These Vegan Lettuce Wraps

There are a few reasons why vegan lettuce wraps are one of my all-time favorite meals. They are:

  • Healthy (but they taste like takeout). Made with fresh, simple ingredients, plant-based protein, and packed with fiber, you can eat well knowing you’re putting good stuff into your body.
  • Super refreshing. This dish is great year-round, but I especially crave it once the weather starts to warm up in the spring and summertime. We usually eat the better part of a whole head of butter lettuce when we eat this meal! If you’re not a big fan of traditional salads, this is one way to sneak in plenty of fresh greens without feeling like you’re eating rabbit food.
  • Soooo easy to make. Seriously. They require a little bit of chopping and maybe 15 minutes of time on the stove, and then they’re ready! Just one pan to clean up. You can even cut down on prep time by using garlic and ginger paste from a jar. (No one’s judging.)

Not to mention — this is a great vegan meal prep concept! Whip up a big batch of the filling and divvy it up into smaller portions for an easy, nourishing lunch or dinner throughout the week.

Aside from using the tofu filling for lettuce wraps, you can also serve it in rice bowls or over noodles for a slightly heartier meal.

Ingredients for Tofu Lettuce Wraps

  • Tofu. This is the base for this recipe. It provides the protein and a lot of the textural experience. And as we all know, tofu is amazing at soaking up a delicious sauce. Firm or extra-firm tofu works best in this dish. Softer tofu varieties aren’t recommended!
  • Butter or iceberg lettuce. This comes down to preference! I love iceberg lettuce because it’s super crisp and hydrating. Butter lettuce (such as Bibb lettuce) has a softer texture and the leaves are the perfect size for vegan tofu lettuce wraps. You can even use romaine lettuce leaves to make little “boats” if you like.
  • Onion, scallions, garlic, and fresh ginger. These aromatics are going to pack tons of flavor into our tofu mixture. So good!
  • Water chestnuts. These add a super satisfying crunch to every bite.
  • Vegan oyster sauce (or hoisin). Vegan oyster sauce does a lot of the heavy lifting in this recipe. It boasts a super robust umami flavor with some sweetness to round it out. That said, I know it can be challenging to find if you don’t live near an Asian market, so I will recommend hoisin as an easier-to-find alternative. Hoisin has a different flavor profile (a little bit lighter, sweeter, and tangier), but will taste good in this recipe too.
  • Chili garlic sauce (sambal oelek). Okay, this is optional, but we are spice lovers in this household so I always add a heaping tablespoon (or two) of chili paste.
  • Soy sauce. For a hit of that classic umami flavor. Feel free to sub in a gluten-free alternative such as coconut aminos or tamari.
  • Optional toppings. You can add a variety of different toppings to your tofu lettuce wraps, but my go-to additions are shredded carrot, chopped toasted peanuts, sliced avocado, toasted sesame seeds and fresh cilantro. A drizzle of toasted sesame oil or crispy rice noodles are both delicious too!
left: a block of tofu surrounded by other ingredients. right: a bowl of crumbled tofu.

What Even is Vegan Oyster Sauce?

I know you may be perplexed by the thought of “vegan oyster sauce.” But it’s actually quite common at many Asian grocery stores and is usually derived from shiitakes or other mushrooms. It’s great whenever you want to add a ton of umami and dimensionality to a recipe without adding in a bunch of separate ingredients.

If you don’t have an Asian market near you, I have even been able to find it at places like Safeway and Sprouts! Kikkoman makes one, and Sprouts has their own store brand (at the time of writing this in spring 2024). You can also order it online.

It’s delicious in these tofu lettuce wraps but also makes an excellent sauce for stir fries and a variety of Asian noodle dishes (like homemade chow mein).

How to Make Tofu Lettuce Wraps

cooking crumbled tofu in a carbon steel wok

Stir-fry crumbled tofu until it’s golden brown and slightly crisp. This will help cook off the extra moisture and firm up the tofu so your filling isn’t mushy. (If you pressed your tofu ahead of time, this step will go by faster.) Once it’s browned to your preference, transfer it to a bowl and set it aside.

left: chili paste blooming in oil. right: onions and scallions being stir-fried in oil.

In the same skillet or wok, heat oil and stir-fry onion, the white parts of the scallion, and (optional) chili paste over medium-high heat until onion is translucent.

onion, scallions, garlic, and ginger being stir-fried in a carbon steel wok

Toss in your garlic and ginger and pan-fry for another minute or two. Cook for a few minutes until garlic and ginger are tender. By this point, your kitchen should be smelling real nice.

crumbled tofu, sauce, water chestnuts, and scallions being added to stir-fry

Add the browned tofu back into the pan along with soy sauce and vegan oyster sauce (or hoisin). Stir fry for a minute or two until the tofu is evenly coated and the sauce begins to caramelize slightly. Then toss in water chestnuts and the green parts of the green onions.

filling for tofu lettuce wraps being stir-fried in a wok

Stir-fry for a few extra minutes just to heat through. To serve, pile your filling into your lettuce leaves and top with whichever additions you please.

👩‍🍳 Sarah’s Recipe Notes 📝

  • Press your tofu if you have time. It’s not strictly necessary, but it will help your tofu brown much faster and more evenly. You can either use a tofu press or do it the old fashioned way: wrap your tofu in a clean kitchen towel (or paper towels) and weigh it down with a slightly heavy object (like a cutting board or cookie sheet). Even pressing it for a few minutes while you dice up your other ingredients is great.
  • Switch up your protein choice. Feel free to sub in a different vegan protein if you’re into that. Vegan beef crumbles, vegan chicken pieces, and soy curls are a few “meatier” options. Crumbled tempeh would be a great choice too.
  • Get creative with your toppings and add-ins. This recipe is a perfect blank canvas; don’t be afraid to improvise. Add any of your favorite diced veggies into the mix — shiitakes, red bell peppers, zucchini. And switch up your fresh toppings depending on what you’re craving. Some thought starters: fresh sliced avocado, toasted almonds, pickled daikon and carrot, chopped peanuts, fresh herbs (such as cilantro or Thai basil). A squeeze of fresh lime would also elevate this dish! The sky’s the limit.

Storage and Reheating

The tofu filling will stay good in the fridge in an airtight container for up to 3 days. Just keep your lettuce separate from your filling until you’re ready to eat.

To reheat, simply pop the filling in the microwave or back into a pan and heat it up over the stove.

More Tofu Recipes

vegan lettuce wraps with beefy crumbles

Tofu Lettuce Wraps

One of my favorite healthy dinner recipes. It's high in protein, full of flavor, and perfect for when you're craving something easy and fresh.
4.9 from 7 votes
Print Pin Rate
Prep Time: 20 minutes
Cook Time: 15 minutes
Servings: 5 servings
Author: Sarah Sullivan

Video

Equipment

  • skillet or nonstick wok

Ingredients

  • 1 (14 or 16 oz) block firm or extra-firm tofu
  • 2 tablespoons vegetable oil I like peanut oil
  • 1 small white onion or 1/2 large onion, diced
  • 2 sliced green onions white and green parts separated
  • 1 tablespoon minced garlic
  • 2 teaspoons minced ginger
  • 1 (8 oz) can water chestnuts drained and diced
  • 2 tablespoons soy sauce
  • 1/4 cup vegan oyster sauce or hoisin sauce (see notes)
  • 1 tablespoon sambal chili paste optional
  • 1 head iceberg, butter, or romaine lettuce leaves separated, cleaned and dried

Topping Ideas

  • shredded carrots
  • toasted nuts I like peanuts, cashews, or sliced almonds
  • fresh herbs such as cilantro, mint, or Thai basil
  • crispy rice noodles
  • fresh mung bean sprouts

Instructions

Press the Tofu (optional but recommended)

  • If you can think ahead, I recommend pressing your tofu for at least 15 minutes to help it brown faster and more evenly. You can use a tofu press, or simply wrap your block of tofu in a clean, lint-free kitchen towel and gently weigh it down with a heavy plate or small cutting board.

Cook the Tofu Filling

  • Brown the tofu: Heat 1 tablespoon vegetable oil in a nonstick skillet or wok over medium-high heat. When the oil shimmers, crumble in the tofu and stir fry until golden brown. This usually takes around 8-10 minutes depending on how well you pressed your tofu. Once tofu is browned to your preference, remove it to a bowl and set aside.
  • Stir-fry aromatics: In the same pan/wok, heat another tablespoon vegetable oil over medium-high heat. Once oil is hot, add in the diced onion, white parts of the scallions, minced garlic, minced ginger, and chili paste (if using). Stir-fry 3-5 minutes, or until onions are translucent.
  • Add tofu and sauce: Add back in the browned tofu, along with the diced water chestnuts, soy sauce, and vegan oyster sauce (or hoisin sauce). Stir-fry for 3-5 minutes to distribute the sauces and to heat through. The sugars in the sauce may begin to caramelize slightly (this is good), but keep an eye on it and reduce the heat as needed so they don't burn.
  • Finishing touches: Taste and adjust to preference. Stir in the green parts of the scallions and serve.

Serve Lettuce Wraps

  • To serve, scoop filling into lettuce leaves, add your favorite toppings, and enjoy!

Notes

  • Where to find vegan oyster sauce: Check your local Asian market; many will carry a mushroom-based vegan oyster sauce alternative. This is a pantry staple for me.
  • Vegan oyster sauce alternatives:You can also use hoisin sauce (it’s sweeter than oyster sauce), or a stir fry sauce of choice. In a pinch, even teriyaki sauce can be used, though the flavor profile will be very different.
  •  
Did you make this recipe?We’d love for you to leave a review on the website! You can also share a photo on IG and tag @sarahsvegankitchen_ or #sarahsvegankitchen.

4 Comments

  1. This recipe was so good! I loved the water chestnuts in it as it added a nice crunch and texture! Next time I am adding cilantro, as I think it will take it next level!

  2. This was one of the best recipes I’ve made in a long time. Will ABSOLUTELY make again!

  3. I made these for my family and they loved them!! thank you for sharing this recipe

  4. This recipe was great! Easy to make!!

4.86 from 7 votes (3 ratings without comment)

Leave a Comment

Your email address will not be published. Required fields are marked *

*

Recipe Rating