My curry of choice will always be Chicken Tikka Masala, but when I’m abstaining from meat or in need of some omega-3s, this fish curry with canned mackerel is my go-to. Even as someone who is not so keen on fish, I have to admit that this is absolutely delicious.
Canned fish is often overlooked, but it’s a huge budget- and time-saver. For those far from the coast, truly fresh seafood is hard to find. Luckily, canned fish has lots of amazing health benefits. Because the skin and bones are packaged in the can and perfectly safe to eat, you get some extra collagen, calcium, omega-3s, and other nutrients without having to do any more than heat it up. Count me in!
And if you’re worried about this fish curry being fishy, no need to fear. Canned mackerel is pretty potent on its own, but is much more tolerable when smothered in all your favorite Indian spices in this creamy, tomatoey sauce.

Is this authentic Indian fish curry?
Almost certainly not. However, I looked at a lot of recipes for fish curry and there was a lot of variations. For this one, I used canned mackerel for affordability and ease, but you could use any fish you’d like. I also used spices (and other ingredients) that are readily available in most American grocery stores, whereas many authentic fish curries seem to require more specialty ingredients.
I am not of Indian descent, and neither is my husband. However, we love Indian food and the flavors of other curries we’ve had were the major inspiration for this one. This particular curry recipe was born out of a need for pescatarian meals for Fridays and Lent, hence it being a fish curry.

What are the benefits of canned fish?
I love to keep canned fish in my pantry. Since it’s already cooked, it’s great in emergencies like power outages or major storms. Animal protein and omega-3 fatty acids are better than being limited to nuts and beans in an emergency!
If you struggle to eat enough seafood (about 8-12oz per week), canned fish may help you work more seafood into your diet. Canned fish is generally much more affordable than fresh or frozen seafood, so it doesn’t break the bank. It’s also convenient for regular cooking because, well, it’s already cooked!
On the nutrition front, they’re easy sources of omega-3 fatty acids and are high in calcium (especially when canned with the bones) and vitamin D (one of a few dietary sources). They’re also generally fairly low-calorie, but high in protein. Canned mackerel, in particular, is also high in vitamin B12 and selenium.

Is this fish curry “fishy”?
I don’t think it is, and I tend to dislike foods that are “fishy.” However, canned mackerel is one of the fishier ones and you may be more sensitive to it than I am. For my taste buds, the acidity of the tomatoes and all of the spices (plus the creamy coconut milk!) overwhelmed any of the fishy factor. If you find it fishy, you can always add a bit of extra acid – lemon or lime juice, or apple cider vinegar. That often is enough to make it much more palatable!
Alternatively, you could substitute with another fish with a milder flavor. Tilapia, flounder, Pacific whiting, and other white fish tend to be very mild, but are hard to find in a canned variety. Instead, cook some from fresh or frozen and add that in.

How should I serve this fish curry?
I like to serve fish curry over a bit of rice. I typically just use long grain brown rice because that’s what I always have on hand, but basmati rice is traditional if you have it. White rice (or even jasmine rice) also works.
Fish curry is also delicious with some homemade naan. I’m also experimenting with making sourdough naan with fresh milled flour – stay tuned!
Does this fish curry make good leftovers?
Yes, like all curries, the flavors only get better over time! It’s best if stored in the refrigerator and consumed within 3-4 days. It’s also freezer-friendly, though best eaten within 3 months or so.

Ingredients
- 2 tbsp butter – or other healthy fat you prefer (tallow, olive oil, avocado oil, etc.)
- 1 onion, diced
- 6 cloves garlic, minced
- 2 tbsp grated ginger
- 1 tbsp garam masala
- 1 tsp turmeric
- 1 tsp cumin
- 1 tsp coriander
- 1 tsp chili powder
- 1/4 tsp cayenne powder – or more, if you like spicy food
- 1 tsp salt
- 1/4 tsp freshly cracked black pepper
- 1 13.5oz can full fat coconut milk – a low-fat or non-fat coconut milk will work, but will be less creamy (and may contain questionable additives).
- 1 14.5oz can diced tomatoes
- 2 15oz cans mackerel – you can use any fish you’d like, but I find canned mackerel to be most convenient and tasty here. Fresh or frozen fish can be cooked and added to this instead!
- Fresh cilantro or parsley, to garnish

Directions
Step 1: Melt butter on medium heat and sauté diced onion until translucent, about 5 minutes.

Step 2: Add minced garlic and grated ginger. Sauté until fragrant, about 30 seconds.

Step 3: Stir in the turmeric, cumin, coriander chili powder, cayenne, salt, and pepper. Toast spices about 30 seconds, until fragrant.

Step 4: Add the coconut milk, diced tomatoes, and mackerel. Stir to combine, break up larger pieces of fish, then simmer until sauce thickens, about 10 minutes.

Step 5: Garnish with fresh parsley or cilantro, then serve over rice or with naan.

Equipment
*Disclosure: I only recommend products that I use or would use myself. The links above are affiliate links, which means that I earn a commission (at no cost to you!) if you make a purchase using the link.
Fish Curry with Canned Mackerel
Looking for an easy, delicious fish curry? This fish curry features canned mackerel in a spiced tomato and coconut milk sauce, making it quick, affordable, and nutritious!
- Total Time: 25 minutes
- Yield: 6 servings
Ingredients
- 2 tbsp butter
- 1 onion, diced
- 6 cloves garlic, minced
- 2 tbsp grated ginger
- 1 tbsp garam masala
- 1 tsp turmeric
- 1 tsp cumin
- 1 tsp coriander
- 1 tsp chili powder
- 1/4 tsp cayenne
- 1 tsp salt
- 1/4 tsp freshly cracked black pepper
- 1 13.5oz can full fat coconut milk
- 1 14.5oz can diced tomatoes
- 2 15oz cans mackerel
- Fresh cilantro or parsley, to garnish
Instructions
- Melt butter on medium heat and sauté diced onion until translucent, about 5 minutes.
- Add minced garlic and grated ginger. Sauté until fragrant, about 30 seconds.
- Stir in the turmeric, cumin, coriander chili powder, cayenne, salt, and pepper. Toast spices about 30 seconds, until fragrant.
- Add the coconut milk, diced tomatoes, and mackerel. Stir to combine, break up larger pieces of fish, then simmer until sauce thickens, about 10 minutes.
- Garnish with fresh parsley or cilantro, then serve over rice or with naan.
Notes
- Canned mackerel can be substituted with fresh or frozen fish.
- While the curry sauce masks most of the fishy flavor, if you’re looking for less fishy options, tilapia, flounder, Pacific whiting, or other white fish are much more mild.
- Prep Time: 5 minutes
- Cook Time: 20 minutes
- Category: Dinner
- Method: One-Pot
- Cuisine: Indian
- Diet: Dairy-Free, Gluten-Free, Low-Carb, Pescatarian
Nutrition Facts
Amount Per Serving
Calories: 352 kcal
Fat: 24g
Total Carbohydrates: 10g
Fiber: 2g
Protein: 26g
The nutrition data provided here is for informational only and is only an estimate based on an online nutrition calculator. It cannot be verified or guaranteed, and should not be used in the treatment of medical conditions. It should not be considered a substitute for a professional nutritionist’s advice This data should be interpreted and used at your own risk.









Leave a Reply