There are two letter "h" in French: h muet and h aspiré. The silent h is the more frequent one which contracts with a preceding vowel, as in: "l'homme" or '"l'hôpital". Then there is the h aspiré, which does NOT contract, such as "la haine". You don't really hear the difference when the word is spoken all by itself. You only notice it when it either does or does not contract with a preceding vowel.
Here is a specific article on this topic: https://www.thoughtco.com/french-pronunciation-of-h-1369563
-- Chris (not a native speaker).