Home Fishing Tips & Advice How to Tell If Fish Has Gone Bad (MUST KNOW!)

How to Tell If Fish Has Gone Bad (MUST KNOW!)

Many feel that you can tell if a fish has gone bad by smelling it but there are other ways in which you can tell if your fish is bad. If you eat bad fish, it can cause food poisoning. Fish is something that many people eat because it is easy to digest and it has a high nutritional value. 

Bad, Old Fish

The way that most people try to find out if their fish has gone bad is to smell it. If it has a rancid smell, it is most likely bad. Sometimes it can smell like ammonia. When you are at a fish market buying a whole fish you should look at their eyes. If they have creamy corneas, sunken eyes, and gray pupils, it most likely has cataracts. It is not a sign that the fish is bad but you should bypass that one and find one that is fresher and looks healthy.

You should also look at the gills behind the head. If they are yellowed or gray, also pass it and look for a fresher one. The skin should also be soft and can be easily detached from the meat and scales. If they have not split it open, ask them to do so because the guts are the first area that will be affected by age. If it is not a young fish it will be flaccid and sunken or swollen.

Good, Fresh Fish 

Fish that is fresh and good should have a fresh fish smell like the sea and seaweed. The skin will have hard, shining scales with vibrant color. The protruding eyes will have black pupils that glisten and the gills will red or pink, depending on the species. They will also have no mucus, and be bright and clean. When you look inside, the meat will not be slippery but be firm.

How to Tell if Your Fish has Gone Bad

Fish will keep in the refrigerator or freezer before you eat it but eventually, it will spoil and not be safe to eat. To tell if the fish has gone bad, there are several things you can do.

Read the sell-by date — if you have been keeping the fish in the refrigerator or forgot it was in there, check the sell-by date on the fish before you decide to fix it after finding it. If it is two days or more past the sell-by date, throw it away. It does not last very long in the refrigerator past that date. It will start to go bad soon after the sell-by date. To help delay the fish going bad, you should put it in the freezer immediately after you get home. The package of fish may have a use-by date instead of a sell-by date and the same principles apply. The use-by date indicates that the fish will spoil if not used by that particular date. 

You can keep cooked fish in your refrigerator for five or six days past the sell-by date. Store it in an airtight container before you put it in the fridge. If you know you are not going to eat the fish within that time frame, you can also freeze it. Most will discard the original packaging so make sure that you write down the sell-by date on the container so when you take it out of the fridge or freezer you will know the sell-by date and if it is still good to eat or you need to discard it.

Frozen fish can be kept for six to nine months after you put it in there. It does not matter if it is cooked or raw. The only exception to this rule is smoked salmon and even if it is frozen, it will only last three to six months. To freeze fish put them in an air-tight plastic bag or wrap them up tightly in pieces of plastic wrap. Most fish will have a smell and you do not want to get that smell throughout the freezer.

Inspect the fish when you take the fish out of the refrigerator, feel to see if there is a slimy coating on it. As it starts to age and go bad, the outer surface will get wetter until it eventually develops a thin layer of slim. This is a very good sign your fish has started to spoil. Once it has completely spoiled, the moisture will feel thick and slippery. As soon as you notice the slimy textures discard the fish. If the fish has been cooked, it will not get that slimy feel when it starts to go bad.

Smell it for a pungent fishy odor because all fish, cooked or raw, will smell like fish. If the refrigerated fish has started to go bad, the fishy smell will increase. In time, it will start to smell like rotting meat. As soon as it starts to smell bad, get rid of it.

Check to see what it looks like because it should have a white or light pink color but if it has a milky glossy coat, it is going bad. The milky parts may have a blue or gray tint. Cooked fish will not develop a milking color.

When you take fish out of the freezer make sure to look for signs of freezer burn, especially if it has been there over nine months. Look to see if there are any crystallized peaks of ice forming on the surface of the fish along with any discolored patches. If you notice any, it is best to discard it but will not make you sick if you eat it. It will just not taste as good.


You can tell if fish has gone by not only by smell but also by touch and appearance. Always check your fish, fresh or frozen, before eating or fixing it to avoid the dangers of getting food poisoning. Food poisoning can make you very sick so if you think your fish has gone bad, then be safe and discard it.

Previous articleHow Fast Can a Sailfish Swim?
Next articleBest Fishing Shows on Television
Growing up on the south shore of Long Island, Chum Charlie has always had a passion for fishing. His favorite fish to catch is a striped bass and his favorite bait to use is bunker. Off the water, he enjoys blogging and sharing his favorite fishing tips & tricks that he has learned over the years.