How good is this compliment? When should you use it instead of saying you are smart or clever?
High praise. It's a metaphorical use of head to mean what's contained within -- brains and the good sense to use them.
You have a good head on your shoulders.
You have a good head for [a particular subject].
For example, from The Ponca Tribe by J. H. Howard:
[T]he chiefs would appoint the leader. He was selected from among the bravest warriors. He had to have a good head and not to do things rashly or else the whole tribe would suffer.
When someone says "you have a good head for something" they mean you have a natural ability to do something well.
It has the same meaning as "have a knack for something".
If you mean someone shows intelligence and good judgement instead of a special talent, use clever or smart.
Here are some cases where you might prefer this idiom over a single word, clever or smart.
- If you want to convey the "good judgment" part.
- If you want to use good head for something (something specific).
- If the look and feel (or sound) of an idiomatic expression appeals to you more than a one-word description does -- in the particular context.