There are a lot of people who become confused with the difference between may and might. This is especially true when we add “have” to the mix; may have and might have are not the same.
Think of them as the present and the past. For example, if you say, “The accident involved two cars. Someone may have been killed,” you are saying that there definitely was an accident, but you don’t know for certain whether or not someone was killed, though it is a distinct possibility. In this case you are talking in the present about something that has happened in the here and now.
If you say, “The accident involved two cars. Someone might have been killed,” you are saying that the accident happened in the past, and you are implying that no one was killed. However, the accident was of a nature where the possibility of someone being killed was high – they might have been killed were it not for some factor that saved them, in other words.
Use “may have” when you are uncertain about the outcome of something in the present, and use “might have” when something didn’t happen, but it could easily have done so.
May on its own is generally used for permission, as in, “May I come in?” It also is used to suggest a possibility, as in, “We may have some sunshine later.” We can use might in a similar way to denote a possibility, as in, “I might take you up on that offer.” Saying instead, “I may take you up on that offer,” is equally acceptable.
Interchanging may and might on their own is usually acceptable, but when “have” is added the meaning changes and the two should always be used in the correct way if you wish to convey the right information.
Want to make sure you get it right every time? I can help.