Laksa Johor is a beloved Malaysian noodle dish from the southern state of Johor, distinguished by its use of spaghetti instead of rice noodles and a fish-based gravy thickened with sweet potato. Sweet, sour, spicy, and herbal all at once, this bowl comes alive with fresh Vietnamese mint, pineapple, and a punchy sambal on the side. It is comfort food that bridges Malay, Chinese, and Peranakan influences in a single pot.
Nutrition Facts
Per serving (estimated)
- 615 kcalCalories
- 26 gFat
- 10 gSaturated Fat
- 62 gCarbs
- 6 gFiber
- 11 gSugar
- 33 gProtein
- 780 mgSodium
- 920 mgPotassium
- 130 mgCalcium
- 6 mgIron
- 28 mgVitamin C
- 180 mcgVitamin A
Ingredients
For the spice paste (rempah)
- 10 dried red chilies, soaked in warm water for 15 minutes
- 6 shallots and 3 garlic cloves, peeled
- 1 inch (25 g) fresh ginger, sliced
- 1 inch (25 g) fresh galangal, sliced
- 1 inch (25 g) fresh turmeric, sliced (or 1 tsp ground)
- 1 tbsp belacan (shrimp paste), dry-toasted
- 3 candlenuts
- 1 tbsp coriander seeds and 1 tsp cumin seeds, dry-toasted
For the mackerel gravy
- 500 g (1.1 lb) fresh mackerel, gutted and cleaned
- 2 tbsp vegetable oil
- 1.2 L (5 cups) water
- 250 g sweet potato or yam, peeled and cubed
- 200 ml coconut milk
- 2 tbsp tamarind paste
- 1 tsp sugar and 1 1/2 tsp salt, or to taste
- 2 stalks lemongrass, lightly bruised
For the spaghetti and herbs
- 400 g (14 oz) dried spaghetti
- 1 tbsp olive oil
- 1 large bunch Vietnamese mint (daun kesum), leaves picked
- 1/2 cup cilantro leaves
For the garnishes
- 200 g bean sprouts, briefly blanched
- 100 g long beans, cut into 5 cm pieces, blanched
- 1 small cucumber, julienned
- 150 g pineapple, cut into small wedges
- 3 hard-boiled eggs, halved
- Sambal belacan, for serving
- Lime wedges, for serving
Directions
- Drain the soaked chilies and combine with shallots, garlic, ginger, galangal, turmeric, belacan, candlenuts, coriander, and cumin in a blender. Add 60 ml (1/4 cup) water and blend to a smooth paste.
- Heat the oil in a large pot over medium heat. Add the spice paste and fry for 8 to 10 minutes until fragrant, darkened, and the oil begins to separate at the edges, stirring often.
- Add the lemongrass and 1.2 L water and bring to a boil. Slip in the whole mackerel and the sweet potato cubes, reduce the heat, and simmer gently for 15 to 18 minutes until the fish is cooked through and the sweet potato is tender.
- Lift out the fish, let it cool slightly, then flake the flesh, discarding bones and skin. Return the flaked fish to the pot along with the coconut milk, tamarind, sugar, and salt. Simmer for 5 more minutes and adjust seasoning to balance sweet, sour, and salty.
- Meanwhile, bring a large pot of salted water to a boil and cook the spaghetti to al dente according to package directions. Drain, toss with the olive oil, and set aside.
- Divide the hot spaghetti among 6 deep bowls and ladle the mackerel gravy generously over the noodles.
- Top each bowl with a handful of bean sprouts, long beans, cucumber, pineapple, and a few leaves of Vietnamese mint and cilantro.
- Place a halved egg on each bowl and serve immediately with sambal belacan and lime wedges on the side.
Cook’s Notes
- Spaghetti is the signature here, what distinguishes Johor-style laksa from every other regional variety. Do not substitute rice noodles or vermicelli.
- If fresh mackerel is unavailable, sardines or Spanish mackerel both work well; canned sardines in tomato sauce can stand in for a quicker weeknight version.
- Belacan (toasted shrimp paste) is the soul of this gravy. Toast a small piece directly over a flame or in a dry pan until fragrant before blending.
- Daun kesum (Vietnamese mint or laksa leaf) gives the dish its signature aroma. If you cannot find it, substitute with a mix of regular mint and a little Thai basil.
- The gravy should be pourable but lightly thickened by the sweet potato; mash a few extra cubes into the broth if you prefer it thicker.
More Malaysia Recipes You’ll Love
Craving more flavors from Malaysia? Try these traditional recipes:









