When you’re craving big flavors but not the work that comes with most extravagant dishes, turn to this gourmet Vegan Thai Green Curry.
For an easy 45-minute weeknight dinner, make this green curry with store-bought curry paste (and a few choice extras to amp up the flavor). Or, for the best possible curry, make this with my Homemade Thai Green Curry Paste.
A thoughtful blend of Thai aromatics and herbs, green curry paste, and silky-smooth coconut milk bring bold and fragrant flavors that will make your taste buds dance, while a mix of tofu and vegetables make this a complete dinner.
Table of Contents
1. Why this recipe works
2. Ingredient notes
3. Step-by-step instructions
4. Tips for making this recipe
5. Frequently Asked Questions
6. Recipe card with notes
Why this recipe works
As close to the real deal as possible.
After hours if not days of researching, watching Thai YouTube videos, and taste-testing Thai green curries from several local Thai restaurants, I feel pretty confident that this vegetarian Thai green curry is as close to the real deal as possible (and super delicious)!
You’ll get *the most amazing* fresh flavor if you make my homemade Thai green curry paste, but even a good-quality store-bought green curry paste will make this curry sing with fantastic flavor.
The homemade paste is a labor of love, but it stays good in the fridge for 1 to 2 weeks. You can also freeze leftover paste and it tastes just as good in the curry!
Plus, the rest of the ingredients, from fresh lime leaves to Thai basil, all contribute to the characteristic flavors you love in a traditional restaurant-style Thai green curry.
Well-balanced in flavor.
During my time spent backpacking Thailand many years ago, I attended a weekend-long cooking retreat. The most important thing I learned was how to balance flavors to make each dish taste harmonious.
I applied those same teachings to this vegan green curry:
- The curry paste starts things off with a baseline of spicy, pungent, salty, and slightly bitter flavors.
- The fattiness from the coconut milk tempers these strong flavors, while the soy sauce adds the necessary savory punch.
- A bit of coconut sugar adds sweetness to temper the fire while amping up the savoriness.
- To finish, lime leaves infuse bright citrus and a final squeeze of acidic lime juice brightens things up.
Creamy and rich.
A classic Thai curry is full-bodied with a silky and rich mouthfeel, and this curry absolutely delivers thanks to full-fat coconut milk.
We first tested this curry with only 1 can of coconut milk, and it was definitely lacking in texture (chunky but not creamy) and flavor (too spicy, too tangy). We found that with the amount of curry paste, tofu, and vegetables, the curry was begging for more coconut milk.
With 2 cans, the result is nothing short of spectacular! Yes, it’s indulgent and it’s absolutely worth it!
Ingredient notes
Green curry paste. This is the #1 essential ingredient in any Thai green curry. Green curry paste (prik gaeng khiao waan in Thai) is the spicy and fragrant base of the dish, made by pounding chiles, aromatics, herbs, and spices in a mortar and pestle.
Choose between store-bought curry paste (convenient) or my Homemade Thai Green Curry Paste (extra delicious and fresh).
Note: Not all store-bought green curry paste is vegan-friendly, as some contain shrimp paste. Head to the Tips section for my recommended curry paste brands.
Coconut milk. Any Thai curry, whether green or red, requires full-fat coconut milk. Use canned coconut milk or the kind in a shelf-stable box.
Tip: Buy full-fat coconut milk in a can, not coconut cream, cream of coconut, or coconut milk in a carton. Also, choose the brand with the fewest ingredients, if possible.
Substitute: There is no substitute for coconut milk in Thai curry. That said, if you want lighten this curry up, sub ½ to 1 cup (120 to 240 mL) of the canned coconut milk with vegetable broth, vegan “chicken” broth, or water. Or, use 1 can “lite” coconut milk and 1 can full-fat coconut milk.
Lime leaves. One of the must-have ingredients in a classic Thai curry. It brings a magical citrusy aroma and that bright je nais se quois flavor you love in Thai curries.
Where to buy: Fresh lime leaves are sold at Southeast Asian grocers and large Asian markets like HMart. They may be labeled as “lime leaves,” “makrut lime leaves,” or “kaffir lime leaves.”
Substitute: Order dried makrut lime leaves online (affiliate link). Keep them whole or gently crumble or snip each leaf to release more flavor (remove before serving).
Soy sauce. Adds the savory depth of flavor, replacing the more traditionally used ingredient, fish sauce. If you happen to have vegan fish sauce at home, go ahead and use it instead but start with less (2 to 3 teaspoons).
Substitute: Use tamari or gluten-free soy sauce if gluten-free.
Tofu. This is the protein in our vegan green curry. To keep things quick but to improve the texture, tofu cubes are boiled in salted water to give them an enhanced chewy texture and a more enjoyable flavor. It’s the same method I use in my Tofu Curry recipe.
If you love crispy tofu and have a little extra time, pan-fry or bake the tofu instead. Instructions are in the “Can I fry or bake tofu instead?” section.
Vegetables. You’ll find Thai or Chinese eggplant and bamboo shoots in most authentic Thai green curry recipes. You can get creative with your veggie choices if you aren’t a fan of these two—there are several options to choose from in the recipe card!
Thai basil. The Thai basil leaves are stirred into the curry at the end to give it a subtle pop of spice and notes of anise.
Substitute: Use fresh cilantro if you can’t find Thai basil.
Step-by-step instructions
Boil the tofu. Bring a pot of water to a boil. While you wait, slice the tofu into slabs and press out the excess water with a kitchen towel. Chop the slabs into ~ 3/4″ (2 cm) cubes.
Add 1 tablespoon of salt to the boiling water, followed by the tofu. Boil for 2 minutes, then drain.
Note: If you want to fry or bake the tofu instead of boiling it, see the next section.
Start the curry. Add a few spoons of the coconut milk to a large sauté pan over medium-high heat. Let it bubble for a few minutes before stirring in your green curry paste (store-bought or homemade).
Note: If using store-bought curry paste, add in your extra aromatics (garlic, ginger or galangal, and lemongrass with the curry paste.
Keep stirring until the paste starts to dry out.
Now pour in the rest of the coconut milk.
Add the lime leaves, sugar, and soy sauce. Let the sauce simmer until it starts to thicken.
Add the veggies. Add your vegetables of choice and broth.
Simmer until the vegetables are crisp-tender (eggplant takes the longest).
Note: If using the boiled tofu method, add the boiled tofu with the vegetables.
Turn off the heat and add a squeeze of lime juice if desired. Taste and adjust the seasonings as needed. Remove the lime leaves, then stir in the Thai basil.
Can I fry or bake the tofu instead?
The default method—boiling the tofu—is the quickest and easiest option and still tastes delicious. Boiling the tofu in salted water makes it chewier, so it doesn’t taste like raw tofu and absorbs the curry sauce better.
That said, if you want a crispier tofu, you can definitely pan-fry or bake the tofu (or deep fry if you’re feeling frisky!).
How to pan-fry tofu cubes
- Slice the tofu block into 4 vertical slabs. Gently press down on them with a towel a few times to remove excess water. Weight down the slabs with a heavy cookbook and and press for 10 to 15 minutes, changing the towels in between if you can.
- Chop the tofu into ~ ¾ inch (2 cm) cubes. Position the cubes together on a cutting board. Now sprinkle a few pinches of salt on the cubes.
- Heat 2 to 2.5 TBSP neutral-flavored oil in a 12-inch nonstick frying pan over medium-high heat.
- Pack the tofu into a spider tool or slotted spoon to make it easy to add it to the pan. Once the oil is hot, add the tofu. Push the tofu around in the oil to evenly coat in one layer.
- Fry until golden brown on the bottom, about 5 to 6 minutes. Take a minute or two to carefully flip each piece with a thin spatula. Cook on the second side until golden brown on the bottom, about 4 to 5 minutes. The sides won’t be fried but the crunchy-soft texture combo is great in the curry.
- Transfer tofu to a paper towel lined surface to absorb oil. Push tofu pieces together and sprinkle with salt.
How to Bake tofu cubes
- Preheat the oven to 425ºF/218ºC. Line a rimmed sheet pan with parchment paper.
- Slice the tofu into 4 vertical slabs, and gently press down on them with a towel several times to remove excess water. Press for 10 minutes, changing the towels in between. Chop the tofu ~ ¾ inch (2 cm) cubes.
- In a large bowl, add the tofu, 1.5 TBSP neutral-flavored oil, 1 tsp kosher salt, and pepper to taste, tossing to coat. Add 2 TBSP arrowroot powder (or potato starch), and as gently as possible, toss with your hands.
- Arrange tofu on the pan in a single layer, spreading out the pieces so they don’t touch.
- Bake for 15 minutes, or until lightly golden on the bottom. Flip with a spatula or carefully turn the tofu with your hands. Bake for 14 to 16 minutes until golden and crispy.
Tips for making this recipe
Quality ingredients are essential.
To ensure you’re getting the best, take a trip to your local Southeast or pan-Asian grocery store. Gathering fresh lime leaves, lemongrass, and other aromatics is the best way to make this curry taste like the real deal.
Use homemade Thai curry paste when you have the time.
When you have more time, make this with my from-scratch Thai Green Curry Paste. It takes the flavors over the top and is guaranteed to wow your taste buds. It lends a freshness and depth of flavor that even the best store-bought curry paste can’t replicate.
Or choose the best store-bought green curry paste you can find.
The best vegan-friendly store-bought curry paste I’ve tried is from Maesri, which is much more flavorful (and spicier) than grocery store brands (e.g., Thai Kitchen). Aroy-D also makes a good vegan one, but they sell versions with shrimp paste as well so read labels.
It’s well worth seeking out since it’s the primary flavor base in the curry. Find it online or at Asian grocery stores.
Let it rest a bit.
If you taste this curry as soon as it’s done, it may feel too spicy. Don’t worry, some spiciness mellows after the first 10 to 30 minutes and you start to taste the other flavors more.
Add lemongrass to take it over the top.
If you love lemongrass flavor, take the unused, tough stalks of lemongrass and add them to the curry when you add the coconut milk and soy sauce to infuse. Discard before serving.
Pick your preferred tofu method.
To keep things quick, opt for the boiled tofu method. If you love a crispy tofu option, pan-fry the tofu using the instructions in the recipe card.
Frequently Asked Questions
Is Thai green curry spicier than red curry?
Typically, yes! Green curry has a reputation for being the spiciest type of Thai curry. The heat comes from the spicy green chiles (like Thai green chiles, or serrano peppers / jalapeños) in the green curry paste.
Don’t stress if you aren’t a fan of spicy foods. The heat is toned down once the paste is mixed with the creamy coconut milk And if you make the homemade paste, you can tailor the spiciness more granularly.
Is Thai green curry normally vegan?
The two non-vegan ingredients used in many traditional Thai green curry recipes are shrimp paste (used in the curry paste) and fish sauce (used to flavor the curry).
You can make my homemade curry paste (which subs shrimp paste with miso paste and dried shiitake) or buy a vegan-friendly store-bought paste. As for the fish soy sauce, this recipe uses soy sauce with great results (if you have vegan fish sauce, you can try using that).
How long does this curry last? Can you freeze it?
Store the leftover curry in an airtight container in the fridge for up to 5 days. It thickens after resting. Reheat on the stove, and assess the consistency: add broth or water to thin as needed.
It’s also freezer-friendly, but I recommend freezing it after simmering the coconut milk mixture for 3 to 4 minutes. Freezing the curry with the tofu and veggies will detract from the final texture.
Where can I buy Thai ingredients like lemongrass, lime leaves, galangal, and Thai basil?
I recommend taking a trip to your local Southeast Asian or large pan-Asian grocery store to find all these ingredients.
Lemongrass can also be found at well-stocked grocery stores like Whole Foods and Albertsons.
Lime leaves may be sold as just lime leaves, Makrut lime leaves, or kaffir lime leaves. Dried makrut leaves are a great option that can be purchased online (they’ll stay good for months). Fresh leaves are more potent than dried.
Can I make this curry without tofu?
Absolutely. Use the vegan protein of your choice, like tempeh or soy curls, or add more vegetables to bulk it up.
How should I serve green curry?
Ladle it over a bed of steamed jasmine rice or brown rice! Simple but perfect.
If you love this Vegan Thai Green Curry as much as we do, please rate and review the recipe with your feedback below 🙂 It’s always very much appreciated 🙂
This restaurant-quality Vegan Thai Green Curry will blow your mind, especially because you can make it in 45 minutes! Use store-bought curry paste to keep it weeknight friendly. Or, take it over the top by making with my homemade Green Curry Paste!
Green Curry Paste (Pick ONE)
- 1 batch Homemade Thai Green Curry Paste OR
- 4 tablespoons (70g) canned Thai green curry paste, plus the below “extras” (Note 1)
Extras if using jarred/canned curry paste
- 5 garlic cloves minced
- 1- inch piece ginger or galangal, grated or minced
- 1 to 2 fresh lemongrass stalks, minced or grated
Tofu (see Note 2)
- 1 (14-ounce/400g) block of firm or extra firm tofu
- 1 tablespoon kosher salt (or ½ tablespoon sea salt)
Other Ingredients
- 2 (13.5-oz/400 mL) cans full-fat coconut milk
- 1 cup (240 mL) vegetable broth, vegan “chicken broth,” or water
- 8 fresh makrut (kaffir) lime leaves, bruised or crushed with your hands (Note 3)
- 1 tablespoon coconut sugar or brown sugar, more to taste
- 1 ½ tablespoons soy sauce (Note 4)
Vegetables of choice (more options in Note 5)
- 1 Chinese or Japanese eggplant, sliced into thin half moons (¼ to ⅛” thick / .5 cm), then sprinkled with salt for 15 minutes to soften (2 to 2 ½ cups total / ~170g)
- 1 medium or large red bell pepper sliced
Finishing Ingredients
- 1 cup (18g) Thai basil leaves, kept whole (large leaves torn), plus more for garnish
- Freshly squeezed lime juice, only as needed
- 1 to 2 mild red chile peppers sliced thinly for garnish (optional, for color)
- Cooked jasmine white rice or brown rice to serve 5
Make the homemade Green Curry Paste (or use store-bought) in advance.
Boil the tofu (Note 2). Bring a medium saucepan of water to a boil. Slice the tofu into 4 vertical slabs, and gently press down on them with a towel several times to remove excess water. Chop the tofu into ½ to ¾-inch (~1.5 cm) cubes.
Once water is boiling, add 1 TBSP kosher salt (or 1 ½ to 2 teaspoons sea salt), followed by the tofu. When the water returns to a boil, set a timer for 2 minutes. Use a strainer or slotted spoon to remove the tofu and set aside, or drain in a colander.
Cook the curry. Heat a deep 12-inch sauté pan or medium Dutch oven over medium-high heat. Once hot, add about 4 tablespoons of the coconut milk. Let it bubble and sizzle, and cook until the oil starts to separate from the milk, 1 ½ to 2 minutes. If it doesn’t really separate, don’t worry (depends on the brand).
Add the curry paste, plus extras if using store-bought curry paste. Cook, stirring frequently, for about 3 minutes, until it starts to dry out a bit. The curry paste might sputter so stand back. If the paste sticks, deglaze with a splash of water.
Add the rest of the coconut milk, lime leaves, sugar, and soy sauce, and stir to combine. Turn up the heat to bring the curry to a rapid simmer and cook for 3 to 4 minutes, or until the sauce just starts to thicken.
Add the boiled tofu (if using) and gently toss. Add vegetables of choice and broth. Stir to submerge the veg (it’s okay if not totally submerged). Partially cover the pan and bring to a rapid simmer, and cook for 6 to 8 minutes, or until the veg is tender but still crisp.
Off the heat, add a squeeze of lime, as needed. Taste, adding more soy sauce, or sugar as needed. Remove lime leaves if used. Stir in Thai basil and mild red chiles, if using. Serve over cooked rice and garnish with extra Thai basil.
General Note: the prep time is if you’re using store-bought curry paste. If using homemade curry paste, it will take longer.
1. Check labels to make sure store-bought curry paste is vegan. The best one I’ve tried is from Maesri. Find it online or at Asian grocery stores. It’s more flavorful and somewhat spicier than a grocery store curry paste (e.g., Thai Kitchen brand).
2. The instructions here are for the boiled tofu method. If you want to pan-fry or bake the tofu for a crispy option, check out the blog post section “Can I fry or bake the tofu instead?”
3. Makrut lime leaves are sold at large Asian markets like Hmart and Southeast Asian grocers (also sold as kaffir lime leaves). They are too tough to eat whole, so remove them from the curry before serving. Can’t find them? Sub with ~12 dried lime leaves and tear them a bit.
4. Use tamari to keep this recipe gluten-free. If you have vegan fish sauce, feel free to use; start with 2 to 3 teaspoons.
5. These are just the two vegetables I like to use. Some other suggestions:
- 1 1/2 cups (140g) snow peas, trimmed
- 1 cup (125g) bamboo shoots, thinly sliced
- 1 1/2 cups (120g) green beans, trimmed and cut into small pieces
In general, you want to use 3 cups (300g) total of vegetables. Eggplant + bamboo shoots is traditional in green curry, but I don’t like the latter. If using eggplant, use Chinese/Japanese/Thai eggplant; globe eggplants won’t soften.
Calories: 336kcal | Carbohydrates: 15g | Protein: 9g | Fat: 27g | Saturated Fat: 23g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 1g | Sodium: 1817mg | Potassium: 541mg | Fiber: 3g | Sugar: 6g | Vitamin A: 2899IU | Vitamin C: 36mg | Calcium: 67mg | Iron: 3mg
Recipe: Nisha Vora / Rainbow Plant Life | Photography: Megan Morello