1. S/he got a different love language
Everyone has a love language, which is basically the way in which one shows their affection and care. For some people, giving gifts is a display of love; for others, kind words are. If you want compliments, chances are your love language is words of affirmation, but his might be something else. The best way to deal is to talk to him about this.
2. S/he doesn't think you like them
If he used to give you compliments but you’d swat them away, such as by saying you’re actually not smart/beautiful/wise, he might’ve figured you don’t like what he has to say. Or, maybe it annoyed him when you treated the compliments in such a negative way, so he stopped. The best thing to do is talk to him about it and why you’ve been weird about compliments, before telling him that you do appreciate them.
3. S/he is painfully shy
If you’ve just met or started dating and you’ve noticed that he’s really shy, this will make it more difficult for him to express what you mean to him such as by giving you compliments. Give him a bit of time so that he comes out of his shell. When he feels more comfortable around you, he’ll be able to express himself more.4. S/he doesn't realize it's a big deal
You might think that when he doesn’t compliment you for your job promotion or new hairstyle he’s being a jerk, but he might not really think it’s that much of a big deal. Again, compliments to some might be huge whereas others don’t really care about them. Notice how he reacts to being complimented because that will give you insight into what’s going on.