Before You Start
Drop a carom seed into hot oil and it crackles almost right away, and that sound is a decent preview of what's coming: a faintly bitter, thyme-like smell that cuts through frying oil in a way turmeric or chilli never quite manage on their own. That's the smell that announces Amritsari fish fry before you've even seen the plate. The fish itself doesn't ask for much — firm white fillets, marinated only briefly, dipped in a gram-flour batter built thick enough to grip rather than slide off, then fried hot and fast until the crust sets hard. Amritsar built its fish-frying reputation on freshwater catch pulled from the rivers nearby, and ajwain is the one ingredient every account of the dish keeps circling back to. Leave it out and you've made a perfectly fine fried fish. You just haven't made this one.
Where This Dish Comes From
Historians don't argue much over this one, which is unusual for anything with "fish fry" in its name. Amritsar sits well inland, nowhere near a coastline, so its fish-frying tradition grew up entirely around freshwater species caught in the Beas and the Sutlej, and that single geographic fact explains most of what sets this dish apart from the fried fish you'd find in Goa, Kerala or Bengal. Those coastal traditions use different fish, lean on different spice combinations, and often reach for rice flour rather than gram flour as the coating. None of that makes one version more legitimate than another. It just means "fish fry" was never really one dish across India — it's a label each region filled in with whatever fish swam nearby and whatever spice tradition had already taken hold there. Punjab's answer is carom seed, ginger-garlic and a gram-flour crust, shaped by a river-fish economy rather than a coastal one.
How to Make It
-
Prep
Give the fish a short, sharp marinade
Pat the fish strips bone dry — surface moisture just dilutes the marinade and spits in the oil later. 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 chill for 20 to 30 minutes, no longer. Fish isn't meat: give it the hours-long soak a tikka gets, and the acid in the lemon juice will turn the flesh soft and mealy well before it ever reaches the fryer.
-
Prep
Build a batter thick enough to hold on
Whisk the gram flour, rice flour, carom seeds, chilli powder and turmeric together dry first, then add water in small splashes until it comes together as a heavy, clingy paste rather than a pourable batter. You want something closer to a thick spread than the loose batter you'd mix for vegetable pakoras — the fish surface is smooth and already wet from marinating, and a thin batter just slides straight off it in the oil.
-
Assemble
Coat each piece on every side
Lift the marinated strips out one at a time and press them fully into the batter, turning so every edge picks up a coating rather than just the top and bottom.
-
Cook
Fry in small batches, without rushing
Heat the oil to 175–185°C (345–365°F) and check it with a thermometer rather than guessing from how it looks. Slide in two or three battered pieces at a time — crowding the pot drops the oil temperature fast and leaves you with a greasy, pale crust — and fry 3 to 5 minutes, turning once partway, until the coating is a deep, even gold.
-
Cook
Confirm the fish is actually done
A thicker piece can look perfectly fried on the outside while the centre is still translucent, so check rather than assume. Done fish flakes apart easily with a fork and looks opaque all the way through; by thermometer, that's a minimum of 63°C (145°F) at the thickest point. Because these are cut into strips, the batter usually hits deep gold right around when the fish finishes, but it's worth checking the thickest piece directly anyway.
-
Serve
Get it onto a rack and to the table fast
Drain on a wire rack rather than paper towels, which trap steam underneath and soften the bottom crust. Serve immediately with lemon wedges, sliced onion and a mint or coriander chutney, while the crust is still audibly crisp.
Swaps You Can Make
Almost any firm, boneless white fish works in place of basa or tilapia — the thing to avoid is anything delicate and flaky, since those varieties tend to break apart during marinating and coating long before they reach the oil. There's no real stand-in for carom seed; its bitter, slightly medicinal edge is what the dish is built around, though a smaller pinch of dried thyme gets you somewhere in the neighbourhood if you're genuinely out. Unlike some other Punjabi fried dishes, nothing here depends on charcoal or open-flame heat.
Turning the Heat Up or Down
Chilli powder in both the marinade and the batter is where the heat lives, and trimming it in either spot lowers the overall burn without touching how well the crust forms, since colour and crunch come from frying temperature and the gram flour, not the chilli. Carom seed isn't a heat source at all — it's a bitter, aromatic note — though if its sharpness reads as too much on a first attempt, cutting the batter's amount back slightly (leave the marinade's amount alone) tones it down while keeping the dish recognisable. Going the other direction, extra chilli powder stirred into the batter alone, rather than the marinade, adds heat without making the fish itself taste overly sharp before it's even fried.
Where This Goes Wrong
Overlong marinating is the error that trips up anyone coming from a chicken or lamb recipe, where four hours or overnight is standard — do that here and the lemon juice turns the fish mushy well before it reaches the oil. Twenty to thirty minutes is enough, full stop. A thin, loose batter is the second common failure; it won't cling to the fish's smooth, marinated surface and ends up mostly in the oil instead of on the fish. Judging doneness purely by crust colour, especially on thicker strips, is the third pitfall — a deep gold exterior can form before the fish underneath is actually cooked through, so flake a thick piece open and check rather than trusting appearances alone.
Keeping and Reheating Leftovers
Storage: Raw fish in its marinade should go straight into the fridge and get used the same day — fish doesn't hold up in a raw, acidic marinade the way meat does, and pushing past same-day use isn't worth the risk it carries. Once fried, it keeps in the fridge for up to 2 days in a sealed container, though the crust softens noticeably by the second day, so treat fresh-from-the-fryer as the real target here.
Reheating: A hot oven or air fryer, around 180°C (350°F) for 6 to 8 minutes, brings back a reasonable amount of crunch. The microwave is the one appliance worth avoiding — it turns the batter soft and leaves the fish with a rubbery chew instead of the flaky bite it had fresh off the stove.
Staying Safe With This One
Raw fish deserves more caution than raw chicken, not less, since it breaks down faster: buy it from a source you trust, keep it cold until the moment you marinate it, and don't let it sit out on the counter. Marinate strictly in the fridge, and don't stretch the marinating window past what's given here — time plus acid is what causes the texture problems, not either factor alone. Keep a cutting board and knife set aside only for raw fish, and wash hands, tools and any surface the fish or its marinade touched with hot, soapy water before anything else goes near them. Fried fish needs to flake easily and reach at least 63°C (145°F) at its thickest point, and leftovers belong in the fridge within two hours of coming off the heat.