Bengali Pike Heads with Lentils (Machher Muro Dal)

Bengali pike heads with lentils

If you’re like me and keep your large fish heads (like from northern pike, carp, salmon, trout, or ocean fish), then you’re always looking for new ways to eat them. 

This is a delicious fish head recipe inspired by machher muro dal, or Bengali fish head and lentil curry. 

I use large pike heads for this recipe, but you could use any large fish head. Just be sure to remove the gills and wash it well before using. 

The fish heads in this dish add a ton of lip smacking gelatine and body, and also make it very healthy and nutritious. 

I use homemade fish stock for this dish, but you could use store bought, or plain water. 

You can substitute 2 tablespoons (18g) garam masala and 1 tablespoon (9g) turmeric powder for the spice list if you can’t gather all of the spices.

  • Prep Time30 min
  • Cook Time1 hr 30 min
  • Total Time2 hr
  • Yield4 servings
  • Serving Size1 or 1/2 fish head each


  • 1 pike skeleton (bones, fins, tail)
  • 2 tablespoons (30ml) mustard or vegetable oil
  • 1 tablespoon (9g) turmeric powder
  • 1 teaspoon (2g) ground cumin
  • 1 teaspoon (2g) ground coriander
  • 1 teaspoon (2g) Kashmiri chili powder or paprika
  • 1/2 teaspoon (1g) cinnamon
  • 1/2 teaspoon (1g) ground cardamom
  • 1/2 teaspoon (1g) ground cloves
  • 1/2 teaspoon (1g) black pepper
  • 2 large onions, chopped
  • 3 cloves garlic, minced
  • 1 thumb ginger, peeled and minced
  • 2 large tomatoes, chopped
  • 1 green chili, minced
  • 1 cup (200g) moong dal 
  • 1/2 cup (100g) masoor dal (red lentils) or 1.5 cups (300g) red lentils total
  • 2-4 fish heads (cut in half if too large)
  • 1/2 teaspoon (2g) kosher salt
  • 1/2 tablespoon (6g) jaggery or white sugar
  • Fresh cilantro for garnish
  • Lime pickle for garnish
  • Serve with basmati rice



Preheat oven to 450°F (230°C, gas mark 8).

Place pike skeleton/carcass (not the heads) on a baking sheet and roast in the oven for 20 minutes, or until golden brown. 

Transfer to a pot and cover with 6 cups (1.5L) of water.

Bring to a soft simmer and cook for 20 minutes, removing any scum that floats to the top. 

Strain out the solids and discard them. 


Heat the mustard or vegetable oil in a large pot of medium heat. 

Add the spices and cook, stirring, for 3 minutes. 

Add the onions and cook until browned, about 6-10 minutes. 

Add the garlic, ginger, tomatoes, and chili. Cook for 5 minutes. 


Add the lentils, half of the fish stock and the pike heads. 

Bring to a strong simmer, reduce to a very soft simmer, and cover. 

Cook without disturbing for 20 minutes. 


VERY carefully pull out the pike heads with a large slotted spoon or spatula. Set aside. 


Add the other half of the fish stock to the pot and cook, uncovered, at a strong simmer until the lentils have mostly broken down, about 15 minutes. 

Add more water if necessary to create a thick, soupy consistency. 

Add the salt and sugar. Taste and adjust seasoning as necessary. 


To serve, place one or half of one pike head into each bowl next to a pile of basmati rice. 

Spoon over the lentils and garnish with cilantro and pickle (optional). 

Bring out a bowl for bones as well. 

Diners carefully pick over the heads, pulling out the big meaty bits located in the cheeks, collar, behind the head, and in the jaw. Bones go in the bone bowl.

You could also pick over the heads before serving, pull off all of the meat, and mix it into the lentils for a less intimidating meal. 


Share this recipe:

You might also like: