
These Grilled Tofu Skewers with Cilantro and Lime are my answer to anyone who thinks tofu is boring. My goal was to create a tofu recipe that feels just as satisfying off the grill as anything else – something that was smoky, caramelized, and packed with flavor. The tofu gets brushed with a glaze that was made to kind of mimic classic meat marinades, which helps it get nicely caramelized and lightly charred on the grill.
The cilantro shallot topping is what makes these skewers feel complete. The glaze brings all that deep, savory flavor, while the cilantro, lime, and shallot add the brightness that balances everything out. I know it’s an extra step, but I promise it’s super simple, and I genuinely think it’s a crucial finishing touch.
These are perfect for a summer grill night, but they’re simple enough to make whenever you’re craving something flavorful and easy. They’re completely vegan if you use vegan Worcestershire, but it’s the kind of dish I think (I hope!) anyone would be excited to see on the table. Serve them on their own, or add some rice and a crisp salad to stretch the meal a little further. Either way, these are the kind of skewers you’ll want to make all summer long.
Table of contents

Ingredients you’ll need
For the skewers
- 1 (16 oz) pack extra-firm tofu
- 1 small (8 oz) red onion
- 1 medium (8 oz) red bell pepper
For the glaze
- 2 garlic cloves
- 1 small thai red chili, chopped, omit if you don’t like spice
- 2 tablespoons tomato paste
- 3 tablespoons soy sauce
- 1 tablespoon Worcestershire sauce
- 2 tablespoons honey
- 1 tablespoon rice vinegar
For topping
- 1 cup (2 oz) cilantro
- 1 small (1.5 oz) shallot
- 2 tablespoons lime juice, about 1 lime
- 1/2 teaspoon sugar
- 1/2 teaspoon salt
- 1/2 teaspoon pepper
- 2 tablespoons extra-virgin olive oil

Ingredient substitutions
This recipe is truly delicious as is but it is very flexible. Here are some substitution suggestions:
- Tofu: To keep this recipe meat free, tempeh, extra-firm seitan, or portobello mushrooms would work well. If you eat meat, chicken or shrimp also work, just be sure to adjust the cook time accordingly!
- Red onion: Swap for yellow onion, white onion, or sweet white onion.
- Red bell pepper: Can be swapped for any color bell pepper or, for a different crunch, swap for zucchini.
- Garlic: Swap for 1 teaspoon of garlic powder, or you can omit.
- Thai chili: Can be swapped for serrano pepper, jalapeño, or 1/4 teaspoon of red pepper flakes.
- Worcestershire sauce: Swap for vegan worcestershire
- Honey: Swap for maple syrup or agave.
- Rice vinegar: Swap for seasoned rice vinegar, apple cider vinegar, or white wine vinegar.
- Shallot: Can be swapped for red onion.
- Cilantro: You can truly use any tender herbs you like. I think swapping for parsley would be best for maintaining color and not overpowering the flavor.
- Lime juice: Can be swapped for lemon juice.

How to prep and assemble the tofu skewers
There isn’t much prep involved here, but taking a little extra time with the tofu (and skewers) makes all the difference. Here’s how to prep and assemble them:
If you’re using wooden skewers, soak them in water for 30 minutes while you prepare the rest of the recipe. This helps prevent them from burning on the grill.
Drain the tofu and press out the moisture. Slice into 10 squares, each 1-inch thick. Lay these on a sheet pan lined with paper towels. Place more paper towels (or a lint-free dish towel) on top of the tofu and press down with books while you prepare the vegetables.
Quarter the red onion and slice the bell pepper into 2-inch squares.
Make five skewers, each with two pieces of tofu. Layer the red onion and bell peppers in between as you like. Set aside.

Let’s talk about the glaze and cilantro shallot sauce
The goal for this glaze was to mimic a classic meat marinade to create tofu skewers that are just as satisfying. It caramelizes really well on the grill, giving the tofu a lightly charred exterior while keeping the inside tender. The cilantro lime topping is, in my opinion, the crucial finishing touch for getting bright, fresh, and nicely balanced skewers. Here’s how to make both:
For the glaze, grate in the garlic cloves, then add the chili, 2 tablespoons tomato paste, 3 tablespoons soy sauce, 1 tablespoon Worcestershire sauce, 2 tablespoons honey, and 1 tablespoon rice vinegar into a small sauté pan. Place over medium heat and bring to a simmer for about 30 seconds, just until the honey melts into the sauce.
For the cilantro shallot topping, finely chop 1 cup of cilantro and thinly slice 1 small shallot. Add these to a medium bowl and squeeze in 2 tablespoons of lime juice. Add 1/2 teaspoon sugar, 1/2 teaspoon each of salt and pepper, and 2 tablespoons extra-virgin olive oil. Toss to combine.

Grilling the skewers
Use a basting brush to coat the skewers all over with one layer of the glaze, then grill them over high heat for 3 minutes on each side, brushing with more glaze as needed. Remove from the heat when all four sides of the skewers are nicely charred.
Tip: Tofu naturally releases from the grill when it’s ready to flip, so if it’s sticking, it just needs a little more time!
Spoon the cilantro sauce over the skewers and serve warm.
Serving suggestions
These tofu skewers are pretty perfect on their own, so don’t feel like you need to do too much more. But if you want to stretch the meal a little further, serve them with white rice to soak up the extra glaze and cilantro sauce. They also pair really well with a crisp cucumber salad, more grilled vegetables, or a crunchy slaw for some extra freshness.

Storage
This recipe is easy to make all at once, but it also can be broken down into two simple steps you can tackle ahead of time.
Prepare the skewers. Assemble the tofu and vegetables onto the soaked skewers up to 1 day in advance. Cover and refrigerate until you’re ready to grill.
Make the glaze and topping ahead of time. Cook the glaze and refrigerate for up to 3 days. When you’re ready, reheat it on the stove, adding a splash of water if it’s too thick. The cilantro shallot topping can also be made up to 3 days ahead, just give it a good toss before spooning it over the skewers.
Store leftover skewers in an airtight container in the refrigerator for up to 4 days. Keep any extra cilantro shallot topping or glaze separate, if possible. Reheat in the oven for 8-10 until warmed through. You can also microwave them, but you’ll lose the crispy exterior.
Watch the recipe here
The video may not fully represent the recipe. For best results, follow the instructions as written.
Looking for more tofu recipes?
Honey Coriander Tofu Chicken Wings
Peanut Ginger Tofu Sandwich
Sticky Tofu & Fairytale Eggplant

And that’s it for these Grilled Tofu Skewers!
If you make it, please tag me on Pinterest or Instagram so I can see! It’s my favorite thing to scroll through stories and see what you all are making.
You can also shop this video if you’re looking for the exact pieces I use – I’ve linked everything on my ShopMy! *some links may contain affiliate commissions
And of course, feel free to leave any questions, comments, or reviews! This is the best place to reach me, and I’d love to hear from you <3

Equipment
- 1 skewers
- 1 basting brush
- 1 grill or grill pan
Ingredients
For the skewers
- 1 (16 oz) package extra-firm tofu
- 1 small (8 oz) red onion
- 1 medium (8 oz) red bell pepper
For the glaze
- 2 garlic cloves
- 1 small thai red chili, chopped, omit if you don’t like spice
- 2 tablespoons tomato paste
- 3 tablespoons soy sauce
- 1 tablespoon Worcestershire sauce
- 2 tablespoons honey
- 1 tablespoon rice vinegar
For the cilantro shallot topping
- 1 cup (2 oz) cilantro
- 1 small (1.5 oz) shallot
- 2 tablespoons lime juice, about 1 lime
- 1/2 teaspoon sugar
- 1/2 teaspoon salt
- 1/2 teaspoon pepper
- 2 tablespoons extra-virgin olive oil
Instructions
- If you’re using wooden skewers, soak them in water for 30 minutes while you prepare the rest of the recipe.
- Drain the tofu and press out the moisture. Slice into 10 squares, each 1-inch thick. Lay these on a sheet pan lined with paper towels. Place more paper towels (or a lint-free dish towel) on top and press down with books while you prepare the vegetables.
- Quarter the red onion and slice the bell pepper into 2-inch squares.
- Make five skewers, each with two pieces of tofu. Layer the red onion and bell peppers in between as you like. Set aside.
- Make the glaze. Grate in the 2 garlic cloves, then add the chili, 2 tablespoons of tomato paste, 3 tablespoons of soy sauce, 1 tablespoon of Worcestershire sauce, 2 tablespoons of honey, and 1 tablespoon of rice vinegar to a small pan.
- Place over medium heat and bring to a simmer for about 30 seconds, just until the honey melts into the glaze.
- Use a basting brush to coat the skewers with one layer of the glaze all over. There will be glaze leftover for grilling.
- Make the cilantro shallot sauce. Finely chop 1 cup of cilantro and thinly slice 1 small shallot. Add these to a medium bowl and add 2 tablespoons of lime juice, 1/2 teaspoon of sugar, 1/2 teaspoon each of salt and pepper, and 2 tablespoons extra-virgin olive oil. Toss to combine.
- Grill the tofu skewers over high heat for 3 minutes on each side, rotating when the tofu naturally releases from the grates, brushing with more glaze as needed. Remove from the heat when all four sides of the skewers are nicely charred.
- Spoon the cilantro sauce over the skewers and serve warm.










Comments
The concept of this dish is sublime — and I absolutely agree, the cilantro shallot sauce sets the flavors perfectly.
Though, it may be just me, but the sugary glaze + the very tender extra firm tofu did not ‘naturally release’ from the grill. They completely disintegrated off the skewers and made a total mess. We still ate it… it was just in pieces without the char the recipe is going for (those bits remained cemented to the grates).
Highly recommend 1) heating your grill extra rippin hot for this and 2) oiling your grates with some canola oil immediately before attempting to cook these skewers. That’s what I’ll be doing when I make this again and again.
Ahh I’m so sorry that happened but I’m glad you still enjoyed them! Let me know how they turn out next time and thanks so much for taking the time to leave a review, it’s so helpful.
Leave a Comment
Made this recipe? Tell me all your thoughts or if you’ve got any questions!