A legendary street food from the holy city of Amritsar in Punjab, this crispy fried fish is beloved for its spice-laden gram flour batter that turns shatteringly crisp while keeping the fish moist and flaky inside. The signature flavors come from carom seeds, ginger, and a touch of lemon, delivering a punchy, aromatic bite with every piece. Best enjoyed hot with sliced onions, lemon wedges, and mint chutney.
Nutrition Facts
Per serving (estimated)
- 385 kcalCalories
- 18 gFat
- 2.5 gSaturated Fat
- 24 gCarbs
- 5 gFiber
- 2 gSugar
- 30 gProtein
- 720 mgSodium
- 580 mgPotassium
- 70 mgCalcium
- 4 mgIron
- 9 mgVitamin C
- 45 mcgVitamin A
Ingredients
For the fish and marinade
- 500 g boneless firm white fish fillets (sole, catfish, or tilapia), cut into 5 cm pieces
- 1 tablespoon ginger-garlic paste
- 1 tablespoon fresh lemon juice
- 1 teaspoon fine sea salt
- 2 green chilies, finely chopped
For the spiced batter
- 1 cup besan (gram flour)
- 2 tablespoons rice flour
- 1 teaspoon ajwain (carom seeds)
- 1 teaspoon Kashmiri red chili powder
- 1/2 teaspoon ground turmeric
- 1 teaspoon garam masala
- 2 tablespoons chopped fresh cilantro
- About 1/2 cup cold water, as needed
For frying and serving
- 2 cups mustard oil or vegetable oil, for deep frying
- Lemon wedges, for serving
- Chaat masala, for dusting
- Thinly sliced red onion rings, to serve
Directions
- Pat the fish pieces completely dry with paper towels; moisture prevents the batter from sticking. In a bowl, toss the fish with ginger-garlic paste, lemon juice, salt, and chopped green chilies. Cover and marinate in the refrigerator for 15 minutes.
- In a wide mixing bowl, whisk together the besan, rice flour, ajwain, Kashmiri chili powder, turmeric, garam masala, and chopped cilantro. Gradually add cold water while whisking to form a thick, smooth batter that coats the back of a spoon; it should be thick enough to cling to the fish without dripping.
- Heat the oil in a deep heavy-bottomed pan over medium heat to 175 degrees C (350 degrees F). The oil is ready when a small drop of batter sizzles and rises to the surface immediately.
- Working in small batches of 4 to 5 pieces, dip each marinated fish piece into the batter, turning to coat thoroughly. Carefully lower the coated pieces into the hot oil, being sure not to overcrowd the pan.
- Fry the fish for 3 to 4 minutes per side, turning gently once, until the coating is deep golden brown and crisp and the fish flakes easily when tested with a fork. Adjust the heat as needed to maintain a steady temperature.
- Lift the fried fish out with a slotted spoon and drain on a wire rack or paper towels. Sprinkle immediately with a pinch of chaat masala while still hot.
- Repeat with the remaining fish, allowing the oil to return to temperature between batches. Serve straight away with lemon wedges, sliced onion rings, and green chutney.
- Pair with room-temperature lassi or masala chai for an authentic Amritsari experience.
- Store any leftovers in an airtight container in the refrigerator for up to 1 day; reheat in a hot oven or air fryer to restore crispness.
Cook’s Notes
- Use firm, boneless white fish like sole, pomfret, or catfish for the best texture; very delicate fish like sole can fall apart, so handle gently.
- Mustard oil delivers the most authentic Punjabi flavor and aroma; heat it just until it begins to smoke, then reduce to frying temperature to mellow its pungency.
- The batter must be thick, not runny. A thin batter slides off the fish and yields a greasy, less crisp crust.
- Maintain the oil at 175 degrees C; oil that is too cool makes the fish soggy and oil-logged, while oil that is too hot browns the coating before the fish cooks through.
- For an extra-crisp finish, double-dip the fish: dip in batter, let it set for a minute, then dip once more before frying.










