These vegetable kabobs combine tofu and mixed veggies with an umami-rich BBQ marinade for a super simple meal that’s packed with nutrients and flavor. Bake, grill, or grill-pan these veggie tofu skewers to lightly caramelized perfection, then serve as a light main or side to tons of meals year-round!
Simple BBQ Marinated Tofu and Vegetable Kabobs
With the weather heating up, it’s the perfect time to dust off those summer-friendly recipes, like vegan kebab sandwiches, Greek gyros, portobello steaks, and these marinated tofu and veggie kabobs! They are nutrient-packed (including protein-dense), packed with rainbow colors, and budget-friendly, perfect for BBQs, potlucks, garden parties, and a quick mid-week meal!
Whether you’re already vegan, looking for a meat-free option for yourself or friends, or just want to eat more rainbow veggies – these vegetable kabobs are a must-try! They are marinated and basted with a homemade sweet, savory, creamy, and umami-rich BBQ-style tofu marinade– even veggie-wary will be loving these flavor bombs!
Plus, since these tofu skewers can be baked or made on the stovetop, you can enjoy the recipe year-round. Even better, you can prepare them up to a day in advance, so all you need to do is cook them in 25 minutes (or less!). Either way, these veggie skewers require very little hands-on time, making them an excellent option for busy people!
Best of all, they are naturally vegetarian, vegan, low-carb, and can be made gluten-free. Plus, you can even enjoy these vegetable kebabs soy-free if preferred. Once cooked, enjoy them as a light meal or alongside rice, salad, and other sides!
- Firm tofu: Firm or even extra firm tofu is best to use for tofu skewers. Don’t use a softer variety, as it will just crumble/ fall apart off the skewer.
- Vegetables: For these vegan kebabs, I used a combination of mushrooms (smaller button/cremini/baby Bella or larger mushrooms chopped into thick slices), tomatoes (whole grape/cherry tomatoes or larger tomatoes cut to size), bell pepper (I used green), zucchini (or summer squash), and pineapple (optional).
- Maple syrup: You may be able to use agave, but maple is all I’ve tried. Adjust the amount to personal preference.
- Soy sauce: Use regular soy sauce, dark soy, or reduced-sodium soy. However, each will impact the flavor and may need the amount adjusting. For a gluten-free option, use GF soy, tamari, or coconut aminos.
- Peanut butter: This helps to make the marinade creamier and needs to be warmed/melted. For a nut-free option, use sunflower seed butter.
- Oil: Any neutral high-heat cooking oil will work.
- BBQ sauce: Use store-bought or homemade BBQ sauce for a sweet flavor explosion.
- Hot sauce: Or Sriracha – adjust the amount to personal preference.
- Seasonings: You need onion powder, garlic powder, and black pepper.
- Water: To thin the tofu marinade to the correct consistency.
- Peanut sauce, to serve these tofu satay skewers
- 8-12 wood or bamboo skewers (soak in water, see instructions)
Optional add-ins and recipe variations:
- More vegetables: Vegetable kebabs are versatile- include red onion slices, eggplant, mini corn, Brussels sprouts, or par-boiled baby carrots or new potatoes.
- Other protein: Instead of tofu, you could use tempeh or vegan halloumi for the veggie kabobs.
Please read the recipe card below for the full ingredients list, measurements, complete recipe method, and nutritional information.
How to Make Vegetable Kabobs?
Step 1: Prepare the ingredients
- First, press the tofu. To do so, place the tofu between a kitchen towel with a heavy pan placed over the top for 30 minutes. Cut the tofu into cubes before or after pressing it.
- Then, clean and cut the vegetables down into bite-sized skewer pieces. Try to make them the same size for even cooking.
- To prepare the marinade, add all the ingredients apart from the water to a small bowl and whisk well. Then add the water, 1 tbsp at a time, mixing in between. Set aside.
Step 2: Marinate and assemble the tofu vegetable skewers
- Transfer the pressed tofu and chopped vegetables to a large shallow dish and pour over the marinade. Stir with a spatula to carefully cover the ingredients.
- Allow marinating in the fridge for 60 minutes (or overnight to make ahead. The longer they marinate, the more flavor they’ll soak up). At the same time, soak your wood/bamboo skewers in water for 30-60 minutes (this will ensure they don’t burn during the cooking process).
- To assemble the veggie skewers, allow the excess marinade to drip off the tofu/veggies before threading them onto the skewers (what ingredients go first, etc., is up to you!). Make sure to keep the excess marinade, as you’ll need it.
Step 3: Cook the veggie kabobs
- To cook in a pan: Heat a grill pan with a little oil (brush it on with a silicone brush). Once heated, add the skewers, and cook for 4-5 minutes per side, basting with extra marinade before turning it each time). The skewers are ready when the vegetables become slightly charred, and the tofu is golden brown.
- To bake in the oven: Preheat the oven to 390 °F/200 °C, and place the skewers in a single layer on a baking dish. Brush the excess marinade over the skewers and then bake for 25 minutes, flipping once after 15 minutes.
You can optionally save some marinade to baste the veggie tofu kabobs when flipping at the 15-minute mark. For extra ‘charr,’ broil the tofu veggie kabobs at the end of the baking process.
- Once cooked, serve the skewers with peanut butter sauce and sprinkle with sesame seeds and fresh herbs – then enjoy!
How to Make Ahead and Store
Make ahead: You can prepare the threaded skewers and leave them to marinate in the fridge overnight before cooking when needed. You can let the tofu marinade for up to 24 hours.
Store: These tofu veggie skewers are best enjoyed straight away for the best flavor and texture. However, leftovers could be stored in an airtight container for between 2-3 days.
Reheat: You can enjoy the leftover vegetable kabobs cold, or reheat them on the stovetop or in the microwave until warm.
How to Serve Veggie Kabobs?
Enjoy these tofu vegetable skewers as a light low-carb meal or with sides, including:
- Salad: Serve alongside a leafy/hearty/side salad like this Lebanese Fattoush salad, brown rice salad, creamy cucumber salad, or vegan potato salad.
- Grains: Serve with plain or flavored grains like rice, quinoa, couscous, etc. Also, this one-pot vegetable rice or vegan pasta salad.
- Bread: Serve the veggie tofu kabobs with a flatbread (like naan) or crusty bread and a side salad.
Recipe Notes and FAQs
- For the crispiest results: I’ve found that baking the tofu skewers yields the crispiest tofu.
- Can you grill the veggie kabobs? I’ve never tried using a grill. However, it should work. I recommend turning the skewers frequently and cooking over medium heat until lightly charred on every side.
- Skip the skewers altogether: This delicious combination of veggies, tofu, and marinade doesn’t need to be threaded onto skewers to be enjoyed. You could also grill them in a grill basket, over a layer of heavy-duty foil, or baked loose in the oven. You can also omit the skewers to pan sauté the ingredients for a simple flavor-packed stir-fry.
- Using metal skewers: If you use re-usable metal skewers, no soaking is necessary.
- Don’t slice the veggies too thin: Otherwise, they tend to just spin around the vegetable kabobs and are a nightmare to keep in place. Thicker pieces’ wedge’ onto the skewer easier.
- Double up on the glaze: Instead of serving with peanut sauce, you could also increase the amount of marinade to use as a dipping sauce for the tofu vegetable skewers.
- Always press the tofu: You need it as firm as possible, so it doesn’t fall apart off the skewer.
More Summer-Ready Vegan Meals
- Vegan summer rolls
- Veggie sushi rolls
- Chickpea Buddha bowl
- Kale Avocado Pasta
- Air Fryer falafel
- Chickpea tacos
- Creamy lemon pasta
If you try this vegan tofu and vegetable kabobs recipe, I’d love a comment and ★★★★★ recipe rating below. Also, please don’t forget to tag me in re-creations on Instagram or Facebook with @elavegan and #elavegan – I love seeing them.
Vegetable Kabobs (Tofu Skewers)
Tofu & Veggies
- 8 oz (225 g) firm tofu
- 2 tomatoes
- 8-12 mushrooms
- 1 green pepper
- 1/2 zucchini
- 1 cup pineapple cubed (optional)
- Peanut sauce to serve
- 8-12 wood or bamboo skewers soak in water (see instructions)
Tofu & Veggies
- You can watch the video in the post for visual instructions.Place the tofu between a kitchen towel and place a heavy pan on top. Press for about 30 minutes. You can cut the tofu into cubes before pressing or after.
- Cut the veggies into a similar size.
- Add all marinade ingredients (except the water) to a bowl and mix thoroughly with a whisk. Add the water in 3 portions, mixing in between. Set aside.
- Transfer the veggies and tofu to a shallow dish and add the marinade. Carefully stir with a spatula to cover the veggies/tofu with the marinade from all sides.
- Marinate in the refrigerator for about 60 minutes (or overnight if preparing the recipe one day in advance). At the same time soak wood or bamboo skewers in water for 30-60 minutes.
- Drain the marinade into a bowl (don't throw it away) and thread the veggies and cubes of tofu onto skewers.
Cook in a pan
- Heat a grill pan, brush it with a little oil (using a silicone brush) and place the skewers in. Cook for about 4-5 minutes on each side (brushing with the marinade in between) until the vegetables start getting a light char and the tofu turns golden brown.
- Remove from the pan and serve with peanut sauce, sprinkle with sesame seeds and fresh herbs. Enjoy!
- Preheat the oven to 390 F (200 C) and place the skewers in a baking dish.
- Pour the remaining marinade over the skewers and bake for about 25 minutes, flipping once after 15 minutes.
- Remove from the oven and serve with peanut sauce, sprinkle with sesame seeds and fresh herbs. Enjoy!
- The tofu gets crispier if using the oven method.
- I never tried using a grill, however, it should work too. I would suggest turning the skewers more frequently.
- The total time doesn't include the marinating or tofu press time.
Nutrition information is an estimate and has been calculated automatically