Tofu Pad Krapow (Thai Basil Stir-Fry)
Main Dish · Quick Meals · Vegetarian · Dairy-Free · Nut-Free · Time: 25 min · Servings: 3 · Difficulty: Easy
One of the last trips my husband and I took before beginning a new chapter of our lives was to Bangkok. We spent our days wandering through vibrant local markets, escaping the city's bustle to explore the peaceful countryside, and marvelling at the magnificent temples of Ayutthaya. It was one of those journeys where every day seemed to revolve around discovering somewhere new to eat, whether it was a busy street food stall tucked away in a narrow alley or a small family-run restaurant serving recipes that had been passed down through generations.
Among all the wonderful meals we shared, Phat Kaphrao quickly became one of our favourites. Although every cook seemed to have their own interpretation, each version captured the same irresistible combination of fragrant garlic, fiery chillies, savoury sauces, and aromatic basil. It was simple, comforting, and bursting with flavour, making it a dish we found ourselves ordering time and time again throughout our trip.
Traditionally made with minced pork or chicken and fragrant holy basil, Phat Kaphrao is one of Thailand's most iconic street food dishes. If you're searching for it online, you'll also find it written as Pad Krapow or Pad Kra Pao. While the spellings vary, they all refer to the same beloved Thai basil stir-fry that's enjoyed throughout Thailand.
Since our trip to Bangkok, Phat Kaphrao has become one of those meals we return to time and time again. I still make the classic version with minced chicken, but this tofu variation has become my favourite whenever I'm craving something a little lighter without giving up the bold, savoury flavours that made us fall in love with the dish in the first place. The moment garlic, chillies, and basil begin to sizzle in the pan, I'm transported back to those bustling markets, warm evenings, and unforgettable days exploring Thailand together. It's a reminder that the best recipes don't just feed us; they have a wonderful way of preserving the memories of the places we've loved and the journeys we've shared.
If this recipe has you dreaming of Thailand, why not start your meal with my Easy Chicken and Prawn Spring Rolls? They were inspired by another unforgettable food discovery during our travels in Bangkok and pair beautifully with this Tofu Pad Krapow for a homemade Thai-inspired feast.



What is Pad Krapow?
One of my favourite things about travelling is discovering the everyday dishes that locals eat rather than those made especially for visitors, and Pad Krapow is exactly that. Found everywhere from bustling street stalls to family-run restaurants across Thailand, it's one of the country's most beloved comfort foods.
Traditionally, Pad Krapow (also spelled Pad Kra Pao or Phat Kaphrao) is made by stir-frying minced meat over high heat with garlic, fresh chillies, savoury sauces, and fragrant holy basil. It's almost always served with steamed jasmine rice and a crispy fried egg, creating a meal that's simple, satisfying, and packed with bold flavour.
This vegetarian version swaps the meat for crumbled tofu while keeping everything that makes the original so special.
About the Sauce & Fresh Thai Basil
One of the things that makes Pad Krapow so irresistible is its beautifully balanced sauce. Traditional versions are typically seasoned with a combination of oyster sauce, fish sauce, light soy sauce, a touch of dark soy sauce for colour, and a little sugar to round out the flavours. Together, they create the savoury, slightly sweet, umami-rich sauce that coats every bite.
For this vegetarian version, I've adapted the sauce using ingredients that many home cooks already have in their pantry. Instead of fish sauce, I use vegetarian mushroom oyster sauce alongside light soy sauce, dark soy sauce, and a little coconut sugar. The result is a rich, flavourful sauce that stays true to the spirit of the dish while keeping it completely vegetarian and easy to recreate at home.
No Pad Krapow would be complete without plenty of fresh Thai basil. Added right at the end of cooking, the leaves wilt into the hot sauce, releasing their unmistakable peppery, slightly anise-like aroma. It's this fragrant burst of basil that gives Pad Krapow its signature flavour and makes the dish so wonderfully addictive.
If you're not making this recipe vegetarian and happen to have fish sauce on hand, you can add 1–2 teaspoons to the sauce for an extra layer of savoury depth. I also like adding a splash of water while the sauce simmers, creating just enough glossy sauce to spoon over a bowl of steaming jasmine rice, just like many of the delicious versions we enjoyed during our travels in Thailand.
Ingredients
- 454 g Extra firm tofu, crumbled
- 30 ml Extra Virgin Olive Oil
- 75 g Red Bell Pepper, thinly sliced
- 100 g French beans
- 75 g Onion, chopped
- 25 g Thai holy basil leaves
- 2 large Eggs (optional for topping)
Sauce
- 30 ml Vegetarian Oyster sauce
- 22 ml Light soy sauce
- 5 ml Dark Soy Sauce
- 4 g Coconut Sugar (or sweetener of choice)
- 45 ml Filtered Water
Directions
- Prepare the Vegetables Slice the bell peppers lengthwise into thin strips. For the French beans, pinch the tip and pull gently to remove the fibrous string along the side, then slice into small rounds. Finely dice the onion and mince the garlic. Pick the Thai basil leaves from the stems and set aside.
- Cook the Tofu Heat the oil in a wok or large pan over medium heat. Add the tofu and crumble it into bite-sized pieces using your hands or a fork. Season with salt and pepper, then cook for 5 to 7 minutes, until lightly golden and slightly crispy. Set aside.
- Cook the Vegetables and Mix the Sauce Heat the oil in a wok or large pan over medium-high heat. Sauté the onion and garlic until fragrant, then add the bell peppers and stir-fry for about 3-4 minutes. Add the French beans and continue cooking for another 3 minutes, tossing everything together. While the vegetables are cooking, prepare the sauce. In a small bowl, whisk together the dark soy, tamari, coconut sugar, chili, and pepper until the sugar has dissolved. Pour a few splashes of the sauce into the pan to lightly season the vegetables as they cook.
- Combine Return the cooked tofu to the pan and pour in the remaining sauce. Add 1 tablespoon of water if you prefer a slightly more saucy finish. Toss everything together until well coated and heated through.
- Finish with Basil Add the Thai basil and stir just until wilted.
- Serve Serve over rice or your preferred grains. Add a crispy fried egg on top, if desired.