Learn English – What’s the difference between “good on you” vs. “good for you”, with a sincere meaning something like “you’ve done a good thing”

dialectsdifferencesprepositions

In the northeastern USA I usually hear "good for you," as in

You passed the test? Good for you! [congrats]

Good for you, for stopping to help! [you are a good person]

Online I often see the variant "good on you/good on ya" written, as in

You passed the test? Good on ya!

Good on you for stopping to help!

(I was able to find this discussion about the phrases, but there seems to be little agreement about which English speakers use which variant. We've also got a definition here of "good for you".)

Is there a difference in usage between the two phrases – are they used in different ways? Or, do they mean the same thing and are used by speakers of different dialects?

Best Answer

I can only speak from a British English perspective, but the two phrases would be unambiguously different to me.

Good for you would be a way of acknowledging that some good has come to a person, and implying that one approves of it and are happy for the person (ie. "that's good for you").

Good on you would be a way of thanking a person explicitly for something they have done (ie. "I wish good on you").

In your examples, then, the more appropriate usage in the 2 phrases would be:

  • You passed the test? Good for you!
  • Good on you for stopping to help!