Golden, Charred Tofu Skewers with a Rich Peanut Sauce
When most people think of satay, they picture chicken or beef sizzling over hot coals. But satay has always been about the marinade, the high heat and that peanut sauce, and none of those need meat. This tofu satay is adapted from our Chicken Satay recipe and stands on its own as a dish: the tofu soaks up a coconut and yellow curry marinade, chars beautifully, and comes with the same rich peanut sauce. It works for the whole table, whether you’re cooking for vegans, vegetarians or anyone who loves bold flavour.
Quick answer: Press extra-firm tofu, cut it into cubes and marinate it in coconut milk, Thai yellow curry paste, turmeric, palm sugar and salt for at least 45 minutes. Thread onto soaked skewers and cook on a hot griddle pan, under the grill or on a barbecue for about 2 minutes per side until golden. Serve with a peanut sauce made from curry paste, coconut milk, soy sauce, tamarind, palm sugar and toasted peanuts.
At a glance
Vegan: yes (use tamari for gluten free)
Marinate: at least 45 minutes, ideally 2–3 hours or overnight
Cook: about 8 minutes on a griddle pan, grill or barbecue
Heat: medium (yellow curry paste, 3/5)
Why Tofu Works So Well for Satay
Unlike chicken, tofu is a blank canvas. It soaks up the coconut milk, curry paste, turmeric and palm sugar and carries those flavours right through, giving golden, lightly charred cubes with a caramelised outside and a spiced centre that holds its own against the peanut sauce.
The key is pressing the tofu. The drier the surface, the better it takes on the marinade and the better it chars. Use extra-firm tofu, because softer types won’t hold on a skewer. If yours isn’t pre-pressed, wrap it in a clean tea towel, put something heavy on top and press for 20–30 minutes before cutting.
Where Does Satay Come From?
Satay is widely thought to have started in Indonesia, shaped by centuries of trade across Southeast Asia. In Thailand, it became something of its own, with coconut milk, lemongrass, galangal and curry paste in both the marinade and the sauce. For more on the story, see our Chicken Satay with Peanut Sauce recipe.

Key Ingredients
Mae Jum Thai Yellow Curry Paste: used in both the marinade and the peanut sauce. It’s stone-ground from red chilli, shallots, garlic, lemongrass, galangal, turmeric, kaffir lime rind and white pepper, so it’s warm, fragrant and golden. Red curry paste works too, or Panang for a milder, richer satay.
Extra-firm tofu: pressed well so it holds its shape and crisps.
Turmeric: gives the tofu its golden colour and an earthy warmth. Use it generously.
Full-fat coconut milk: for creaminess in the marinade and the sauce.
Tamarind: gives the peanut sauce its tang. Use tamarind juice for a lighter sourness or purée for more depth. If using purée, start small and taste.
Palm sugar: balances the sauce and helps the marinade caramelise. Light brown or coconut sugar work too.
Peanuts: toast them in a dry pan before crushing for a deeper, nuttier sauce.
How to Make Tofu Satay
The full recipe is in the recipe card below. Here’s how it comes together:
Press and cut the tofu into cubes.
Marinate in coconut milk, yellow curry paste, turmeric, palm sugar and salt for at least 45 minutes.
Make the peanut sauce. Fry the curry paste in a little oil, add the coconut milk, soy sauce, tamarind and palm sugar, blend until smooth, then stir in the crushed peanuts. Keep it warm on a low heat.
Thread 3–4 cubes onto each soaked skewer.
Cook on a hot griddle pan, under the grill or on the barbecue for about 2 minutes per side, until golden with char marks. Serve with the peanut sauce.
Griddle, Grill or Barbecue?
Griddle pan (all year round): gives you char lines and caramelisation indoors. Get it really hot first.
Oven grill: set the skewers on a rack under a hot grill and turn them every couple of minutes.
Barbecue (summer): charcoal adds smokiness; gas gives you more control when cooking for a crowd.
Whichever you choose, don’t move the skewers too early. Leave them for about 2 minutes per side so a crust forms before you turn them.
Tips for the Best Tofu Satay
Marinate for longer. Forty-five minutes is the minimum, but 2–3 hours or overnight gives a much deeper flavour.
Baste as you cook with any leftover marinade for an extra caramelised layer.
Keep the peanut sauce gentle. It thickens as it sits, so loosen it with a splash of water. Don’t let it boil hard, or it may split.
Serve straight away, or keep finished skewers warm in a low oven while the rest cook.
Cooking for a mixed table? The same marinade works on chicken, so you can make both at once.
What to Serve with Tofu Satay
Nam Ajad cucumber relish: sharp and refreshing against the rich sauce. Find it on our Chicken Satay recipe.
Jasmine rice: see our rice guide.
Lettuce cups or flatbreads: slide the tofu off the skewers and use the peanut sauce as a dressing.
More vegan Thai recipes: Vegan Thai Massaman Curry · Tofu Panang Curry · Vegan Pineapple Fried Rice
FAQs
Is tofu satay vegan?
Yes. The marinade and peanut sauce use coconut milk, soy sauce and our vegan yellow curry paste, with no fish sauce or shrimp paste. Use tamari if you need it gluten free.
Can I make tofu satay without a barbecue?
Yes. A hot griddle pan or an oven grill works brilliantly all year round.
Can I make the peanut sauce ahead?
Yes. Make it up to 2 days ahead and keep it in the fridge. Warm it gently with a splash of water before serving.
Do I need to soak wooden skewers?
Yes. Soak them in water for about 30 minutes so they don’t burn.
From Jum’s Kitchen
Satay is widely thought to have travelled to Thailand along the old trade routes, and over generations it became something entirely its own: coconut milk and curry paste in the marinade, palm sugar to soften the heat, and a rich peanut sauce alongside. What stayed the same is the principle: bold marinade, high heat, balance. This tofu version follows that tradition, from the golden colour of the turmeric to the slight char at the edges and the creamy coconut soaked right into the tofu.
It’s a lovely dish for a mixed table. When some people eat meat and some don’t, the same marinade and the same peanut sauce work for both, so everyone gets the same depth of flavour without cooking twice. Press your tofu properly, toast your peanuts and let the heat do the rest, whether that’s a griddle pan on a winter evening or the barbecue in summer. The work is done before anyone arrives.
Thai Tofu Satay with Peanut Sauce
- 500 g Extra-Firm Tofu
- 200 ml Coconut Milk
- 1 tsp Mae Jum Yellow Thai Curry Paste
- 1 tbsp Palm Sugar
- 1 tsp Turmeric Powder
- — Bamboo Skewers
- — Salt
I. Can not see how much tamarind and recipe says turmeric but not in ingredients
Is this an error ???