How To Make Traditional Cape Malay Pickled Fish
This Traditional South African Cape Malay Pickled Fish is one of those recipes that carries both flavor and tradition. Traditionally enjoyed over Easter, the fish rests for 48 hours in a fragrant marinade of curried onions, bay leaves, and warm spices, allowing every bite to become more tender and flavorful.
Looking for more easy seafood recipes like this? You might also enjoy Pickled Fish, Pan-Fried Yellowtail, Seafood Marinara, or Oven Baked Fish.

In our home, this dish is always served with warm South African Hot Cross Buns over the Easter weekend.
Pickled fish is a celebrated Easter dish in South Africa and is believed to have its roots in Cape Town’s Cape Malay community — a beautiful reminder of how food tells the story of culture, family, and heritage. Grab your ingredients and let’s get started on this classic Cape Malay pickled fish recipe you’ll want to make year after year.
Traditionally, pickled fish is enjoyed on Good Friday as a meat-free meal, in keeping with religious tradition, but it’s often served throughout the entire Easter weekend. It’s always a good idea to make more than you think you’ll need — this is one of those dishes that disappears quickly and tastes even better as it sits, making it perfect to last the full holiday weekend.
For a different twist, don’t miss my Pickled Fish Recipe with turmeric — a reader favorite.
Ingredients For Pickled Fish


Before you start, here are a few simple recipes that pair beautifully with this dish:
- Mascarpone Cheese Dip (perfect starter)
- Lentils with Dumplings (comfort side)
- How to Clean & Cook Artichokes (great side option)
How To Make Traditional Pickled Fish Cape Malay-Style
- Prep the Fish
Defrost fish if frozen and bring to room temperature. Cut into 5 cm / 2 in squares or rectangles. Pat dry with kitchen paper and season lightly with salt, pepper, and fish spice. - Fry the Fish
Dredge fish in flour and beaten egg, shaking off excess. Heat oil in a large non-stick pan. Fry fish until golden brown on both sides. Remove to a rack or plate lined with kitchen paper and set aside. - Toast the Whole Spices
Heat a dry pan over medium-high heat. Add bay leaves, fennel seeds, coriander seeds, cumin seeds, peppercorns, and cloves. Toast for 2–3 minutes, stirring constantly, until fragrant. Transfer to a plate to cool, then crush. - Sauté the Aromatics
Return the same pan to medium heat. Add oil, then sauté garlic, ginger, onions, and chili. Add crushed toasted spices, spice powders, salt, vinegar, and water. Reduce to medium-low and simmer for 15 minutes. - Add the Fish
Carefully add fried fish to the onion sauce. Spoon sauce over fish. Cover and simmer for 10 minutes. If needed, add 1 cup of half water, half vinegar for extra liquid. - Cool & Store
Transfer fish and all sauce to a non-metallic dish. Cool completely, then cover and refrigerate for at least 24 hours before serving.
Storage
- Transfer the fish to a non-metallic dish.
- Pour all the sauce over the fish — don’t leave any liquid behind.
- Cover and let cool completely before refrigerating.
- Refrigerate at least 24 hours, ideally 2–3 days, to allow the fish to absorb the flavors.
Tip: The resting period is how the fish self-preserves while taking on the sweet, sour, and savory notes of the spices. The longer it sits, the more flavorful it becomes.
Serving Suggestions
- Traditionally served with hot cross buns and butter — a true Cape Malay classic!
- Can also be enjoyed on its own as a cold appetizer.
Want to serve this as part of a full meal? Try it with:
- Fresh hot cross buns or crusty bread
- A simple salad
- A light pasta option like Creamy Bacon Pasta

Make-Ahead & Storage Tips
- Pickled fish improves with time; best made 2–3 days ahead.
- Store in an airtight container in the fridge for up to 5 days.
- Serve cold or allow to sit briefly at room temperature before serving.
More Recipes You’ll Love
- Seafood Marinara
- Easy Pan Seared Salmon Fillets With Lemon Garlic Butter
- Oven Baked Fish
- Salmon Pasta Recipe Without Cream
- Fennel Air Fryer Salmon
If you try this recipe, I’d love to hear how it turned out 🤍
Leave a comment below or tag me on Instagram!
Traditional South African Pickled Fish Cape Malay-Style
Ingredients
Fish Batter
- 1 kg firm white fish 2.26 lbs, cut into 5 cm / 2 in squares or rectangles
- 1/3 cup sunflower or vegetable oil use more as needed
- 1/2 cup flour
- 4 eggs beaten
- 1/2 tsp salt and pepper to taste
Dry Roast Spices
- 4 bay leaves stems removed
- 1 tsp fennel seeds
- 5 ml coriander seeds
- 1 tsp cumin seeds
- 1 tbsp black peppercorns
- 6 cloves
Spice Powders
- 1 tsp turmeric
- 1 tsp fish spice
- 1 tsp paprika
- 2 tbsp masala curry powder
- 1 tsp salt
Onion Pickle
- 500 g onions approx. 4–5 medium, sliced into 5 mm slices
- 3/4 cup vegetable or canola oil
- 2 cups white wine vinegar approx. 500 ml
- 1 1/2 cups water
- 1 fresh chili de-seeded & sliced, or 1/2 tsp chili flakes
- 4 garlic cloves minced
- 1 thumb-size piece of ginger grated
Instructions
Prep the Fish
- If frozen, defrost fish to room temperature.
- Cut into 5 cm / 2 in squares or rectangles. Pat dry with kitchen paper.
- Season lightly with salt, pepper, and fish spice.
Fry the Fish
- Dredge the fish in flour and beaten egg, shaking off excess flour.
- Heat oil in a large non-stick pan (you’ll use this pan for the rest of the recipe).
- Fry fish until golden brown on both sides.
- Remove fish to a rack or plate lined with kitchen paper. Don’t worry if it cools — it will cook further in the pickling sauce.
Toast Whole Spices
- Heat a dry pan over medium-high heat.
- Add bay leaves, fennel seeds, coriander seeds, cumin seeds, black peppercorns, and cloves.
- Stir constantly for 2–3 minutes until fragrant and lightly darkened. Some may crackle — this is normal.
- Transfer to a plate to cool, then crush in a grinder or mortar.
Sauté Aromatics
- Return the same pan used for frying fish.
- Heat oil over medium heat, then sauté garlic, ginger, onions, and chili.
- Add crushed toasted spices, spice powders, salt, pepper, vinegar, and water.
- Reduce heat to medium-low and simmer for 15 minutes to build flavor.
Add the Fish
- Carefully place fried fish into the aromatic onion sauce.
- Spoon sauce over fish to cover.
- Cover and simmer for 10 minutes.
- If needed, add 1 cup of half water, half vinegar to ensure fish is mostly submerged.
Storage
- Transfer fish and sauce to a non-metallic dish.
- Pour all liquid over fish — don’t leave any behind.
- Allow to cool completely, then cover with cling wrap.
- Refrigerate at least 24 hours, ideally 2–3 days, to let flavors develop.
- Tip: Resting the fish in the fridge allows it to absorb the sweet, sour, and savory flavors from the spices, intensifying taste and improving texture over time.
Notes
- Use fresh, firm fish to prevent the fillets from falling apart.
- This recipe improves with time and is best made 1–3 days ahead.
- Taste as you go and adjust for acidity or sweetness (a small amount of sugar if needed).
- The recipe uses a generous amount of onions — feel free to reduce the quantity if preferred, though they add great flavor.
- Whole spices give the best aroma and depth of flavor, but you may use only spice powders if needed.
- Transfer fish and sauce to a non-metallic dish and pour all liquid over the fish.
- Allow to cool completely, then cover and refrigerate for at least 24 hours, ideally 2–3 days.
- Store in an airtight container in the fridge for up to 5 days.
- Serve chilled or allow to stand briefly at room temperature before serving.



Hi there ????
I am making your pickled fish tomorrow…
Can’t wait… have a question… could I bottle this pickled fish? If so… For how long do you think?
Regards Erika
Hi Erika, enjoy the pickled fish and thank you being here. I’ve actually never bottled my pickled fish so I don’t know. Normally when it’s made its all eaten up 🙂 Happy cooking!
Made your other pickled fish 🐟 recipe. Divine.i almost think the best I have ever tasted. But thats my opinion. 😆
Hi Tersha, thank you so much — I read this twice because it means so much to me! Glad you enjoyed it, Happy Easter Weekend!💜