Fish

The answer

Raw fish lasts 1–3 days in the fridge. Lean fish freezes for 6–8 months, fatty fish for 2–3 months.

Caution Cook fish to an internal temperature of 145°F, or until the flesh is opaque and separates easily.

How long it keeps

Fridge (40°F) 1–3 days safe window
Freezer (0°F) 6–8 months (lean), 2–3 months (fatty) best quality
Room temp 2 hours max then discard
Discard Discard if held above 40°F for more than 2 hours, or above 90°F for more than 1 hour.

By state & packaging

State Fridge Freezer
Lean fish, raw (cod, flounder, haddock, halibut) 1–3 days 6–8 months
Fatty fish, raw (salmon, mackerel, tuna) 1–3 days 2–3 months
Cooked 3–4 days 2–3 months

Signs it has gone bad

Sour, ammonia-like smell
Milky or slimy film
Dull, sunken flesh

FAQ

Is fish bad if it smells fishy?

Fresh fish smells mild and briny. A strong sour or ammonia smell means it has spoiled — discard it.

How long can raw fish sit out before cooking?

No more than 2 hours at room temperature, or 1 hour above 90°F. Keep it refrigerated until you cook it.