Raw fish that smells sharply fishy or like ammonia, feels slimy or tacky, or has flesh that stays dented when pressed is bad. Plan to cook fresh fillets within 1 to 2 days of buying, and don't gamble on anything that smells off.
When in doubt, throw it out. Bacteria that cause food poisoning often don't change the smell or look. Go by the time limits below too.
Signs Fish has gone bad
Strong fishy or ammonia smell. Fresh fish smells like clean water or a light sea breeze. A sharp, sour, or ammonia-like odor means bacteria have been breaking down the flesh, so toss it.
Flesh that doesn't spring back. Press a fillet gently with a clean finger. Fresh flesh bounces back; if the dent stays, the proteins have broken down and the fish is past its prime.
Slimy, milky film. A thick, cloudy, or sticky coating on the surface is bacterial growth. A rinse won't fix it, and the smell usually comes along for the ride.
Dull, gray, or brown discoloration. Fillets should look moist and translucent with a bright, even color. Dry, dull patches, browning edges, or a grayish cast mean it's aging fast.
Gaps and mushy texture. Flesh that is pulling apart into flakes or gaps while still raw, or feels soft and mushy, is breaking down. Cooking won't undo that.
Looks weird, but it's fine
Slight color variation between fillets. Darker bloodline strips and natural color differences within one fillet are normal and don't signal spoilage.
Rainbow sheen on the surface. A shimmery iridescence is just light bouncing off fish muscle fibers, and it isn't a sign of anything wrong.
Ice crystals on frozen fish. A light frosting is normal. Heavy freezer burn (dry, white, leathery patches) hurts texture but is a quality issue, not a safety one, if it stayed frozen.
How long does Fish last?
Where
How long
Note
Fridge (raw)
1 to 2 days
Keep at 40°F or below, ideally on ice
Fridge (cooked)
3 to 4 days
In a sealed container
Freezer (raw)
3 to 8 months for best quality
Lean fish keeps longer than fatty fish
Counter
Max 2 hours
1 hour if it's hotter than 90°F out
How to store it
Get fish home fast and straight into the coldest part of the fridge, set over a bowl of ice if you can.
Wrap fillets tightly in plastic or put them in a sealed container so the smell and juices don't spread.
If you won't cook it within 2 days, freeze it right away instead of waiting to see how it looks.
Plan on 1 to 2 days from purchase, keeping it at 40°F or below. The sell-by date helps, but how it was handled before you bought it matters just as much.
Can you smell fish and tell if it's bad?
Yes, smell is the best test. Fresh fish smells mild and clean, while bad fish smells strongly fishy, sour, or like ammonia. Smell it right out of the package and again after patting it dry.
Is it safe to eat fish that's a day past the date?
Sometimes it's still fine, but raw fish gives you very little margin. If it passes the smell, touch, and look tests and was kept cold the whole time, cook it right away. If you're unsure, throw it out.
General guidance based on USDA FoodKeeper. Storage times are estimates and conditions vary. When in doubt, throw it out.
We use privacy-friendly analytics to understand what recipes people love. By continuing, you consent to our use of cookies. Learn more
🎃 Get The Copycat Halloween Cookbook — freeInstant PDF, no sign-in. Pay what you want only if you'd like to support us. One email a week, unsubscribe anytime.