It can be demonstrated that fish feel pain by blocking their reaction to it with analgesic drugs (painkillers).
Morphine is a strong analgesic in mammals. In Norway (Nordgreen, 2009), scientists gradually applied heat to the skin of goldfish. The fish showed an escape response at a particular temperature threshold. Later, when morphine was injected, the temperature had to rise significantly higher to evoke the same response.
In New Orleans, scientists (Ehrensing, 1981) applied electricity to fish to produce an "agitated swimming response." After fish were injected with morphine, the voltage had to be increased to achieve the same response. However, when naloxone was injected, the analgesic effect of morphine was blocked.
Scientists (Sneddon, 2003) in Scotland injected acetic acid into the lips of rainbow trout. The fish rocked on either pectoral fin from side to side and they also rubbed their lips into the gravel and against the sides of the tank. The respiration rate almost doubled.
The fish were then given morphine. This reduced the behaviour, and calmed down the respiration. The study said that,
"these pain-related behaviours are not simple reflexes and therefore there is the potential for pain perception in fish."
In an experimental tank, zebrafish chose to live where there was gravel and plants, instead of in a barren environment. However when they were injected with a painful chemical they preferred to spend time in the barren environment where there was analgesia in the water. (Sneddon, 2011)
The scientists concluded that,
"fish possess the necessary sensory components to detect a noxious stimulus and also have brain areas similar to those of higher vertebrates that respond to painful stimuli."and that,
"there is convincing evidence that fish possess nociceptors¹ that react in a fashion similar to those in mammals."
They even suggested that zebrafish could be used as a general model to test analgesics.Read more
At only 5 days after being fertilized, zebrafish larvae were exposed to weak acid, causing them to slow their swimming. However, when painkillers - aspirin, lidocaine, or morphine - were dissolved in their tank, before the acid was later added, they swam normally (Sneedon, 2017).1
¹ A nociceptor is a sensory receptor that reacts to potentially damaging stimuli by sending nerve signals to the spinal cord and brain. This process is called nociception.