Use said when you report someone’s words.
Newspaper and other style guides disagree over whether to use past tense (said) or present tense (says).
Otherwise it doesn’t matter which. Just pick one and stick with. Although you may need to write someone says this now, but said something different in the past.
While you can use said even with written words – if you are quoting what someone wrote in a mail or in tweet – it is better to make it clear the person wasn’t talking at the time.
Alternatives to said are mainly pompous or value-laden. I once worked with a journalist who sprinkled his copy with words like averred or commented. Neither adds useful information and may frighten off some readers.
Readers may interpret other alternatives to said as suggesting the speaker is lying or misinformed. Think of claimed or according to.
One alternative I allow myself is the verb ask, but only when someone is clearly asking a question.
Fiction writer Elemore Leonard has another perspective on this. In his excellent Ten rules of writing he says:
Never use a verb other than “said” to carry dialogue.
The line of dialogue belongs to the character; the verb is the writer sticking his nose in. But said is far less intrusive than grumbled, gasped, cautioned, lied. I once noticed Mary McCarthy ending a line of dialogue with “she asseverated,” and had to stop reading to get the dictionary.
Leonard writes fast-paced fiction with terrific dialogue, if sticking with ‘said’ is good enough for him, said is good enough for the rest of us.