Skip to main content

Dear Jamie,

I love fish but I always seem to overcook it. How do I know when it’s done? Thanks.

Linda, NJ

How to cook fish perfectly and avoid overcooking?

Linda, this can be a tricky question when it comes to almost every protein -- poultry, beef and yes, even fish. There are a number of factors to keep in mind when preparing fish.

First, there are varying degrees of doneness: seared/rare, medium- , and well-done. And of course, there are degrees in between. 

Usually it’s a matter of preference, but most chefs will not recommend cooking some fish -- tuna, for example -- over medium (still nice and pink in the center), because it dries out so terribly. Still, if you like tuna well done (and dry) I say that’s your prerogative.  

Scroll down for our cooking chart. 

Secondly, there are several methods to cooking fish: searing, poaching, grilling, broiling and baking. Most are appropriate for most species, but some methods (such as broiling) cook the fish faster, so you have to be careful.

Know that cooking times will depend on the degree of doneness you prefer, the cut (steak, fillet or whole fish), the thickness, and size of your fish. Obviously, if you’re cooking a thin fillet, you must watch it carefully.

Fish should not smell fishy, not raw and not while it’s cooking. (The exception is whitefish, which has a clean distinctive scent even when it’s fresh.) 

The fats have begun to sizzle and you’ve compromised the nutritional value (of those wonderful omega 3s).

The same way you can test a cake for doneness with a cake tester or a turkey with a meat thermometer, there’s a way to test fish for doneness. Fish will cook for another 5 minutes after you remove it from the heat source, so it should be just a bit underdone before you do so.

To avoid dry, rough and tough fish, follow these pointers:

Fillets and steaks:

When you think the fish might be done (or about 2 minutes before, if you use the timing guide below), poke a fork into the thickest portion (at a 45° angle, if possible); twist gently and pull up a bit of fish so you can see inside. (Don’t worry, you can always tuck it back in – or serve that piece to yourself!) Fish that is undercooked resists flaking and is translucent (clear enough for light to pass through). When fish is done, it flakes and appears opaque (thicker-looking, not clear).

A few points to remember about specific species:
It is safe to eat tuna and salmon when they are still translucent (if you like them rare), but any fresh water fish should be cooked through till it is opaque.

Striped bass, mahi-mahi, rainbow trout, and other dense fish do not flake easily. You may have to cut it with a knife to see inside.

Whole fish:
Insert a knife between the top fillet and the backbone. Try to lift up some of the flesh. If it does not separate from the bone, the fish is not done. Check again after a few minutes.

Cooking Guide - how long to cook fish to perfection
High heat (broiling, grilling, steaming, pan frying)
Fillets -- 8 minutes per inch of thickness
Steaks --10 minutes per inch of thickness
Small whole fish (1 lb) -- 10 minutes
Medium whole fish (2.5 lb) -- 14-17 minutes

Moderate heat (baking at 425° or poaching)
Fillets -- 10 minutes per inch of thickness
Steaks – 12 minutes per inch of thickness
Small whole fish (1 lb) --14 minutes
Medium whole fish (2.5 lb) -- 20-25 minutes