That's a common issue, compatibiity is often hard to determine and can be a headache (or a waste of time and money). Yes, some vendors are better than others, but they can never handle the huge number of existing motherboards and configurations out there. Unfortunately, the minimal room around the CPU on a motherboard than is "required" is pretty small and is made to accomodate the CPU vendors' own coolers (which are usually entry-level, noisy crap, although I think that the more recent AMD ones are not too bad).
That's why many people, including myself, had turned to watercooling for a good while. There's never any issue with that with waterblocks. But watercooling has other downsides. I eventually got tired of watercooling.
I've switched to a AK620, has very good performance, is not too big and fits on a very wide range of motherboards (Noctua coolers are very good but the efficient ones can be pretty bulky).
If compatibility is not directly shown on the vendor's site/documents, then usually they at least provide the dimensions on a drawing. Use that to figure out if it fits.