Hello!
This minced fish curry, also known as Machli ka Keema, is a quick Pakistani-style fish recipe that turns soft, flaky white fish into a richly spiced keema-style curry. In many Pakistani homes, keema is usually made with chicken, lamb, or beef mince, so using fish in this way can feel a little unexpected at first. That is exactly what makes this recipe so fun. The fish breaks down beautifully into the masala, creating a light, flavourful curry that is ready in very little time.
The idea came to me while I was making a regular fish curry and trying, not very successfully, to keep the pieces of fish from falling apart. Fish is delicate, especially white fish, and it can easily break once it has cooked through. Instead of fighting against that, I decided to lean into it and purposely break the fish into a mince-like texture. The result was simple, practical, and absolutely delicious. What began as a small kitchen experiment quickly became a family favourite.
A little fresh coriander and green chilli make this minced fish curry look and taste even better.
Fish is one of my favourite proteins to cook with because it is fast, easy, and ideal for busy weeknights. Unlike lamb or beef, which often need longer cooking times to become tender, white fish cooks in just a few minutes. It also absorbs spices beautifully, making it perfect for Pakistani curries. In this recipe, the fish is simmered briefly in a thick onion and tomato masala, then gently broken down with a spoon until it resembles keema.
For this minced fish curry recipe, boneless and skinless white fish fillets work best. Any mild white fish should do well, as long as it is cut into chunks and checked carefully for bones before cooking. Because the fish releases its own moisture as it cooks, you do not need to add much water after it goes into the pan. The final curry should be thick rather than soupy, with the masala clinging to the fish.
The most important part of this curry is the gravy. A good masala is what gives the dish its depth and warmth. The onions, garlic, tomatoes, cumin, coriander, chilli powder, and pepper are cooked together until the tomatoes soften and the mixture becomes thick and slightly mushy. If you have a little extra time, letting the gravy simmer a few minutes longer will help the onions and tomatoes break down further and allow the spices to become more aromatic. Some people prefer to blend their gravy, but for this fish keema curry, a little texture from the onions and tomatoes works especially well.
This is the kind of recipe that is useful on days when you need dinner quickly but still want something comforting and homemade. The ingredient list is short, the method is simple, and the whole dish can be ready in around 20 minutes. Serve it with chapatti, naan, or plain boiled rice. A garnish of fresh coriander and sliced green chilli is optional, but it adds freshness, colour, and a lovely finishing touch.
I hope you enjoy this easy Machli ka Keema recipe. It is light, spicy, homely, and a wonderful way to use fish in a Pakistani curry.
| This was my first ever blog post, originally written in 2015. At the time, I was a newly married final-year university student, typing from the kitchen shelf in my one-bedroom flat in East London and hoping this blog might become the start of something exciting.
It did. Fatima Cooks grew into one of the internet’s well-loved resources for Pakistani recipes and changed the course of my life in ways I could not have imagined. I achieved that small goal of beginning something new, and I remain deeply grateful for it. The original post had plenty of technical faults, awkward wording, and very questionable photos, but it represented the beginning of a journey. This updated version keeps the spirit of that first recipe while presenting it more clearly. If you are reading this and thinking about starting something of your own, start it. Your future self may thank you one day, just as I thank the past version of myself. Fatima xx (27/03/2024) |
📋 Recipe

Minced Fish Curry / Machli ka Keema
Ingredients
- 3 tablespoons oil
- 1 medium onion, chopped
- 4 cloves garlic, minced
- 3 medium tomatoes, chopped
- 1 ⅓ lb (600 g) white fish, cut into chunks
- Fresh coriander, for garnish, optional
- 2 green chillies, for garnish, optional
- ½ teaspoon whole cumin seeds (zeera)
- 1 ½ teaspoons salt
- 1 ½ teaspoons ground coriander powder
- ¾ teaspoon chilli powder (use ½ teaspoon for less spice)
- ½ teaspoon cumin powder
- ½ teaspoon pepper
Instructions
-
Heat the oil in a pot over medium-high heat for about 3 minutes.
-
Add the chopped onion, minced garlic, and whole cumin seeds. Cook, stirring often, until the onions begin to brown.
-
Add the chopped tomatoes, salt, coriander powder, chilli powder, cumin powder, pepper, and about ½ cup of water. Bring to a boil, then reduce the heat to medium-low and simmer, stirring occasionally, until the gravy becomes thick and mushy.
-
Once the gravy has thickened and most of the water has evaporated, add the fish chunks. Bring the curry back to a boil, then simmer for about 10 minutes. The fish will release moisture as it cooks, so extra water should not be needed.
-
Gently stir the curry and break the softened fish with your spoon. Continue until the fish resembles keema, or mince.
-
Cook on medium-low heat until any excess liquid evaporates. The curry is ready when it is thick and no longer watery.
-
Serve with rice, chapatti, or naan. Garnish with fresh coriander and green chilli, if using.