| | | | | | | | | |

Easy Tofu Pad Thai, Vegan

This post contains links to affiliate websites, such as Amazon, and we receive an affiliate commission for any purchases made by you using these links. We appreciate your support!
Vegan tofu pad thai on a green plate.

Chewy noodles, crisp vegetables, and meaty tofu all coated in a full-bodied sauce with fiery chili flakes, umami-packed soy sauce, salty vegan fish sauce, and tangy tamarind paste: It’s tofu pad thai, one of the most beloved Asian dishes worldwide. The dish has a fascinating history — Pad Thai was dreamt up by a dictator who moved mountains (not literally, but he did change visa laws!) to ingrain a love of the famous noodles in the local populace. It didn’t take long for that love to spread abroad, especially to America and Britain, where pad thai rivals vegetable chow mein for popularity. 

My first rendezvous with tofu pad thai was when I was in the process of moving to the big city. I couldn’t afford the train in those days, so I was stuck on an 11-hour coach journey. Needless to say, when I arrived, I was in need of good food. And good food I got, in the form of a little market stall selling pad thai and green thai curry. I took my first bite of the chewy, spicy noodles, and since then, no other pad thai has compared — except this one! The lovely lady who runs the humble stall still recognizes me each time, even if it’s been months or years since I last visited. 

The process of making a tofu pad thai that’s even better than takeout was hard work. I failed many times, got distracted, and finessed a restaurant-style tofu katsu curry instead. Finally, I settled on this recipe, which is halfway between a takeout or restaurant-style pad thai and an authentic bowl straight from the street-style food of Thailand. It’s got the best of both worlds: authentic flavor and accessible, easy-to-find ingredients. Vegan pad thai is never going to be completely authentic, so I took some liberties, but trust me, there’s no compromising on flavor. 

The best part of this dish — other than the delightful citrusy notes and the tofu that soaks up all of the moreish flavors — is that cooking it is simple. And quick. Yes, you heard me say quick! It only takes about 20 minutes, from beginning to end. 

Tofu pad thai with vegetables on a plate.

Tofu Pad Thai Allergens

Do you have questions about who this recipe is suitable for? No worries, all your answers are below! 

  • Is tofu pad thai vegan? Yup! This simple tofu pad thai recipe is 100% vegan as written. Conversely, most pad thai recipes aren’t even vegetarian since they contain fish sauce and animal proteins.
  • Is tofu pad thai gluten-free? No. You may be shocked that vegan tofu pad thai isn’t naturally gluten-free. While unlike other noodle recipes, pad thai noodles are rice-based, soy sauce is not coeliac-friendly since it contains wheat! However, the good news is it’s unbelievably easy to adapt this recipe into a gluten-free dish. Replace the soy sauce with equal amounts of tamari, and check that the vegan oyster sauce and fish sauce are both gluten-free.

Unfortunately, making this authentic pad thai recipe soy-free is near impossible. Soy is an essential umami flavoring, from the soy sauce (or tamari) to the tofu. 

Additionally, while the recipe isn’t traditionally nut-free, just one simple change makes it suitable for anyone with nut allergies. Just omit the crushed peanuts in the garnish; I don’t add any to the body of the dish. 

What Tofu Is Used in Pad Thai?

You can make pad thai without tofu, but honestly … this recipe is so good it will invariably convert tofu haters. It’s the most authentic plant-based protein for pad thai, replicating the texture of chicken and acting as a sponge to soak up all those glorious citrusy, caramelized, fiery flavors from the pad thai sauce. 

But, if you’re new to the wonderful world of tofu, you may be asking what variety to use in pad thai. 

I love to use something known as deep-fried tofu puffs. They’re available in the refrigerated section at most Asian grocery stores and usually come in a few different shapes: large cubes, small cubes, and strips. The strips are best paired with noodles, while the cubes make delicious salt and pepper tofu. These deep-fried tofu puffs have a different texture to ordinary tofu; it’s spongy, light, and airy. This texture makes them less meaty, but it does result in the tofu soaking up more of the flavors from the sauce. That’s a win in my book! I also love to use them in my tofu satay curry for this reason.

Alternatively, if you can’t find deep-fried tofu puffs or prefer a dense, meatier texture, you want to opt for extra-firm tofu. I have a two-ingredient recipe for homemade tofu, but you can buy it at most Western and Asian grocery stores, too. 

Avoid silken tofu, medium tofu, and dried tofu. None of those will work for this vegan pad thai recipe! 

Vegetarian pad thai with tofu garnished with coriander leaves.

Tofu Pad Thai Ingredients

If, like me, you’ve sat down to eat a plate of gorgeous pad thai at a restaurant and wondered what secret ingredients they use, read on! Use this list, which explains the purpose of each component, as a shopping list! For the ingredient quantities, scroll down to the recipe card.

What is Pad Thai Sauce Made Of?

The secret to the best pad thai sauce is balancing the sweet, salty, savory, sour, and spicy notes.

Plus, because we’re making a vegan pad thai, there’s no way we can be completely authentic. Classic pad thai sauce uses ingredients like fish sauce and dried shrimp paste, which aren’t plant-based! So, we use a few alternatives to achieve the same distinctive umami taste.

  • Tamarind sauce gives tofu pad thai its distinctive sour and tangy flavor. Although I have used fresh tamarind in the paste, tamarind sauce is much easier and faster with less fuss.
  • Palm sugar balances the sour, salty, and umami flavors with subtle sweetness. Palm sugar is the traditional choice, but brown sugar can be a good substitute. 
  • Soy sauce is used for umami saltiness and is essential for the best pad thai recipe! I suggest using half light soy sauce and half dark soy sauce for the best flavor.
  • Vegan oyster sauce isn’t a must, but it replaces the traditional flavor of dried shrimp (which isn’t vegetarian or vegan!). Find it in your local health food store, Asian supermarket (if you’re lucky!), or on Amazon.
  • Vegan fish sauce is salty and savory, with an incredible depth of flavor. I recommend getting hold of some or making your own! 
  • Chili flakes add an undertone of spice without the dish becoming unbearably fiery. You can adjust this to your taste!

And What About Everything Else?

  • Pad thai noodles are wide, flat rice noodles that are gluten-free and chewy.
  • Groundnut oil is for frying all the vegetables. You can use neutral sunflower oil if you don’t have groundnut oil (peanut oil) on hand, but it tastes fantastic with this vegan pad thai.
  • Garlic cloves add a delicious pungent, almost sweet flavor. I suggest mixing in some fresh garlic chives for an ultra-garlicky touch if you can find them! 
  • Shallot adds fresh, mild flavor to the dish. 
  • Vegetables like beansprouts, bell peppers (capsicum), and carrots provide crunch. 
  • Tofu is the plant-based protein in this vegan pad thai recipe! I use fried tofu puffs, but you can also use homemade extra-firm tofu
  • Lime juice squeezed on at the end compliments the flavors of sour tamarind, adding a depth of citrus. 
  • Optional toppings like peanuts, spring onions, and Thai basil all help to elevate the dish. 
Heart Icon.

Hot tip!

Since I used fried tofu puffs, I didn’t need to pre-press my tofu. If you’re using commercial extra-firm tofu, it’s always a good idea to use a tofu press and press it for upwards of 30 minutes to create a dense texture. This will hold the most amount of flavor and achieve a truly “meaty” effect! Alternatively, you can make my homemade extra-firm tofu.

And that’s it! If you enjoy cooking Asian recipes regularly, most of the ingredients you need for this tofu pad thai are likely already in your pantry. Otherwise, you can find everything in your local Asian grocery store.

A plate of vegan pad thai with tofu and vegetables on a plate, with chopsticks picking up the noodles.

How to Make Tofu Pad Thai

Like most Asian stir-fry recipes, making pad thai is surprisingly easy, even for beginners.

I advise starting ahead of time since it’s imperative you soak, not cook your noodles (for the best texture!). Aside from this, depending on your knife skills, the longest part of the process might be the prep. Stir-frying the actual dish should only take a maximum of 15 minutes.

Alright, should we jump into an overview of the process? Don’t forget that for the complete instructions and timings, you’ll want to skip down to the recipe card.

  1. Soak the noodles in a large bowl for around 30 minutes.
  2. Make the pad thai sauce by mixing tamarind sauce, palm sugar, soy sauce, vegetarian oyster sauce, vegan fish sauce, chili flakes, and salt to taste. 
  3. Stir fry the vegetables and tofu in a large wok. Add the garlic, shallots, shredded carrots, bell peppers, beansprouts, and tofu. Cook until al-dente and set aside on a separate plate. 
  4. Cook the sauce until slightly thickened, then add the noodles, vegetables, tofu, lime juice, and spring onions. Mix well. 
  5. Garnish with chopped peanuts, coriander (cilantro) leaves, more lime wedges, and extra beansprouts. 

Tips to Make the BEST Vegan Pad Thai

  • Don’t boil the noodles! Boiling the rice noodles is the BIGGEST mistake I see when beginners make pad thai. Instead of boiling your noodles, soak them in warm water for around 30 minutes. The noodles won’t cook, but they will soften — when we stir-fry them later, they will soften further, achieving the ideal soft texture with a hint of chewiness. 
  • Avoid using vegetables with a high moisture content such as pak choy (bok choi), courgettes/zucchini, or spinach. These vegetables can cause the tofu pad thai to become soggy. 
  • Prep the ingredients ahead of time to avoid stress when you’re stir-frying! Having the vegetables cut and ready to go makes the difference between an unpleasant cooking experience and a fun one. 
  • Use the right pan, ideally a wok or a seasoned deep-sided frying pan. You don’t want the ingredients to stick, meaning a seasoned pan is essential. It also needs to have plenty of room! 
  • Don’t overcrowd your pan as the ingredients will steam, rather than frying — an easy path to a mushy pad thai, and nobody wants that. 
  • Add some garnishes to really finish off the dish. Lime wedges, fresh beanprouts, chopped peanuts, and fresh coriander (cilantro) are all indispensable. Thai basil is also the perfect aromatic and fragrant addition. Conversely, street vendors in Thailand often add lime and salt-rubbed banana flowers to the side of the plate. Experiment! 
Chopsticks picking up vegan pad thai noodles.

Storing, Freezing, and Reheating Tofu Pad Thai

How to Store Pad Thai

If you find yourself with leftovers and pondering, “How long does pad thai last?” — well, in my household, this recipe doesn’t last long at all! We rarely have leftovers.

However, if you want to meal prep for the week ahead or can’t finish the recipe portion, refrigerate the tofu pad thai in an airtight container for up to three days.

Can You Freeze Pad Thai?

I reaaaaallllyyy don’t recommend freezing leftover tofu pad thai. The rice noodles lose much of their texture when frozen, meaning that reheating the dish is almost impossible. Ultimately, it’s one of those dishes that’s best eaten fresh.

How to Reheat Vegan Pad Thai

For optimal results, use a large pan to reheat pad thai. Begin by delicately separating the noodles with a fork to prevent clumping after refrigeration. Heat a high-smoke point oil until it starts smoking. Then, add the pad thai noodles and a generous dash of water to loosen them up. Cook on medium-high heat for approximately three minutes.

If you’re in a rush, the microwave is also a great option to reheat pad thai. Place the noodles in a microwave-safe bowl and cover with a lid, leaving a gap for the steam to escape. Microwave for 30 seconds, stir the noodles, and then microwave for a further 30 seconds.

This Recipe Is …

  • Authentic, but with easily accessible ingredients
  • Plant-based and vegan
  • Easily adaptable to gluten-free
  • Ready in less than 20 mins
  • Full of umami and depth of flavor
  • Perfect for Friday fakeaway nights
Vegan tofu pad thai on a green plate.

Easy Tofu Pad Thai, Vegan

Yield: 2-3 Servings
Prep Time: 20 minutes
Cook Time: 10 minutes
Total Time: 25 minutes

This healthy vegan tofu Pad Thai has a balance of sweet, spicy, and sour flavors that make it better than takeout!


For the Sauce

  • 4 tbsp Tamarind Sauce
  • 100ml Water
  • 2 tsp Palm Sugar (or Brown Sugar)*
  • 1 tsp Light Soy Sauce
  • 1 tsp Dark Soy Sauce
  • 2 tsp Vegan Oyster Sauce
  • 1 tsp Vegan Fish Sauce
  • 1 tsp Red Chili Flakes
  • Sea Salt, to taste

For the Noodles

  • 200g Flat Rice Pad Thai Noodles

For the Pad Thai

  • 2 tbsp Groundnut Oil (or neutral oil)
  • 80g Deep-Fried Tofu Puffs
  • 5 Garlic Cloves, sliced
  • 60g Carrots, julienned
  • 60g Bell Peppers, julienned
  • 20g Shallots, finely sliced
  • 80g Beansprouts
  • 1/2 tsp Lime Juice
  • 2 Spring Onions, finely sliced

For the Garnish

  • Few strands Fresh Coriander, finely chopped
  • 1 tsp Red Peanuts, ground
  • Lime Wedges, to serve


    1. Soak the noodles. Take a large bowl and fill it with warm water. Add the noodles and soak them for around 20 minutes, until they have softened.
    2. Make the Pad Thai sauce. Mix tamarind sauce, palm sugar, soy sauce, vegan oyster sauce, vegan fish sauce, chili flakes, water, and salt to taste in a medium-sized bowl.
    3. Stir fry the vegetables and tofu. In a wok, heat groundnut oil over a medium flame. Once the oil smokes, add the garlic and shallots and cook for a few seconds. Next, add the shredded carrots and bell peppers. Cook, stirring constantly, for a minute, then add the beansprouts and tofu. Stir and cook for a further minute, until al-dente, and set the vegetables and tofu aside on a separate plate.
    4. Cook the Pad Thai sauce. In the same wok, add the mixed pad thai sauce and cook it, stirring constantly, until slightly thickened. Next, add the noodles, vegetables, tofu, lime juice, and spring onions. Mix well and take off the heat.
    5. Garnish the Pad Thai. Scatter over chopped peanuts, coriander (cilantro) leaves, more lime wedges, and extra beansprouts. 


* Palm sugar is the more authentic option, but if you don't like the idea of using palm products or simply don't have access to palm sugar, substitute it for medium brown sugar (or in a pinch, white sugar).

Recommended Products

As an Amazon Associate and member of other affiliate programs, I earn from qualifying purchases.

Nutrition Information:
Yield: 3 Serving Size: 1
Amount Per Serving: Calories: 626Total Fat: 31gSaturated Fat: 5gTrans Fat: 0gUnsaturated Fat: 24gCholesterol: 135mgSodium: 1334mgCarbohydrates: 59gFiber: 6gSugar: 18gProtein: 31g

Nutrition information isn’t always accurate.

Did you make this recipe?

Leave a review below or tag me in your photos on Instagram!

Is tofu Pad Thai healthy?

This vegetarian and vegan tofu pad thai is an excellent source of plant-based protein, in addition to other vital nutrients. It’s not a health food, but can form part of a healthy, balanced diet.

How many calories are in tofu Pad Thai?

If you follow this recipe, a portion of Pad Thai has roughly 630 calories. However, nutrition information isn’t always accurate, and different recipes and ingredients will change the calorie count.

Does vegetarian Pad Thai have fish sauce?

This vegetarian pad thai recipe uses vegan fish sauce. However, ordinary fish sauce is not vegetarian or vegan friendly, since the condiment is derived from dead animals. Many people, especially those unfamiliar with plant-based diets, don’t understand this. Therefore, it’s always best to confirm with your server when eating out whether a dish contains fish sauce. Or, you can make homemade vegan pad thai — like this recipe!

Explore More


Leave a Reply

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