The way you approach the person(s) you want to give a compliment, in one way or another (compliments comes in many forms), is very important. It may even be more important than making sure the receiver is receiving it properly. The approach is part of how it is received.
Body language, voice, way of talking and the way you phrase the sentences is all part of how you approach.
This is especially important if the receiver of the compliment is either unknown (a stranger) or is "damaged" in any way (apologies for the phrasing, it might be offending to some but is the most fitting word to describe multiple areas).
The action of giving a compliment is also a great opportunity to bond with this person, so beyond making it sincere, you may also want to go deeper than just "I love your hair" or whatever comes to mind.
A good way to make a compliment both deep and sincere is to compliment the other persons qualities. This usually intrigue the persons interest and curiosity which may lead to you getting the question "Why do you like ...... about me?".
This may come from a stranger too, although it's more difficult to actually appreciate the qualities of a stranger.
Before actually giving the compliment, think about why you like that quality about the other person.
What makes it resonate so well with you?
Keep It Sinsere & Specific - KISS
Hyperbole or gratuitous praise can cheapen the gesture, making it feel empty and disingenuous. An honest compliment, even if it's a small one, carries more weight.
— Lindsay Liben
This goes for most people. There are, as always, exceptions. Some exceptions could be a person who you're intimate with. They might want to hear you say "Your lips are so sexy" rather than "You're so funny".
Again, this depend on the situation.
A compliment should never start with "for".
"Why?", you might wonder.
Simple.
Read these so-called "compliments":
Now, say those again, but stop before "for"
They sound a lot better, right? I think so.
Do not use the compliment as a bridge to criticism. Not even constructive criticism.
Just don't!