Lumpiang Shanghai
Watch the full recipe

See every step.

Play the complete Kubo Cooks video directly on this page.

Player not loading? Watch on YouTube ↗

Discover the dish

About Lumpiang Shanghai

Lumpiang Shanghai is a Filipino favorite made with a savory filling, thin wrappers, and a crisp, golden shell. It fits right into a birthday spread, but it’s just as welcome beside rice for an everyday meal.

Lumpia reflects the Chinese influence on Filipino cooking, with local ingredients and preparations helping it become part of our own food traditions.

This version combines ground pork, finely chopped shrimp, carrots, and aromatics. The filling is cooked before wrapping, giving you a chance to adjust its seasoning and cook off excess moisture before it goes inside the wrapper.

The Kubo Cooks method

Why This Recipe Works

A crisp wrapper starts with what’s inside it. Pork and vegetables release moisture as they cook. Cooking the filling separately lets some of that moisture evaporate in the pan instead of becoming trapped inside the lumpia.

The goal isn’t to make the filling completely dry. You still want tender pork and a little richness, just without liquid collecting underneath. Ground pork with some fat helps with that balance, while a small amount of cornstarch helps thicken the remaining juices.

Grating the carrots and finely chopping the other ingredients makes the filling easier to portion and roll. You get a more even mixture instead of large pieces pushing against the wrapper.

Finally, the wrappers need a little care after frying, too. Resting the lumpia on a wire rack gives steam somewhere to escape. Piling them together while they’re hot traps that steam and can soften the crisp shell you’ve just worked for.

Ingredients for Lumpiang Shanghai arranged on a wooden chopping board.
What to know

Ingredient Notes

Ground pork
Choose pork with some fat rather than the leanest option. The filling is cooked before wrapping, so that extra richness helps keep it from tasting dry.
Shrimp
Chop it very finely so it mixes evenly with the pork instead of forming large pieces.
Carrots
Grate them rather than cutting them into chunks. They add sweetness, color, and texture without making the rolls difficult to wrap.
Garlic, onion, and green onions
Mince the garlic and onion finely. Separate the white and green parts of the green onions so the whites can cook with the aromatics and the greens can go in later.
Pork broth cube and oyster sauce
Both add savory flavor and salt. Taste the fully cooked filling before adding more salt or the optional all-purpose seasoning.
Cornstarch
This helps bind the remaining juices. It doesn’t replace cooking off excess liquid first.
Lumpia wrappers
I use regular small wrappers. Choose thin wrappers intended for frying, and keep the unused stack covered while you work so the edges don’t become brittle.
Flour and water
These make the sealing paste. Brush on just enough to close the wrapper without soaking it.
Cooking oil
Use a neutral oil suitable for deep-frying, such as canola or vegetable oil.
White vinegar
Used for the optional finishing tip explained in Kubo Cooking Notes below.
Make it your own

Substitutions

Ground pork
Use ground chicken, ground beef, or a pork + beef mix for a different take on the filling. Leaner meat can turn out less juicy, so avoid cooking it until dry. Cook the filling fully and let excess moisture evaporate before wrapping. For fish lumpia, boneless bangus has been proven as a great substitute.
Shrimp
Leave it out for a simpler pork filling, or replace the 100 g shrimp with another 100 g ground pork to keep a similar amount of filling. Cook the extra pork with the rest of the meat.
Oyster sauce
Try a mushroom-based vegetarian oyster sauce. Add a little at a time and taste the fully cooked filling before adding more salt, since brands vary in sweetness and saltiness.
Pork broth cube
Use a chicken broth cube or a little powdered stock instead. Start with less and adjust after tasting the fully cooked filling, as cube sizes and seasoning strengths vary.
Lumpiang Shanghai process photo 1
Lumpiang Shanghai process photo 2
Lumpiang Shanghai process photo 3
Gallery photos 1–3 of 6
From my kitchen

Kubo Cooking Notes

Look at the filling, not just the timer

When you move the filling aside with a spatula, there shouldn’t be a puddle of liquid left behind. The mixture should still look moist, but it shouldn’t be swimming in its own juices. If it’s too wet, keep cooking and stirring before adding more thickener.

Once the pork and shrimp are fully cooked, let a small spoonful cool enough to taste. Adjust the seasoning before wrapping, remembering that the dipping sauce will bring its own flavor to the finished bite.

Roll one before committing to the rest

Start with one roll to check how much filling your wrapper can comfortably hold. It should close neatly without stretching or tearing. Use that first roll as your guide so the rest are similar in thickness and fry more evenly.

Why are the wrappers yellow?

A lot of you have asked about the yellow wrappers in the video. These are common here in Iloilo! The yellow color typically comes from added food coloring, although ingredients can vary by maker.

You don’t need yellow ones to make this recipe. Thin, plain lumpia wrappers intended for frying are suitable too. If you’re curious about what gives your wrappers their color, check the packaging or ask the seller.

Vinegar finishing tip

In this recipe, I add a few drops of white vinegar near the end of frying. In my experience, this helps make the lumpia crispier and keeps it crunchy for longer. I want to emphasize that only a few drops are used. Too much can cause vigorous bubbling and make the oil overflow.

This step is optional. Vinegar contains water, so even a few drops can cause hot oil to spit or splatter. Never pour it directly from the bottle into the pan, and don’t increase the amount when making a larger batch. You can skip this step and follow the other tips for managing moisture, frying, and draining.

Plan ahead

Make-Ahead, Storage, and Reheating

Make ahead: Prepare the filling the day before and refrigerate it promptly in shallow containers. You don’t need to leave it on the counter until completely cold. Use the chilled filling for wrapping, then keep the prepared rolls refrigerated until you’re ready to fry.

Store leftovers: Refrigerate leftover lumpia within two hours of being at room temperature, or within one hour if the surrounding temperature is above 32°C. Store in a covered container at 4°C or below and eat within three to four days. For filling prepared ahead, count that storage time from when it was first cooked. These limits concern food safety, not how long the wrappers stay crisp.

Freeze: Allow the fried lumpia to cool completely, then arrange the rolls in a single layer and freeze until firm. Transfer them to a freezer-safe bag or covered container, separating layers with parchment paper. Consume within 1–2 months for the best wrapper quality. Reheat the frozen lumpia in an oven or air fryer until thoroughly hot and crisp. Avoid the microwave when possible because it will soften the wrappers.

Reheat: Arrange the lumpia in a single layer in an oven or air fryer to help restore the wrapper’s crispness. Check that the center reaches 74°C rather than judging by the wrapper alone. Reheating time will depend on the size of the rolls and your appliance.

Bring it to the table

Serving Suggestions

  • Serve with sweet chili sauce for a sweet-and-savory pairing, or spiced vinegar for something sharper.
  • Make it an everyday meal with steamed rice and a vegetable side.
  • Add it to a celebration spread with pancit or Filipino spaghetti.
  • Keep dipping sauces on the side so everyone can dip as they eat without soaking the wrappers.
  • For a long handaan, fry and serve smaller batches throughout the meal instead of putting everything out at once. Keep any cooked reserve properly hot, above 60°C, until serving.

Ingredients

  • ~70 regular small lumpia wrappers
  • Equal parts water and flour for the lumpia wrapper paste (about 2 Tbsp each)
  • A few drops of white vinegar, for the finishing tip (optional)
  • Cooking oil, for deep-frying

For the Lumpia Filling

  • 500 g ground pork
  • 200 g carrots (about 2 large)
  • 100 g shrimp
  • 30 g garlic (about 7 cloves)
  • 130 g onion (about 2 medium)
  • 30 g green onions (about 1 cup)
  • 1 pork broth cube
  • 1 Tbsp oyster sauce
  • ½ tsp salt, or to taste
  • ½ tsp black pepper, or to taste
  • 1 Tbsp cornstarch
  • All-purpose seasoning, to taste (optional)

How to Make It

Pre-Cooking the Filling

  1. Finely mince the garlic and onion, then grate the carrots.
  2. Finely chop the green onions, keeping the white and green parts separate.
  3. Finely chop the shrimp until almost paste-like, then set aside.
  4. Heat a pan over medium heat and add the ground pork.
  5. Cook while breaking it apart until some of the fat has rendered.
  6. Add the garlic, white parts of the green onions, and onion, then sauté until fragrant and softened.
  7. Stir in the pork broth cube, if using.
  8. Add the grated carrots, oyster sauce, and black pepper.
  9. Add the chopped shrimp and green parts of the green onions, then mix well.
  10. Season with salt to taste, adding all-purpose seasoning if desired.
  11. Stir in the cornstarch and cook until the filling is fully cooked and most of the excess moisture has evaporated.
  12. Transfer the filling to a bowl and let it cool completely before wrapping.

Wrapping the Lumpia

  1. Mix equal parts water and all-purpose flour to make a sealing slurry.
  2. Carefully separate the lumpia wrappers and keep them covered while working to prevent them from drying out.
  3. Place 1 to 2 tablespoons of filling near the edge of a wrapper.
  4. Fold the wrapper over the filling and roll it halfway.
  5. Brush the sides with slurry, tuck them inward, then continue rolling tightly.
  6. Seal the top edge with more slurry, if needed.
  7. Repeat with the remaining filling and wrappers.

Frying the Lumpia

  1. Heat enough cooking oil to 175–180°C (approximately 350–355°F).
  2. Carefully add the lumpia and fry in batches without overcrowding the pan.
  3. Fry for 3 to 5 minutes, turning as needed, until evenly golden and crisp.
  4. Optional vinegar finishing tip: Near the end of frying, add only a few drops of white vinegar. Even a few drops can cause hot oil to spit or splatter; too much can cause vigorous bubbling and overflow. Keep your hands and face away from the pan. Never pour directly from the bottle, and do not increase the amount for a larger batch. Skip this step if preferred.
  5. Remove the lumpia and drain them on a wire rack so air can circulate underneath.
  6. Check that the oil has returned to the proper temperature before frying the next batch.
  7. Let the lumpia rest on the rack for a few minutes before serving.
  8. Serve with sweet chili sauce or spiced vinegar and enjoy!
Kubo Tips
  • Pre-cook the filling to remove excess moisture that can make the wrappers soggy as the lumpia rests.
  • Let the filling cool completely before wrapping to prevent trapped steam from softening the wrappers.
  • Use ground pork with some fat so the filling stays juicy even after pre-cooking.
  • Do not overfill the wrappers, and keep each roll tight and properly sealed to prevent bursting.
  • Keep unused wrappers covered so they do not dry out or crack.
  • Maintain the oil at 175–180°C (approximately 350–355°F), avoid overcrowding the pan, and check the temperature before frying each new batch.
  • Optional vinegar tip: Use only a few drops near the end of frying. Even a few drops can splatter; too much can make the oil overflow. Never pour from the bottle or increase the amount for a larger batch. This step can be skipped.
  • Drain the fried lumpia on a wire rack instead of paper towels so steam does not collect underneath.