A Few Words Before We Begin
Ask someone from Amritsar what separates their fish fry from the version sold on a Goan or Bengali coastline, and the answer almost always comes back to one ingredient: carom seeds. Here, a firm, boneless white fish sits briefly in a sharp, ajwain-forward marinade, then gets wrapped in a thick gram-flour paste and lowered into hot oil until the outside turns deeply crisp while the inside stays tender. Why does ajwain matter so much? Its slightly bitter, thyme-like edge cuts straight through the richness of fried batter, and that's exactly the note missing from other regional fried fish dishes. Amritsar itself historically drew on freshwater fish from the rivers nearby, which is a detail worth keeping in mind — this is inland Punjab's answer to fish fry, not a coastal one, and the distinction shows up in both the fish and the coating.
Where This Dish Comes From
Place Amritsari fish fry on a map and it sits squarely in Punjab's inland river country, where the Beas and Sutlej historically kept the city's fish markets and street stalls stocked with fresh catch. That inland root is worth dwelling on for a moment, because it explains why this dish looks so different from the fish fry served along India's coasts. Goa, Kerala and West Bengal each developed their own fish-frying traditions around the fish and spices their coastlines offered, often leaning on a rice-flour coating rather than gram flour, and the result is a genuinely different category of dish despite sharing a name. So when a recipe simply says "fish fry," which one does it actually mean? The honest answer is that it depends entirely on the region, since local fish availability and local spice habits shape each version rather than one template being copied everywhere. Amritsar's own answer, built on riverine fish and a besan-and-ajwain coating, is best understood on its own terms rather than as a variation on a coastal dish.
Following Along, Step by Step
-
Prep
Keep the marinade short
Pat the fish strips completely dry, then toss gently with the ginger-garlic paste, lemon juice, crushed carom seeds, chilli powder, turmeric and salt, taking care not to break the pieces apart. Cover and refrigerate for 20 to 30 minutes — why so brief, when chicken usually sits for hours? Fish doesn't need or benefit from a long marinade, and the lemon juice's acidity will turn delicate flesh mushy if you push past this window.
-
Prep
Mix a paste, not a batter
Whisk the gram flour, rice flour, carom seeds, chilli powder and turmeric together, then add water gradually until you have a thick paste, loose enough to spread but still clearly a paste rather than a pourable batter. That thickness matters: it needs to sit on the smooth surface of marinated fish in one heavy, even layer, which a thin pakora-style batter simply can't manage.
-
Assemble
Coat each piece fully
Lift the fish out of the marinade and press each piece into the batter, working it gently around every edge so no bare patch is left exposed to the oil.
-
Cook
Fry a few pieces at a time
Heat oil to 175 to 185°C (345 to 365°F). Lower the coated fish in gradually, a few pieces at once rather than all together, and fry 3 to 5 minutes depending on thickness, turning once, until the coating is deep golden and audibly crisp.
-
Cook
Check doneness directly, not by eye
The fish is ready once it flakes easily with a fork and looks opaque all the way through, reaching at least 63°C (145°F) on a thermometer. For thin strips this usually lines up with the moment the batter turns deep golden — but does colour alone ever tell the whole story on a thicker piece? Not reliably, so check those directly rather than guessing from the crust.
-
Serve
Serve while the crust still crackles
Drain briefly on a wire rack and get it to the table right away, with lemon wedges, sliced onion and mint or coriander chutney, while the coating is still at its crispest.
If You Need to Swap Something
Any firm, boneless white fish holds up well here; a fish that's naturally delicate and flaky tends to fall apart during marinating and coating, so a sturdier fillet is the more forgiving choice for a first try. Carom seeds are what define this dish, and nothing quite replicates their bitter, thyme-like edge, though a smaller pinch of dried thyme gets reasonably close in a pinch.
Turning the Heat Up or Down
Most of the heat in this dish comes from red chilli powder, present in both the marinade and the paste, so dialing both back together is the simplest way toward a milder plate. Carom seeds, on the other hand, aren't about heat at all — they bring a sharp, slightly bitter aromatic note, and while you can trim the quantity if you find it too assertive, cutting it out entirely removes what makes this fish fry recognisably Amritsari in the first place.
If Something Goes Wrong
Letting the fish sit in its marinade too long is the most frequent misstep, since the lemon juice's acid will turn delicate fillets mushy well before the 20-to-30-minute mark passes — set a timer if you need to. A batter mixed too thin is the second trap: it won't grip the fish's smooth surface and slides off the moment it hits hot oil. The third issue shows up on thicker pieces specifically, where a deep golden crust can form before the centre is actually cooked, so flake or probe a thicker piece directly instead of trusting colour on its own.
Keeping and Warming It Up Again
Keeping it: Raw fish in its marinade should go straight back to the fridge and get cooked the same day — unlike meat, fish doesn't hold safely or well once marinated raw. Once fried, it keeps refrigerated for up to 2 days, though the crust is genuinely at its best within the first few hours, since fried fish sheds its crispness quickly as it sits.
Warming it again: An oven or air fryer at 180°C (350°F) for 6 to 8 minutes brings both heat and a fair amount of crispness back. A microwave does neither well — it softens the coating and can leave the fish rubbery, so it's worth avoiding here even for convenience.
A Note on Safe Handling
Buy fish from a source you trust, keep it refrigerated right up until marinating, and either cook or freeze it promptly rather than letting it sit out. The marinade itself belongs in the fridge, never on the counter, and only for the window given — fish is more delicate than meat and starts breaking down texturally if left too long in something acidic. A separate board and utensils for raw fish matter here just as they would for poultry, and hands, surfaces and tools all need a proper wash in hot, soapy water afterward, before they touch anything else. Cook until the fish flakes easily and clears 63°C (145°F), and get leftovers into the fridge within two hours of cooking.