Vietnamese Cuisine
Banh Xeo (Bánh Xèo)
Crispy Vietnamese sizzling crepes filled with pork, shrimp, mung beans, and bean sprouts
The name tells you everything you need to know about the moment that matters. Banh xeo means "sizzling cake," and the sizzle is the sound of thin rice flour batter hitting a hot, oiled pan, spreading into a lacy golden disc that will crisp at its edges while the centre stays just pliable enough to fold. That sound, sharp and immediate, is the signal that the pan is ready and the crepe is going to work. If there is no sizzle, the pan is too cool and the batter will steam rather than fry, producing something limp where it should shatter.
Banh xeo varies considerably across Vietnam. In the south, where this version is rooted, the crepes are large, plate-sized, and generously filled with pork belly, shrimp, mung beans, and a tumble of bean sprouts. The batter includes coconut cream, which adds richness and helps the edges fry to a deep golden crisp. In central Vietnam, particularly around Hue and Da Nang, the crepes shrink to the size of a palm and arrive stacked, with different fillings and a peanut-based dipping sauce. Northern versions, called banh cuon in some contexts, take a different path entirely. This recipe follows the southern tradition, producing large, dramatically crisp crepes meant to be torn into pieces, wrapped in lettuce and fresh herbs, and dipped into nuoc cham.
The batter needs time. Resting it for at least three hours, and preferably overnight, allows the rice flour to hydrate fully and the starch granules to relax. This patience is what separates a truly crisp, lacy banh xeo from one that cooks up thick and chewy. Much like the quiet attention that makes pho bo broth clear, or the careful wrapping that holds goi cuon together, banh xeo rewards the cook who gives each step its proper time.
At a Glance
Yield
10 to 12 crepes (serves 4 to 6)
Prep
45 minutes (plus 3 hours resting)
Cook
1 hour 30 minutes
Total
5 hours 15 minutes
Difficulty
Medium
Ingredients
- ½ lbrice flour
- ⅔ cupall-purpose flour (or cornstarch for gluten-free)
- 2 tspground turmeric
- 1 tspsalt
- 3½ cupwater (room temperature)
- 1¾ cupcoconut cream (or full-fat coconut milk)
- 3scallions, sliced into 1 cm pieces (added just before cooking)
- 3½ ozdried split mung beans
- 1½ lbpork belly, in one piece
- 1 lbshrimp (size 45/50 or 31/35), peeled and deveined
- 1medium yellow onion, halved and thinly sliced into half-moons
- 3 clovesgarlic, minced
- 1small shallot, minced
- 2 tspchicken or mushroom bouillon powder (optional)
- 1½ lbfresh bean sprouts
- —Neutral oil for frying (vegetable, canola, or rice bran)
- 1head butter lettuce or red leaf lettuce, leaves separated
- 1 bunchfresh mint
- 1 bunchfresh cilantro
- 1 bunchVietnamese perilla (tia to), optional
- 1 bunchmustard greens (cai xanh), optional
- ¼ cupwarm water
- 2½ tbspsugar
- 1 fl ozfish sauce
- ½ fl ozfresh lime juice (about 1 lime)
- 1 clovegarlic, minced
- 1small red chili, thinly sliced
- 1 tbspshredded carrot (optional, for sweetness)
- —Vietnamese pickled daikon and carrot (do chua)
Method
- 1
Combine the rice flour, all-purpose flour, turmeric, and salt in a large mixing bowl. Whisk in the water and coconut cream until the batter is completely smooth with no lumps. The consistency should be thin and pourable, similar to whole milk. Cover and rest at room temperature for at least 3 hours, or overnight in the refrigerator. The longer rest allows the starches to hydrate fully, which produces a crispier, more delicate crepe.
- 2
Rinse the dried mung beans under running water until the water runs clear. Transfer to a small saucepan, cover with water by about 5 cm, and bring to a boil over medium-high heat. Reduce to a gentle simmer and cook uncovered for 18 to 20 minutes, stirring halfway through, until the beans are soft but still holding their shape. They should crush easily between your fingers. Drain, season with a pinch of salt, and set aside.
- 3
Place the pork belly in a saucepan, cover with cold water, and bring to a boil. Reduce to a simmer and cook for 25 to 30 minutes until cooked through and tender enough to slice cleanly. Remove, let cool for 10 minutes, then slice into thin pieces, each about 3 mm thick. You want every slice to have a layer of skin, fat, and meat.
- 4
If the shrimp are large, cut each in half lengthwise or into bite-sized pieces. In a skillet, heat 1 tablespoon of oil over medium-high heat. Add half the garlic and shallot and cook until fragrant, about 30 seconds. Add the shrimp and season lightly with 1 teaspoon of bouillon powder or a pinch of salt. Toss just until the shrimp turn pink on the outside, about 1 to 2 minutes. They do not need to cook through as they will finish inside the crepe. Transfer to a plate.
- 5
Make the nuoc cham. Stir the sugar into the warm water until dissolved. Add the fish sauce, lime juice, garlic, and chili. Taste and adjust. It should be a balanced blend of sweet, salty, sour, and gently spicy. Set aside for the flavours to meld while you cook the crepes.
- 6
When ready to cook, stir the batter well (the rice flour settles) and add the sliced scallions. If the batter has thickened after resting, thin it with a few tablespoons of water. It should coat a spoon lightly but run off in a steady stream.
- 7
Heat a 30 cm nonstick skillet over medium-high heat. Add 2 teaspoons of oil and a small handful of sliced onion. Let the onion soften for about 30 seconds, then add 4 to 5 slices of pork belly and 3 to 4 pieces of shrimp. Saute for about 1 minute until lightly fragrant.
- 8
Give the batter a quick stir, then ladle in about 160 to 180 ml (roughly two-thirds of a cup). Immediately lift the pan off the heat and tilt and rotate it so the batter swirls to coat the bottom and rides partway up the sides. The batter should spread into a thin, even layer. If it pools too thickly, add a splash of water to the batter bowl and use a touch less next time. Set the pan back on the heat.
- 9
Scatter a spoonful of mung beans and a generous handful of bean sprouts over one half of the crepe. Cover with a lid, reduce heat to medium, and steam for about 3 minutes. The bean sprouts will wilt slightly and the batter will turn from opaque yellow to translucent at the edges, a clear sign that the top is setting through.
- 10
Remove the lid. Reduce heat to medium-low and let the crepe cook uncovered for another 5 to 7 minutes. You will hear the batter sizzling as moisture escapes and the underside crisps. If parts of the crepe look dry and are pulling away from the pan, you are on track. Drizzle or brush a thin line of oil around the edges to encourage even browning. The crepe is ready when the bottom is golden, the edges are lacy and crisp enough to snap, and you can slide the whole thing freely in the pan with a gentle shake.
- 11
Using a wide spatula, fold the crepe in half over the filling, then slide it onto a serving plate. Serve each crepe immediately while the edges are still crackling. Repeat with the remaining batter and fillings, wiping the pan with a paper towel between crepes if needed.
Key Ingredient Benefits
Turmeric (Curcuma longa) provides the signature golden colour of banh xeo batter. Its primary active compound, curcumin, has been extensively studied for anti-inflammatory and antioxidant effects. Curcumin is poorly absorbed on its own but becomes more bioavailable in the presence of fat, which the coconut cream in this batter supplies naturally. The turmeric here is used primarily for colour rather than flavour, but it contributes a subtle earthy warmth.
Coconut cream is the thick, high-fat layer that separates from full-fat coconut milk. It is rich in lauric acid, a medium-chain fatty acid that the body processes differently from long-chain fats. In the context of banh xeo, the fat content is what drives crispness. Some traditional recipes use full coconut milk rather than cream; the crepes will still work but may be slightly less crisp at the edges.
Mung beans (Vigna radiata) are one of the oldest cultivated legumes in Asia, with archaeological evidence of their use in India and Southeast Asia going back thousands of years. They are a good source of plant protein, folate, magnesium, and manganese. Split and cooked, they add a gentle starchy sweetness to the crepe filling that balances the richness of the pork belly.
Fish sauce (nuoc mam) is central to Vietnamese cooking. Made from small fish fermented with salt over 12 to 24 months, quality fish sauce is rich in naturally occurring glutamate, the amino acid responsible for umami perception. In the nuoc cham dipping sauce, it provides the savoury backbone that ties together the sweet, sour, and spicy elements.
Fresh herbs are not garnish in Vietnamese cuisine; they are a structural element of the meal. Mint aids digestion and provides a cooling counterpoint to the richness of the fried crepe. Vietnamese perilla (tia to) has a distinctive anise-like flavour and is considered a warming herb in Vietnamese traditional medicine. Wrapping each bite in lettuce and herbs transforms what could be a heavy dish into something surprisingly refreshing.
Why This Works
The batter ratio is the foundation of everything. A higher proportion of rice flour to wheat flour produces a crepe that crisps in a way wheat-only batters cannot, because rice starch retrogrades (recrystallises) quickly as it cools, creating a rigid, snappy texture. The small amount of all-purpose flour adds just enough gluten to hold the crepe together as you fold it, preventing it from shattering in the pan. Coconut cream contributes fat directly into the batter, which fries the crepe from within. As the water in the batter evaporates during cooking, the coconut fat remains behind, essentially shallow-frying the starch layer in situ. This is why coconut cream batters crisp more reliably than water-only versions.
Resting the batter for at least three hours is not optional for the best results. During this time, the rice flour granules fully absorb the liquid and swell, and the gluten in the wheat flour relaxes. The result is a batter that spreads thinner and more evenly in the pan. Some cooks rest overnight. Both HungryHuy and VickyPham emphasise this point, and reviews confirm that longer rest times produce crispier crepes.
Cooking in two phases, first covered and then uncovered, solves the problem of getting the filling cooked through while still achieving a crisp bottom. The covered phase creates steam that cooks the bean sprouts and sets the top of the batter. The uncovered phase drives off all that moisture, allowing the underside to fry and crisp. Skipping the covered step leaves you with raw sprouts; skipping the uncovered step leaves you with a soft, steamed crepe.
Pre-seasoning and partially cooking the pork and shrimp before they go into the crepe, a technique from VickyPham, means the proteins arrive with better flavour development. A quick saute with garlic and shallot gives the meat an aromatic base layer that a few minutes inside a steaming crepe cannot replicate on its own.
Substitutions & Variations
Flour: For a fully gluten-free version, replace the all-purpose flour with an equal weight of cornstarch or tapioca starch. The crepes may be slightly more fragile when folding but will crisp well. VickyPham uses cornstarch in her scratch batter with good results.
Coconut cream: If unavailable, use full-fat coconut milk. Avoid light coconut milk, as the reduced fat content produces a noticeably less crisp crepe. In a pinch, you can substitute with an equal volume of water plus 2 tablespoons of neutral oil, but the flavour and texture will differ.
Pork belly: Thinly sliced pork shoulder or boneless pork chops can replace the belly for a leaner crepe. The flavour will be lighter. For a vegetarian version, use sliced firm tofu or mushrooms (king oyster or shiitake work particularly well).
Shrimp: Squid, scallops, or additional pork can replace the shrimp. For a fully vegetarian banh xeo, omit both proteins and increase the mung beans and add thinly sliced mushrooms.
Bean sprouts: Thinly sliced cabbage (raw) is a common substitute when bean sprouts are unavailable, and some cooks prefer the texture.
Premix flour: Vietnamese grocery stores sell banh xeo premix flour (bot banh xeo), which already contains rice flour, turmeric, and sometimes coconut powder. Follow the package directions for water ratios and add coconut cream for extra crispness.
Central Vietnamese style: Make the crepes smaller (15 to 20 cm) and serve with a peanut dipping sauce (tuong leo) instead of nuoc cham. Use fewer fillings per crepe and stack them on a shared plate.
Serving Suggestions
Banh xeo is meant to be eaten with your hands. Tear off a piece of the crispy crepe, place it on a lettuce leaf, add a sprig of mint or perilla, roll it loosely, and dip it into the nuoc cham. The contrast of textures and temperatures is the whole point: hot, crisp batter against cool, crunchy lettuce and bright, aromatic herbs, all brought together by the sweet-salty-sour dipping sauce.
This is a communal dish. Set the crepes, herb plate, and nuoc cham in the centre of the table and let people assemble their own bites. The cook is usually standing at the stove producing crepes continuously while everyone eats, so make peace with being a short-order cook for this meal.
For a fuller Vietnamese spread, serve banh xeo alongside goi cuon (fresh spring rolls) for a lighter counterpoint, or follow the meal with a bowl of canh chua (sour tamarind soup) to refresh the palate. If you are exploring the broader landscape of Southeast Asian wrapped and dipped foods, bun cha shares the same spirit of grilled meat and fresh herbs with nuoc cham, while pad thai and som tam offer the same interplay of sweet, sour, salty, and spicy that defines the region's cooking.
Storage & Reheating
Batter: Leftover batter keeps in the refrigerator for up to 2 days. Stir well before using, as the rice flour will settle. Add a splash of water if it has thickened.
Cooked crepes: Banh xeo is best eaten immediately. The crispness begins to fade within minutes as steam from the filling softens the batter. If you must hold crepes briefly, place them on a wire rack in a 100C oven in a single layer with space between them, which slows the softening.
Fillings: Cooked pork belly, shrimp, and mung beans can be prepared a day ahead and refrigerated. Bring to room temperature before using, or warm gently in a pan.
Nuoc cham: Keeps in the refrigerator for up to 5 days. The garlic and chili will intensify over time, which most people consider a benefit.
Herb plate: Prepare fresh for each meal. Herbs wilt and lose their brightness within hours of being picked or washed.
Reheating cooked crepes: If you have leftover folded crepes, the best recovery method is a quick stint in a hot, dry skillet over medium-high heat for 1 to 2 minutes per side. This will re-crisp the exterior, though the texture will not fully match a freshly made crepe. An air fryer at 190C for 3 to 4 minutes also works reasonably well.
Nutrition Facts
Calories: 1180kcal (59%)|Total Carbohydrates: 68g (25%)|Protein: 36g (72%)|Total Fat: 85g (109%)|Saturated Fat: 37g (185%)|Cholesterol: 170mg (57%)|Sodium: 980mg (43%)|Dietary Fiber: 8.5g (30%)|Total Sugars: 13g
You Might Also Like
Ratings & Comments
Ratings & Comments
Ratings
Share your thoughts on this recipe.
Sign in to rate and comment



