Fish Ball Mee Pok
Mee pok is a Chaoshan noodle, brought by the Teochew people, perfected in Singapore.
The flat, wider, yellow alkaline noodle — distinct from Cantonese egg noodles. Mee pok is most often eaten tah (Hokkien for "dry"), tossed in a sauce that defines the cook's skill. The sauce is the test.
The classic four components of mee pok sauce:
- Chilli (sambal or chilli oil) — the heat and the colour
- Pork lard + fried shallot oil — the soul
- Vinegar (Chinese black vinegar) — the acid that cuts through richness
- Light soy + fish sauce + dark soy — the savoury foundation
Alongside the noodles: fish balls (made from yellow tail / wolf herring), fish cake slices, sometimes minced pork (the bak chor mee (minced pork noodles) variant). Soup on the side.
Singapore's bak chor mee (the minced pork variant) has been highly ranked by the World Street Food Congress. But the fishball mee pok version is more universal — every Singaporean has eaten it for breakfast at least once.
For young hawkers: noodles will come from a good supplier, fishballs from a quality fishball maker. Your differentiation is the sauce. Spend your time perfecting that.
🛒Ingredients
Three components — clear pork-anchovy soup, the per-bowl sauce, the toppings. The sauce is the test.
For the Soup Base ~1.5 L
| Pork bones | 500 g | |
| ikan bilis (dried anchovies) | 30 g | Dry-toasted. |
| Dried sole fish (ti po) | 10 g | Dry-toasted. |
| Dried scallops | 10 g | Optional. Adds heritage depth. |
| Soybeans | 30 g | Heritage technique — adds creaminess to the broth. |
| Garlic | 4 cloves | Smashed. |
| Water | 2 L | |
| Salt | 1.5 tsp |
For the Mee Pok Sauce per bowl
| Sambal chilli | 1 heaping tsp | |
| Pork lard oil (liquid) | 1 tsp | |
| Light soy sauce | 1 tsp | |
| Fish sauce | ½ tsp | |
| Dark soy sauce | ¼ tsp | For colour. |
| Chinese black vinegar (Chinkiang) | 1 tsp | |
| Sugar | ½ tsp | |
| White pepper | a pinch | |
| Sesame oil | a few drops | |
| Tomato ketchup | ½ tsp | Optional. Some stalls use it for sweetness; older stalls don't. |
Toppings per bowl
| Fresh mee pok (flat alkaline yellow noodles) | 100 g | Sourced from a good noodle supplier. |
| Fishballs | 4 | |
| yu jiao (fish dumplings) | 2 | Optional but traditional. |
| Sliced fish cake | 4 slices | |
| Bean sprouts | 50 g | Blanched. |
| Lettuce or chye sim (Chinese flowering cabbage) | 50 g | Blanched. |
| Fried crispy shallots | 1 tbsp | |
| Crispy lard cubes | 1 tsp | Optional. |
| Spring onion | 1 stalk | Chopped. |
| Coriander leaves | a few | |
| dong cai (preserved Tianjin vegetable) | 1 tsp | Optional but adds heritage flavour. |
🌶️Shifu's Lift
choose one path — see "Shifu's Secret" chapter for the philosophy- Old-school path: ⅛ tsp MSG dissolved in stock
- Modern hawker path: ¼ tsp chicken stock powder
- Heritage purist path: Already covered with ikan bilis + soybean broth
👨🍳Method
Five stages. Sauce in the bowl before noodles. Toss vigorously. Serve immediately.
Make the Broth
Blanch pork bones in boiling water for 3 minutes. Drain and rinse.
In a stockpot, combine pork bones, toasted ikan bilis, toasted sole fish, dried scallops, soybeans, garlic, 2 litres water. Simmer uncovered for 1 hour. Skim foam every 20 minutes.
Strain through fine sieve into a clean pot. Season with salt. Hold at low simmer.
Cook the Toppings
In the simmering soup: add fishballs and fish dumplings. They are cooked when they float to the surface (about 3–4 minutes). Add fish cake slices in the last minute (just to warm through).
In a separate pot of boiling water: blanch bean sprouts (15 seconds) and lettuce (30 seconds). Drain.
The Sauce — Per Bowl
In each serving bowl, combine all sauce ingredients before adding noodles. Stir well to dissolve the sugar and integrate the sauces. This is the secret — the sauce must be complete before the hot noodles hit it.
Cook the Noodles
Bring a separate large pot of water to a rolling boil. Use a noodle blanching basket (the classic perforated metal cylinder).
Drop fresh mee pok in for 45 seconds — do not overcook, or noodles turn gummy. Use chopsticks to fluff and prevent clumping.
Drain hard. Shake the basket well — water clinging to the noodles dilutes the sauce.
Toss & Serve
Immediately transfer the hot noodles into the bowl with the sauce. Toss vigorously with chopsticks for 10 seconds — every strand must coat. Add a small splash of hot soup (1 tbsp) to loosen if too dry.
Top with bean sprouts, lettuce, fishballs, fish dumplings, fish cake. Garnish with crispy shallots, lard cubes, dong cai, spring onion, coriander.
Serve immediately, with a separate small bowl of clear soup (with extra fish balls if generous) on the side.
🎯The Three Tips
Heritage. Master's. Mistake.
🏛 Heritage Note
The "Tah" Tradition
"Tah" (薄 / 干) means "dry" in Hokkien. The traditional way to eat noodles among labouring Teochew/Hokkien people was noodles tossed dry, with soup on the side — because dry noodles travel better in tiffin carriers and don't go soggy on a long walk to the dock or factory.
The dry-style noodle culture in Singapore is a fingerprint of working-class history. Today, you can choose dry or soup. Most heritage hawkers will tell you: "tah is better."
👨🍳 Master's Tip
The Sauce-Per-Bowl Discipline
Making the sauce in the bowl, before noodles hit, is the technique that separates good mee pok from great. Why?
If you make a big batch of sauce in advance, the vinegar evaporates, the chilli oxidises, and the lard solidifies. By the time you scoop into a bowl, the sauce is a shadow of its fresh self.
Per-bowl sauce assembly = each bowl tastes like the cook just made it for you. Yes, it's slightly slower in service. Yes, customers can taste the difference.
The other technique: always toss the noodles in the bowl before adding toppings. If you put toppings on first, the noodles below stick together and the sauce coats unevenly.
⚠ Common Mistake
Soggy Noodles
Three failures cause soggy mee pok:
- Cooking the noodles too long. 45 seconds maximum for fresh mee pok. Test one strand — should have slight chew, not raw, not soft.
- Not draining hard enough. Water on the noodle = diluted sauce. Shake the basket aggressively.
- Letting noodles sit before serving. Mee pok loses its texture within 90 seconds of plating. Eat immediately. Tell customers the same.
Fix: Drain on a tilted board for 10 extra seconds before tossing. If serving for delivery (not recommended for mee pok), undercook by 10 seconds and let residual heat finish.
📈 Scaling for Hawker Service
For a fishball noodle stall
- Volume: A successful stall does 200–400 bowls a day at lunch + breakfast.
- Pre-portioned sauce containers: Some stalls pre-mix sauce in small portion cups for service speed. I prefer per-bowl assembly — slower but better.
- Soup management: Make 15 L of soup at 5am, hold all day. Never mix new soup with old (old soup loses brightness; new soup adds freshness).
- Noodle sourcing: Build relationship with one good noodle factory. Daily delivery. Refuse stale noodles.
- Cost (Singapore 2026): Per bowl ~SGD 1.50 (noodles 0.40 + fishballs/cake 0.50 + sauce 0.20 + broth amortised 0.40). Sells SGD 4–6.50 standard, SGD 7–10 with extras. Margin: 65–75%.
A bowl of mee pok tah at 7am, with kopi-o on the side, the morning paper folded under your elbow — this is Singapore at its most ordinary, and most ours.