In many manuscripts where the writer otherwise has excellent control of formal, informal and demotic/dialect grammar, I find that they write may when they really need to write might. The usage is evolving, so I accept that there are times when I'm at the old fashioned end of the spectrum- and it is tricky to pin down because sometimes it's about degree and nuance, not necessarily an either/or, right/wrong. But it's too useful a distinction to lose, and there’s one crucial bit, so here goes.
First and simplest, might is the past tense of may, which is a "modal" verb (= a verb that works as an auxiliary to other verbs, to fine-tune their meaning) and what it does is fine-tune the main verb to make it express probable or likely but not definite events:
- If the sun comes out and it stays warm we may go for a picnic becomes in past tense
- If the sun came out and it stayed warm they might go for a picnic.
- As he gets up I explain that I may agree to marry him becomes
- As he got up I explained that I might agree to marry him
- The law states that a criminal may not be charged if a doctor certifies him insane becomes
- The law stated that a criminal might not be charged if a doctor certified him insane
To write If the sun came out and stayed warm they may go for a picnic is as wrong as writing I pelted along the street and skip round the corner... but I see a lot of it in students' work and elsewhere.
Even if the original, definite event was in the past, if there are still probably or likely consequences in the present, we still use may:
- The clouds came over at lunchtime, but we may still go for a picnic this evening.
- Given that he crashed his car, may we still rely on him as a driver for the festival?
Might is also the present tense form of may in the subjunctive mood and that's where the trouble starts, it seems to me. The subjunctive is a form that verbs can have to express imagined, wished-for, tentatively assumed or hypothetical states of affairs (as opposed to the indicative mood, which is the one we use all the time for actual actions and states).
Confusingly, in most verbs the subjunctive looks awfully like the past tense, even when it's doing a present-tense job in things like We could go but it might be cold, or If I were you, I wouldn't go.
So if the thing you're talking about seems only just possible, really very unlikely and hypothetical, you would use might: [n.b. would use is itself a subjunctive, to go with the opening if.]
- If I show up on time for at least a month, I might keep my job.
- He might have guessed it would cause trouble, but he went blithely on as he always did.
But of course may is already about possible, not definite events, so sometimes you could use either, but shifting into the subjunctive might simply makes the proposition even less definite, more hypothetical, less likely. So
- If the sun comes out we might go for a picnic expresses a vaguer, less likely possibility than
- If the sun comes out we may go for a picnic
- The law states that a criminal might not be charged, but only if a doctor certifies him insane, suggests that it's a rare possibility, not to be hoped for.
Obviously, this is a matter of degree - and two people talking about the same possible picnic might not use the same form, if one is more of an optimist about how keen everyone is on the picnic than the other is. But it's a matter of degree worth holding on to, so you can fine-tune the greater possibility, or greater uncertainty, for your storytelling purposes.
There is one definite either/or rule, and this is where the may/might problem really matters, because getting it wrong changes the meaning.
If the possibility is still present, whether the event is past or current you use may:
- The island is still flooded and people may catch awful diseases...
- (...but we can't get there to find out.)
- He may have guessed it would cause trouble, but he went blithely on as he always did...
- (...and we don't know if he guessed or not.)
- The explosion was huge and people may have been killed...
- (...but the police haven't issued a statement yet.)
In other words, it is still perfectly probable that people have died or he guessed: it could still turn out to be a real event. It's not certain, but the situation and our understanding of it is still open.
But if what was once a possibility is no longer perfectly probable, but simply a hypothetical thing which never in fact did become a real event - if nobody died or got ill and we know it - you must use might:
- The island is still flooded and people might have caught awful diseases...
- (...but luckily they'd all had their typhoid and dysentery vaccinations.)
- He might have guessed it would cause trouble, but he went blithely on as he always did...
- (...because he didn't guess and so had no reason to stop.)
- The explosion was huge and people might have been killed...)
- (...but in fact everyone was rescued.)
The situation and our understanding of it are certain, and these events did not in the end happen: the situation is, if you like, is closed. That's is also why for this kind of thing, you must use might:
- Had we been happier, we might have got married.
- If Archduke Franz Ferdinand had not been shot, the First World War might not have started.
To put may into that kind of construction changes the meaning - and so to me, and many others, it's a real marker of a writer with some work to do:
- [incorrect] Had we been happier, we may have got married. [Well, did you, or didn't you, get married?]
- [incorrect] If Archduke Franz Ferdinand had not been shot, the First World War may not have started.
because, y'know, the First World War did start, more's the pity.
p.s. And while we're here, some writers get confused with how we use may and might for permissions. As your more tiresome teachers said, when you asked "Can I go outside?" what you actually meant was "May I go outside?": it wasn't about physical capacity, but permission.
But that means that when you write I may not enter Russia, your friends won't know if you don't have permission to enter, or you just haven't decided for sure whether you want to.
Because might is always hypothetical, when you're trying to express that you haven't yet decided if you can be bothered to queue at the border for the visa, it's safer to say I might not enter Russia. and leave I may not enter Russia for the moment when you're told you can't have a visa.