These Tofu Lettuce Wraps are inspired by PF Chang's-style lettuce wraps, but made with simple plant-based ingredients and an easy homemade sauce. Golden crumbled tofu gets cooked with garlic, ginger, hoisin sauce, crunchy water chestnuts, and green onions, then served in fresh lettuce cups for a quick and flavorful meal ready in just 30 minutes. I love making them on busy weeknights because they feel a little like takeout, but they're much simpler and lighter.

Traditional PF Chang's-style lettuce wraps are made with ground chicken, but this vegan version uses crumbled tofu instead while keeping the savory, slightly sweet flavors that make this dish so popular. The sauce comes together with hoisin sauce, soy sauce, rice vinegar, and sesame oil for an easy restaurant-style flavor at home. Water chestnuts add the classic crunchy texture, but you can leave them out if you can't find them.
I usually serve these lettuce wraps for a quick lunch or easy weeknight dinner, but they also work really well as an appetizer or party dish because everyone can build their own wraps. The tofu filling is great for meal prep too since you can make it ahead of time and store it in the fridge for several days. When ready to serve, just reheat the filling and spoon it into fresh lettuce leaves for a simple meal that feels fresh and flavorful every time.
If you enjoyed these Tofu Lettuce Wraps, you might also like my Kung Pao Tofu, Sesame Tofu, and Tofu Fried Rice. These easy tofu recipes are full of flavor, simple to make, and perfect when you're craving takeout-style food but want a lighter plant-based option you can make at home.
Why You'll Love These Tofu Lettuce Wraps
You're going to love this recipe because:
- Ready in 30 minutes: This recipe comes together quickly with simple steps, making it perfect for busy weeknights when you want something flavorful without spending too much time cooking.
- Full of flavor and texture: The combination of golden tofu, savory hoisin sauce, fresh ginger, crunchy water chestnuts, and crisp lettuce makes every bite satisfying and delicious.
- Inspired by restaurant-style lettuce wraps: These wraps have the same sweet and savory flavors people love in PF Chang's-style lettuce wraps, but made with simple plant-based ingredients.
- Lighter but still satisfying: Serving the tofu in lettuce cups keeps the recipe fresh and light while still feeling filling enough for lunch or dinner.
- Great for leftovers: The tofu filling reheats really well, so you can make it ahead for quick meals during the week.

Tofu Lettuce Wraps Ingredients
- Tofu: Firm or extra-firm tofu are the best options for this recipe because they hold their shape well and brown nicely in the skillet. Soft or silken tofu won't work here since they fall apart too easily. Pressing the tofu helps remove excess moisture and gives it a crispier texture, but if you don't have time, you can skip this step and just pat it dry well with paper towels. You can also check out my How to Press Tofu tutorial for more tips.
- Neutral oil: I usually use canola oil, but any neutral-flavored oil will work well here. Avocado oil, vegetable oil, or another oil you like for cooking are all great options.
- Garlic and ginger: Fresh garlic and ginger give these lettuce wraps the best flavor, but garlic powder and ground ginger also work if needed. Substitute each garlic clove with about ⅛ teaspoon garlic powder, and use ¼ teaspoon ground ginger instead of fresh ginger.
- Hoisin sauce: This is one of the main ingredients that gives the filling its sweet and savory flavor. Most grocery stores in the U.S. carry it in the Asian food section.
- Water: Helps thin the sauce slightly so it coats the tofu evenly.
- Soy sauce: I usually use regular soy sauce, but low-sodium soy sauce works well if you want the filling less salty. Tamari is a great gluten-free option, and coconut aminos work if you prefer a slightly sweeter flavor.
- Vinegar: I like using rice vinegar because it has a mild flavor that works really well in Asian-inspired sauces. However, apple cider vinegar or white vinegar also work if that's what you have on hand.
- Sesame oil: This ingredient is optional, but I really recommend using it if you can find it because it adds a delicious toasted flavor that makes the sauce taste more authentic.
- Water chestnuts: They add a crunchy texture that makes these lettuce wraps feel more like restaurant-style versions. If you can't find them, you can leave them out, although the texture will be different.
- Green onions: The white parts are cooked with the filling, while the green parts are used for topping. They add a fresh onion flavor that works really well in these lettuce wraps.
- Lettuce: I used batavia lettuce because that's what I had on hand, but butter lettuce and iceberg lettuce are usually the best options since the leaves are sturdy and easy to fill. Any type of lettuce with large leaves that can hold the filling will work.
- Sesame seeds: Optional, but they add extra flavor and a nice finishing touch.
Find the full recipe with exact measurements in the recipe card below.
How to Make Tofu Lettuce Wraps

- If you have time, press the tofu for 15-30 minutes for the best texture. To do this, wrap the tofu in a clean kitchen towel and place something heavy on top, or use a tofu press if you have one. If you're short on time, simply pat the tofu dry well with paper towels instead.

- Use your hands or a fork to crumble the tofu into small pieces that resemble ground meat.

- Add the hoisin sauce, water, soy sauce, rice vinegar, and sesame oil, if using, to a small bowl and whisk until combined. Set aside.

- Heat the oil in a large skillet over medium-high heat. Add the tofu and cook for 6-8 minutes, stirring occasionally, until lightly browned and most of the moisture has evaporated. Let it sit undisturbed for 1-2 minutes at a time so it browns properly.

- Add the garlic, ginger, and white parts of the green onions. Cook for 1-2 minutes, stirring often, until fragrant.

- Pour the sauce into the skillet and stir well to coat the tofu. Continue cooking for 2-3 minutes, stirring occasionally, until the sauce thickens slightly and becomes sticky.

- Stir in the chopped water chestnuts and cook for 1 more minute, just until heated through.

- Spoon the tofu mixture into the lettuce leaves and top with the green parts of the green onions and sesame seeds if desired.
Tips for the Best Results
- Press the tofu if possible: Removing some of the excess moisture helps the tofu brown better and gives it a crispier texture. If you're short on time, just pat it dry well with paper towels.
- Don't stir the tofu constantly: Letting it cook undisturbed for 1-2 minutes at a time helps it develop a better golden color and texture.
- Use a large skillet: Giving the tofu enough space helps it brown instead of steam.
- Add the water chestnuts near the end: This keeps them crunchy and gives the lettuce wraps a more restaurant-style texture.
- Separate the green onion parts: Cook the white parts with the filling and use the green parts for topping so they stay fresh and vibrant.

Serving Suggestions
These lettuce wraps are great on their own, but you can also serve them with a few simple sides for a more filling meal.
- Pair them with my Vegan Fried Rice for an easy, satisfying meal.
- Serve them with steamed rice if you want something simple that pairs well with the savory sauce.
- They also work great as an appetizer alongside recipes like Vegan Spring Rolls or Vegetable Tempura.
- Top them with sesame seeds, chopped peanuts, cashews, or a drizzle of sriracha for extra flavor and crunch.
- Serve them with a simple Asian-style side like Thai Cucumber Salad or edamame for a fresh and easy meal.
How to Store and Reheat Leftovers
- Fridge: Store the tofu filling in an airtight container in the refrigerator for up to 4 days. I recommend storing the lettuce leaves separately so they stay fresh and crisp.
- Freezer: The tofu filling freezes well for up to 2 months. Let it cool completely before transferring it to a freezer-safe container.
- Thaw: Transfer the filling to the refrigerator and let it thaw overnight before reheating.
- Reheat: Warm the filling in a skillet over medium heat for a few minutes, or microwave it until heated through. If needed, add a splash of water to loosen up the sauce.
Frequently Asked Questions
No, but I highly recommend it if you have the time. Pressing the tofu removes excess moisture, which helps it brown better and gives it a crispier texture. If you're short on time, you can simply pat it dry with paper towels instead. You can also check out my How to Press Tofu guide for more tips.
Butter lettuce and iceberg lettuce are usually the best options because the leaves are sturdy and easy to fill. However, any lettuce with large leaves that can hold the filling will work.
Yes. The tofu filling can be made ahead and stored in the fridge for several days. I recommend storing the lettuce separately and assembling the wraps right before serving.
Yes. Water chestnuts add crunch and make the filling feel more like restaurant-style lettuce wraps, but the recipe still works well without them. If you can't find them, simply leave them out.
Definitely. Add sriracha, chili garlic sauce, red pepper flakes, or chopped chilies to the sauce if you want more heat.

More Vegan Tofu Recipes
If you want more ideas and tips for cooking tofu, check out my How to Cook Tofu guide.
Did you make this recipe? Leave a comment and a rating below. I'd love to hear how it turned out!

Love it? Leave a rating!
Tofu Lettuce Wraps
Ingredients
For the filling:
- 1 (14-ounce) block firm or extra-firm tofu
- 1 tablespoon neutral oil, I used canola oil
- 3 garlic cloves, minced
- 1 teaspoon fresh ginger, peeled and minced or grated
- 1 (8-ounce) can water chestnuts, drained and diced, optional but recommended
- 2 green onions, sliced, white and green parts separated
- 1 head lettuce, such as iceberg or butter lettuce, leaves separated
- 1 teaspoon sesame seeds, optional but recommended
For the sauce:
- 2 tablespoons hoisin sauce
- 2 tablespoons water
- 1 tablespoon soy sauce
- 1 tablespoon vinegar, I used rice vinegar
- 1 teaspoon sesame oil, optional but recommended
Instructions
- If you have time, press the tofu for 15-30 minutes to remove excess moisture for the best texture. If not, simply pat it dry well with paper towels. To press the tofu, wrap it in a clean kitchen towel and place something heavy on top, or use a tofu press if you have one.
- Crumble the tofu with your hands until it resembles ground meat.
- In a small bowl, whisk together the hoisin sauce, water, soy sauce, vinegar, and sesame oil, if using. Set aside.
- Heat the oil in a large skillet over medium-high heat. Add the crumbled tofu and cook for 6-8 minutes, stirring occasionally, until lightly golden and most of the moisture has evaporated. Let it cook undisturbed for 1-2 minutes at a time so it browns properly.
- Stir in the garlic, ginger, and the white parts of the green onions. Cook for 1-2 minutes, stirring frequently, until fragrant.
- Pour the sauce into the skillet and stir well to coat the tofu. Cook for 2-3 minutes, stirring occasionally, until the sauce thickens slightly and becomes lightly sticky.
- Stir in the chopped water chestnuts and cook for 1 more minute, just until heated through.
- Spoon the tofu mixture into the lettuce leaves and top with the green parts of the green onions and sesame seeds if desired.
Notes
- Store the tofu filling in an airtight container in the refrigerator for up to 4 days. Keep the lettuce leaves separate so they stay crisp.
- Let the filling cool completely before freezing it in a freezer-safe container for up to 2 months.
- Transfer the filling to the fridge the night before so it can thaw completely.
- Reheat the filling in a skillet over medium heat or in the microwave until hot. Add a splash of water if the sauce thickens too much.















About Iosune
Hi, I’m Iosune! I’m a food lover, home cook, recipe creator, and co-founder of Simple Vegan Blog, which I started in 2014 to show how easy and delicious vegan cooking can be.