This street food snack is both crispy and bursting with veggie goodness and subtle Indonesian spices and aromas. Bakwan Sayur, is here to upstage everything crispy in your arsenal, from potato pancakes to onion bhaji with more craveable taste (and real nourishing plant-based ingredients) than you can shake a stick at. Check out why this recipe is the best:
Gorengan Sayuran, sayur goreng, whatever you want to call these puppies, here’s the lowdown: a medley of vibrant julienne-cut carrots, crisp beansprouts, and shredded green cabbage, all dancing together with scallions, bird’s eye chilies, and shallots. Fried in a thin batter with the essence of lemongrass and white pepper, these make a perfect side for soups like sayur lodeh, or salads like asinan sayur and urap sayur.
Found sold at hawker markets from Jakarta to parts of Malaysia, see why these fritters are about to be one of your new not-so-guilty pleasures. They are fast to make, and you can even air-fry ‘em! Let’s go!
🥰Why you are going to adore the ever-loving heck outta this recipe
✊Vegan AF: This recipe just happens to be completely plant-based. Nothing feels “missing”, and the flavors of the veggies really pop. You are gonna love it!
✨Crispy Magic: As an award-winning donut maker, I’ve applied some of the science I know about making crispy, perfect fried food that DOES NOT absorb too much oil to this recipe. The marriage of all-purpose flour, and rice flour, in the batter, combined with perfectly dialed-in cooking temperatures, yield legendary bakwan sayur EVERY. DARN. TIME.
💨Air Frying Works Great: Want to avoid deep frying? That's no issue using an air-fryer with this recipe!
✅Tested and Approved Worldwide: After I perfected this recipe, I shared it with hundreds of recipe testers from all over the world, including in Indonesia. Tried, tested, and adored in kitchens around the world, this recipe guarantees success no matter where you are on the planet. No guarantees if you live in a space station, but I suppose frying food in zero gravity is probably the worst/most dangerous idea in the known universe?
🥕Notable ingredients and substitutions
Crunchy and vibrant, carrots bring a burst of color and a dose of beta-carotene to Bakwan Sayur. Purple carrots, celery root (like you would use for making kereviz), parsnips, or sweet potatoes (that you would use for rujak serut and shakarkandi ki chaat) also work fine as a replacement for carrots.
A staple in Indonesian cuisine, mung bean sprouts bring a delightful crunch to the fritters and are also used in dishes like kimchi fried rice and mi rebus. If mung bean sprouts are scarce, soy bean sprouts or shredded zucchini are good substitutes.
Bird’s Eye Chilies (Cabe Rawit)
These baby powerhouses pepper the fritters with flavorful heat. They are one of my favorite peppers, and I use them in everything from tom yum paste to ginisang munggo. For those who prefer a milder kick, substitute with jalapeños or serrano peppers, or leave them out altogether.
White Pepper (Lada Putih)
Not everyone uses white pepper in their bakwan sayur, but I think a little freshly ground white pepper lends a lovely backbone flavor to these bad boys.
*See the recipe card at the bottom of the page for exact quantities, nutritional info, and detailed cooking directions.
Javanese Tempeh Bakwan Sayur: Tempeh ain’t just the stuff your sambal goreng and mie goreng dreams are made of! For a Javanese-inspired fritter, mix finely crumbled tempeh into the batter. This adds a nutty flavor and a chewy texture, and some great tasting protein.
Balinese Heat: Channel the fiery spirit of Bali by serving your Bakwan Sayur with a side of Sambal Matah. This traditional Balinese condiment, a blend of shallots, lemongrass, chilies, and lime, brings a zesty kick. Dip your crispy fritters into this aromatic sambal for an explosion of unmistakably Balinese flavors. If you want to ramp up the Balinese vibe even more, add a spoonful of bumbu Bali paste to the batter.
📖 How to make legendary Bakwan Sayur
Make these classic snacks perfectly your first time by following these step-by-step instructions with important tips. Or you can follow along with the easy-to-print recipe card towards the bottom of this page.
Julienne carrots, rinse beansprouts, and shred cabbage. Slice spring onion, chilies, and shallots. Mince garlic. Combine all in a bowl.
Batter than Old King Kong:
Whisk the flours, turmeric, coriander, salt, white pepper (or black pepper). Gradually add water for a smooth consistency.
Add the batter to your veggies, ensuring even coating. Massage and squeeze batter into veggies with your hands to ensure everything is fully mixed in.
Heat preferred oil in a deep pan. Use a thermometer to maintain 350-360°F (177-182°C).
Carefully drop rough spoonfuls or slightly squeezed handfuls of batter into the hot oil. Fry for a few minutes until golden brown and crispy.
Only fry 5-6 fritters at a time so as not to overcrowd the pan, which might cause fritters to stick together or cook more slowly and therefore absorb more oil.
Drain and Cool:
Use a slotted spoon to remove Bakwan Sayur. Let excess oil drain. Place on a wire rack to drip dry.
You know Indonesian desserts gotta follow a meal like this, right? Klepon, Kuih dadar, putu ayu, cekodok pisang, martabak manis, or kolak biji salak. There are just too many great ones to choose from, so eat all the dessert in the galaxy. Just sayin!
- Veggie Variety is Key: Look, it’s totally okay if you don’t have the exact veggies I have called for in my recipe. Just be sure to substitute with a variety of crisp root vegetables and aromatics that will make you happy. Don't shy away from experimenting with additional veggies for a personalized touch.
- Hands-On Coating Technique: Use your hands to massage and squeeze the batter into the prepared vegetables. This step ensures each strand of carrot and sprout is fully infused with the savory goodness of the batter. I also like to gently squeeze each fritter before carefully dropping it into the oil to ensure it will not loosen in the hot oil as it cooks.
- Precision in Oil Temperature: This is probably one of the most important things to follow in this recipe. Use clean, fresh cooking oil, and ideally use a frying thermometer, fry between 350-360°F (177-182°C). Or air fry in batches at 375°F. Fresh oil at the right temperature is critical for these to taste great and not absorb extra grease.
- Drain and Enjoy Promptly: Once your Bakwan Sayur achieves that golden brown and crispy perfection, use a slotted spoon to remove them from the oil. Let excess oil drain, and place the fritters on a wire rack to drip dry. Serve while they're hot. As they cool the moisture from the vegetables will wick out into the crisp batter and make them softer, which is way less fun!
🤷♀️ Recipe FAQs
Certainly! Swap plain flour with a gluten-free measure-for-measure blend. If you don’t mind the taste of it, a little chickpea flour works great here to help bind them.
If you are making a more involved meal and want to get some of the prep out of the way in advance, assemble all shredded vegetables and place them in a container under refrigeration. Separately mix and store the batter in its own container in the refrigerator. When you are ready, just mix them and fry. The batter and vegetables can be prepared up to 48 hours in advance.
Experiment with traditional Indonesian sauces like kecap manis (which I show you how to make in my mie goreng recipe) and sambal or try shatta sauce if you want something really spicy!
Store any leftover Bakwan Sayur in an airtight container in the refrigerator. Consume deep-fried food within 2 days for the best taste and texture. Avoid freezing, as it may compromise the crispy integrity of the fritters.
🔥 Oven Reheating:
To revive the crispy goodness, reheat Bakwan Sayur in an oven at 350°F (180°C) for 8 minutes or until crisp and hot throughout.
✌️My faves to serve with this dish:
Say Hi on Social! 👋
Follow me on Instagram & Facebook for more recipes.
❤️Love this recipe? It helps me out greatly if you leave a 5-star 🌟🌟🌟🌟🌟rating in the recipe card below and maybe even leave me a lovey-dovey comment too!
- 1 cup carrot peeled and julienne cut
- 1 cup beansprouts
- 1 cup green cabbage shredded
- 2 scallions thinly sliced
- 2 bird’s eye chilies thinly sliced
- 2 shallots thinly sliced
- 2 cloves garlic minced
- ⅔ cup all-purpose flour
- 2 tablespoons rice flour
- ⅛ teaspoon turmeric
- ½ teaspoon coriander powder
- ½ teaspoon salt
- ½ teaspoon white pepper.
- 1 ¼ cup cold water
- Canola oil vegetable oil, or peanut oil for frying (see notes for air-frying instructions)
- Minced shallot
- Sliced bird’s eye chilies
- Begin by preparing the vegetables: julienne cut (or shred) carrots, rinse and drain the beansprouts, and shred the cabbage. Thinly slice scallions, bird’s eye chilies, and shallots. Mince garlic and combine all the prepared vegetables in a mixing bowl.
- In a separate bowl, prepare the batter by whisking tougher all-purpose flour, rice flour, turmeric, coriander powder, salt, and white pepper. Gradually add cold water, stirring to achieve a smooth, lump-free consistency.
- Add the batter to the prepared vegetables, ensuring they are evenly coated. Use your hands to massage and squeeze the batter into the vegetables.
- In a deep pan, heat your preferred frying oil (canola, vegetable, or peanut oil). If you have one, use a frying thermometer to ensure the oil temperature is between 350-360°F (177-182°C).
- Once the oil is hot, drop rough, shaggy spoonfuls (about 3 tablespoons) of the vegetable batter into the oil, and fry for a few minutes until golden brown and crispy.
- Use a slotted spoon to remove the Bakwan Sayur from the oil, allowing excess oil to drain.
- Place the fried Bakwan Sayur on wire rack to drip dry.
- Serve the Bakwan Sayur hot, with a dipping sauce of your choice, and enjoy the crispy goodness of this Indonesian vegetable fritter!
- Generously coat the air fryer basket with oil or if your unit allows, use parchment paper to prevent sticking.
- Spoon portions of the vegetable batter onto the prepared air fryer basket, leaving space between each piece.
- Air Fry at 375°F (190°C) for about 8-10 minutes, flipping halfway through, until the Bakwan Sayur is golden brown and crispy.
- Note: Air frying times may vary, so keep an eye on the Bakwan Sayur to ensure they reach the desired level of crispiness. Adjust the temperature and time as needed.