Tandoori Fish Recipe (Oven-Baked Indian Spiced Fish)
Tandoori fish is highly valued for its smoky, spiced crust and tender, flaky interior. Traditionally cooked in a clay tandoor at extremely high temperatures, this dish can be successfully replicated in a home oven. By using a preheated pan and a brief broiling step, you can achieve those signature charred edges without drying out the delicate fish inside.
The secret to a great home version lies in the marinade consistency and the timing. Because fish releases water easily and breaks down quickly under acids, we use a two-step marination process and a touch of roasted chickpea flour to keep the coating firmly attached to each piece.
Why This Recipe Works
- Double marination deeply seasons the fish with salt and lemon first, which also neutralizes any overly strong fishy odor before the thick yogurt coat is applied.
- Roasted chickpea flour (besan) acts as a binding agent, absorbing excess moisture from the fish and ensuring the spiced yogurt marinade clings to the fish rather than sliding off onto the baking sheet.
- A high-heat bake followed by a quick broil mimics the rapid cooking of a tandoor, charring the spice crust while keeping the inside moist and flaky.
Ingredient Notes
- Fish fillets: Choose firm-fleshed white fish such as cod, halibut, haddock, or sea bass. Salmon also works exceptionally well. Avoid delicate, thin fillets like sole or tilapia, as they will break apart easily during marination and cooking.
- Greek yogurt: Use thick, plain Greek yogurt or traditional hung curd. Standard yogurt contains too much water, which will make the marinade runny and prevent it from adhering to the fish.
- Kashmiri red chili powder: This specific chili powder provides the vibrant red color characteristic of tandoori dishes along with a mild, warm heat. Regular cayenne pepper is much hotter and lacks the same deep red hue.
- Ajwain (carom seeds): These tiny seeds have a strong aroma reminiscent of thyme and anise. They are traditional in North Indian fish preparations, adding a distinctive herbal note that cuts through the rich spices.
- Besan (chickpea flour): A single tablespoon of dry-roasted chickpea flour thickens the marinade. Be sure to roast it in a dry pan over low heat for 1 to 2 minutes until it smells fragrant, taking care not to let it burn.
If You’re Cooking Outside India
- Mustard oil: Commonly sold in South Asian grocery stores. It provides a sharp, pungent undertone typical of traditional tandoori marinades. If you cannot find it, substitute an equal amount of any high-heat neutral oil like canola or avocado oil.
- Kasuri methi: These are dried fenugreek leaves, available at Indian markets or online. They add a sweet, slightly bitter aroma that defines tandoori cooking. If unavailable, simply omit them; do not substitute with fresh celery or maple syrup.
How to Make Tandoori Fish
Dry and First Marinate
Pat the fish completely dry to ensure the marinade sticks, then toss briefly with lemon juice, salt, and ginger-garlic paste to season the flesh directly.
Prepare and Apply the Second Marinade
Whisk the thick yogurt with the roasted besan, mustard oil, and ground spices. Gently coat the fish chunks in this thick paste and let them rest so the flavors meld.
High-Heat Bake
Place the fish on a greased wire rack over a baking sheet in a fully preheated hot oven to cook the fish quickly from all sides.
Baste and Broil
Brush the pieces with melted butter or ghee and flash-cook under the broiler to get authentic charred spots and a deeply fragrant crust.
Cooking Tips
- Always pat the fish dry with paper towels before starting. Excess surface water dilution is the main reason marinades slide off during cooking.
- Keep the marination time under 30 minutes total. Fish has a delicate structure; leaving it in an acidic lemon and yogurt mixture for too long will make the texture mushy.
- Preheat your oven and the baking sheet thoroughly. Putting the fish onto a hot surface starts the cooking immediately and prevents sticking.
Common Mistakes to Avoid
- Using cold, un-roasted besan in the marinade: Raw chickpea flour leaves a bitter, chalky aftertaste. Always toast the flour in a dry pan over low heat until it turns a light golden hue and smells nutty before adding it to the yogurt.
- Overcooking the fish chunks: Fish cooks much faster than chicken. Check the doneness at the 8-minute mark; the flesh should flake easily with a fork and register an internal temperature of 63 degrees Celsius or 145 degrees Fahrenheit.
Variations
- Air Fryer Tandoori Fish: Arrange the marinated fish pieces in a single layer in a preheated air fryer basket lined with perforated parchment paper. Cook at 200 degrees Celsius or 400 degrees Fahrenheit for 8 to 10 minutes, turning once gently halfway through.
- Tawa Tandoori Fish: Heat a cast-iron skillet or flat griddle (tawa) over medium-high heat with a tablespoon of oil. Cook the fish pieces for 3 to 4 minutes on each side until a deep brown crust forms and the interior is fully cooked.
Serving Suggestions
- Dust with extra chaat masala and serve immediately alongside sliced red onions and fresh lemon wedges.
- Pair with a cooling mint-coriander chutney as a starter or appetizer.
- Serve wrapped in warm garlic naan with shredded cabbage and a squeeze of lime for quick fish rolls.
Storage & Make-Ahead
Make ahead: You can whisk the second marinade ingredients together up to 24 hours in advance and store them in the refrigerator. Do not mix the fish with the marinade until 30 minutes before you plan to cook.
Refrigerate: Store cooked leftover fish in an airtight container in the refrigerator for up to 2 days. Note that the spiced crust will soften during storage.
Freeze: Freezing cooked tandoori fish is not recommended, as the delicate texture of the fish becomes spongy and dry upon thawing.
Reheat: To reheat, place the fish on a baking sheet and warm in an oven preheated to 150 degrees Celsius or 300 degrees Fahrenheit for 6 to 8 minutes. Avoid using a microwave, which will make the fish rubbery.
Frequently Asked Questions
What type of fish is best for this recipe?
Firm white fish like cod, halibut, haddock, or sea bass holds up best. Salmon is also an excellent option because its fat content keeps it moist under high heat. Avoid delicate, flat fish like sole or flounder, which will disintegrate.
Can I make this recipe without mustard oil?
Yes. While mustard oil provides a characteristic sharp aroma, you can easily substitute it with any neutral, high-heat cooking oil like canola, sunflower, or avocado oil.
How do I prevent the marinade from sliding off the fish?
Ensure you pat the fish completely dry before starting, use thick Greek yogurt, and do not skip the roasted besan (chickpea flour). The besan acts as a binder that holds the spices to the fish as it cooks.
Can I cook this on an outdoor grill?
Yes. Ensure the grill is clean and highly greased, or use a fish basket to prevent the delicate pieces from sticking and falling through the grates. Cook over medium-high heat for 3 to 4 minutes per side.
More Indian Recipes to Try
Browse the IndiPlated recipe index

Tandoori Fish
Ingredients
Equipment
Method
- Pat the fish chunks thoroughly dry on all sides using paper towels to remove any surface moisture.
- In a mixing bowl, combine the dried fish chunks with the lemon juice, 1/2 teaspoon of salt, and 1 teaspoon of ginger-garlic paste. Toss gently to coat all pieces evenly, then set aside at room temperature for 10 minutes.
- In a separate bowl, whisk together the Greek yogurt, roasted besan, mustard oil, remaining 1 teaspoon of ginger-garlic paste, Kashmiri red chili powder, garam masala, ground cumin, crushed kasuri methi, crushed ajwain, and remaining 1/2 teaspoon of salt until a smooth, thick paste forms.
- Gently drain any liquid that has pooled in the fish bowl from the first marination. Pour the thick yogurt mixture over the fish. Use your hands or a soft spatula to coat each piece thoroughly without breaking the flesh. Let it marinate at room temperature for 20 minutes.
- Preheat your oven to 220 degrees Celsius or 425 degrees Fahrenheit. Line a baking sheet with aluminum foil for easy cleanup, place an oven-safe wire rack on top, and grease the rack lightly with a high-heat oil.
- Arrange the marinated fish pieces on the greased wire rack in a single layer, ensuring they do not touch. Bake on the middle rack of the oven for 8 to 10 minutes.
- Remove the baking sheet from the oven. Brush the top of the fish pieces gently with melted butter or ghee. Turn the oven to the high broil setting. Return the pan to the top rack of the oven and broil for 2 to 3 minutes, watching closely until the edges are lightly charred and the fish flakes easily when tested with a fork (internal temperature should reach 63 degrees Celsius or 145 degrees Fahrenheit).
- Transfer the fish gently to a serving platter. Dust with chaat masala and garnish with chopped coriander leaves. Serve hot with sliced red onions and lemon wedges on the side.
Notes
Ensure the Greek yogurt is truly thick; if it has visible liquid, strain it through a paper towel or cheesecloth for 30 minutes before mixing.






