Trout have cells in their noses that act like tiny compasses to help them navigate, a study has shown.
Scientists used a new method to identify the magnetic cells, believed to exist in many other animals.
The cells contain iron-rich deposits of a magnetic material called magnetite.
They were found by suspending nasal cells in a solution and moving them using a rotating magnetic field.
The cells were then separated off and examined in more detail.
Each "magnetoreceptor" cell had magnetite particles firmly anchored to its membrane.
Tests suggested the cells were capable of detecting magnetic north as well as small changes in magnetic fields.
They were about 100 times more sensitive to magnetic fields than had been expected.
Scientists have long suspected that many animals, including migratory birds, fish and even cows, possess a magnetic sense.
But although many studies have pointed to its existence, pinning down the biological mechanism involved has not been easy.
Magnetite is not uncommon in cells but does not necessarily have anything to do with navigation.
A recent study dismissed theories that pigeons used magnetite-rich cells in their beaks to help them fly home.
The new study was conducted by German scientists led by Dr Michael Winklhofer, from Ludwig Maximilian University of Munich.
Writing in the journal Proceedings of the National Academy of Sciences, they said their "rotating field" technique was able to "unambiguously identify" magnetic cells.
They concluded: "Our results show that the magnetically identified cells clearly meet the physical requirements for a magnetoreceptor capable of rapidly detecting small changes in the external magnetic field."
Similar magnetic cells could explain how cattle are affected by power lines, the scientists added.
Previous research has shown that cows tend to line up in a north-south direction when they graze. But cows grazing under power lines face in random directions, suggesting that their magnetic sense has been disturbed. A similar effect was seen in deer.Suggest a correction