Learners from German or Russian (for example) will tend to place too many commas. When writing in English, try to think of commas as a very "heavy" form of punctuation, i.e. that it signifies a substantial pause – it's not just something you fly over as in German or Russian.
Whether to place a comma or not is sometimes a personal choice. For instance, introductory clauses may have a comma but it can be dropped (if the clause is reasonably short):
- Before leaving, I checked my e-mails vs. Before leaving I checked my e-mails.
However, there are some situations where you must set a comma:
- A relative clause (which, who) that does not help identify an object is separated by a comma from the main clause. Compare "The house which I bought" (Oh, you mean that house) vs. "The table, which my grandfather already had" (it is clear I mean this table right here and I'm providing additional information).
- Adverbs at the start of a sentence (Additionally, it must be noted... Unfortunately, I can't...).
- Adverbs describing the whole sentence at the end. He died in the car crash, sadly.
- The year is separated from the day and month in dates. 2014-07-03 is written as the 3rd of July, 2014.
- Direct speech. She said, "Where did you go?" "I'm right here," he said. (Notice the comma is inside the double quotes, though I do believe that's predominantly in use in the US.)
- Use a comma after "yes" or "no." Yes, I understand. No, it's too late.
- Conditional sentences. A comma is put between the "if" clause at the beginning and the second part, but not the other way around: If I arrive early, I'll call you to pick me up vs. I'll call you to pick me up if I arrive early.
- Lists. Items of a list are separated by commas, except for the last one: There were books, bottles and pens in his bag. A comma can also be seen before the and sometimes, though that feels rather wrong to me, especially for lists with short items, such as this example.
- Adjectives and adverbs. A collection of independent adjectives or adverbs should also be separated by commas: the old, scary house. No comma should be placed if the first adjective refers to the second one: the new red car, i.e. new refers to the red car, not just car.
- Addressing someone. Hi, Paul! Thanks for the book, Mary!
Do not place a comma before "that" in things like "I think that she's sick." That's the first thing you want to avoid if your native language makes you do that.
Another thing to avoid in most cases is a comma before "because" and similar:
- I'm here because I was invited. My friend will be sleeping here for a few days because his family is going through something.