These vibrant tofu kebabs bring together sweet pineapple, colorful peppers, and a tangy homemade marinade for a satisfying, flavor-packed meal.
Rich in plant-based protein, fiber, and low in saturated fat, they’re a healthy choice for lunch or dinner.
Quick to assemble and grill, these kebabs are perfect for easy weeknight meals or make-ahead meal prep.

Easy Weeknight Sweet and Sour Tofu Skewers
Equipment
- 4 wooden or metal skewers
- Griddle pan or BBQ
- small bowl
- Plate and weight for pressing tofu
- Knife and cutting board
Ingredients
- Ingredients List
- 400 g firm tofu
- 2 tbsp tomato puree
- 2 tbsp soy sauce
- 2 tbsp maple syrup
- 2 tbsp apple cider vinegar
- ⅛ tsp chili powder
- 4 tbsp pineapple juice
- ½ fresh pineapple
- 1 red bell pepper
- 1 green bell pepper
- ½ red onion
Instructions
- Pressing the Tofu: Begin by removing the tofu from its packaging and draining any excess liquid. To achieve the best texture for grilling, it’s important to press the tofu. Place the tofu block between two clean kitchen towels, then set a flat plate on top. To add weight, place a heavy object such as a book on the plate. Allow the tofu to press for at least 10–15 minutes. This step removes extra moisture, helping the tofu absorb the marinade more effectively and ensuring it grills beautifully without crumbling.
- Preparing the Marinade: While the tofu is pressing, focus on creating the sweet and tangy marinade. In a small mixing bowl, combine 2 tablespoons of tomato puree, 2 tablespoons of soy sauce, 2 tablespoons of maple syrup, 2 tablespoons of apple cider vinegar, 1/8 teaspoon of chili powder, and 4 tablespoons of pineapple juice. Add 2 tablespoons of water to loosen the mixture slightly, then whisk everything together until smooth. This marinade balances tangy, sweet, and slightly spicy flavors, which will infuse the tofu and vegetables for a delicious taste.
- Cutting and Marinating the Tofu: Once the tofu has been pressed, remove the plate and towels carefully. Cut the tofu into 12 evenly sized cubes to ensure uniform cooking on the grill. Place the cubes into a deep dish or container with high sides to avoid spilling. Pour the prepared marinade over the tofu, making sure every piece is thoroughly coated. Gently turn the tofu with a spoon or spatula to ensure even coverage. Cover the dish with a lid or cling film and place it in the refrigerator for a minimum of 2 hours. For the best flavor, leave it to marinate as long as possible—overnight is ideal.
- Preparing the Vegetables and Pineapple: While the tofu marinates, prepare the vegetables and pineapple for threading onto the skewers. Start by removing the skin and core from the fresh pineapple and cut the flesh into bite-sized cubes, roughly the same size as the tofu for even cooking. Next, wash the red and green bell peppers, remove their seeds, and cut them into cubes similar in size to the tofu and pineapple. Peel the red onion and chop it into similar-sized chunks. Having uniform pieces ensures even cooking and makes the kebabs look visually appealing.
- Assembling the Kebabs: Take one skewer and begin threading the ingredients in a pattern that balances flavor and color. Start with a piece of green pepper, followed by a red pepper, then red onion, one cube of tofu, and a piece of pineapple. Repeat this pattern until the skewer has three tofu pieces and ends with green and red pepper for a visually vibrant finish. Continue this process with the remaining skewers until all tofu, vegetables, and pineapple pieces are used. Threading carefully prevents ingredients from slipping and helps each skewer cook evenly.
- Heating the Grill or Griddle: Preheat a griddle pan or BBQ to medium-high heat. Make sure the surface is hot before placing the kebabs down; this will help achieve a beautiful char and prevent sticking.If using a pan, lightly oil it to reduce sticking and enhance caramelization. A properly heated grill ensures the kebabs cook quickly, sealing in moisture and flavor.
- Grilling the Kebabs: Place the skewers on the hot grill or griddle. Cook each side for 3–5 minutes until the tofu is golden and slightly charred, and the vegetables are tender but still retain some crispness. While grilling, use a brush to coat the kebabs with any remaining marinade. This adds extra flavor and keeps the tofu moist. Turn the skewers carefully to avoid breaking the tofu cubes.
- Serving the Kebabs: Once cooked, remove the skewers from the grill and let them rest for a minute or two. This allows the flavors to settle and ensures the tofu retains its juiciness. Serve the kebabs hot, either as a main dish with rice, a salad, or as part of a larger BBQ spread. The combination of sweet pineapple, smoky char, and tender, flavorful tofu makes these skewers irresistible for both plant-based and omnivorous eaters alike.
Notes
- Pressing tofu is crucial for firm, grill-ready cubes; skipping this can result in soggy kebabs.
- Marinating time significantly impacts flavor—2 hours is minimum, overnight yields the best taste.
- Use firm or extra-firm tofu for grilling to avoid crumbling.
- Thread ingredients in uniform sizes for even cooking and visually appealing kebabs.
- Basting with the marinade while grilling adds extra flavor and moisture.
- Adjust chili powder to taste for spiciness or omit for a milder version.
- Wooden skewers should be soaked in water for at least 30 minutes to prevent burning.
Chef’s Secrets For Perfect Kebabs
To elevate your tofu kebabs, start with quality ingredients: choose ripe, juicy pineapple and fresh, firm vegetables.
Pressing tofu thoroughly is essential; it removes excess water, allowing the tofu to absorb the marinade deeply, resulting in a more flavorful and textured bite.
When marinating, stir occasionally to coat every cube evenly. Don’t overcrowd the grill—leave space between skewers to ensure even cooking and caramelization.
Finally, let the kebabs rest for a minute after grilling; this allows the juices to settle, making every bite tender and flavorful.
Serving Suggestions For Balanced Meals
These tofu kebabs pair wonderfully with a variety of sides.
Serve them over steamed jasmine rice or quinoa for a complete plant-based meal.
For extra freshness, add a side salad of mixed greens, cherry tomatoes, and cucumber with a light vinaigrette.
They also make a great filling for wraps or pita sandwiches, topped with hummus or a yogurt-based dressing.
For a fun BBQ presentation, arrange the kebabs on a platter with lemon wedges and fresh herbs like parsley or cilantro to brighten the flavors.
Storage Tips To Maintain Freshness
Leftover kebabs can be stored in an airtight container in the refrigerator for up to 3 days.
To reheat, use a grill pan, oven, or air fryer to maintain the slight char and prevent sogginess—avoid microwaving if possible.
If you’ve prepared extra marinated tofu, it can be frozen in a single layer on a tray, then transferred to a freezer-safe bag for up to 2 months.
Thaw in the fridge before grilling.
Marinated tofu can also be prepped ahead for meal prep, making weekday dinners quick and convenient.
Frequently Asked Questions
1. Can I use frozen tofu for this recipe?
Yes, you can, but it’s best to thaw it completely and press it thoroughly. Frozen tofu has a firmer, chewier texture that absorbs marinades well, making it a great alternative to fresh tofu.
2. Can I make these kebabs without pineapple?
Absolutely! You can substitute pineapple with mango, zucchini, or cherry tomatoes for a sweet or savory twist. Keep the pieces similar in size to tofu for even cooking.
3. How long can I marinate the tofu?
A minimum of 2 hours is recommended, but marinating overnight enhances flavor dramatically. Avoid marinating longer than 24 hours, as the tofu may start to break down and become mushy.
4. Can I grill these kebabs indoors?
Yes! A griddle pan or oven broiler works perfectly if a BBQ isn’t available. Preheat the pan and lightly oil it to get a nice char and prevent sticking.
5. Can I make this recipe oil-free?
Yes, this recipe is naturally low in fat. The marinade and pineapple juice help keep the tofu moist while grilling, so additional oil is optional. A light brush of oil on the grill surface can prevent sticking if desired.