From David Farland, Story Doctor:
Dialogue Tags Don’t Match the Dialogue
Some people in the industry say writers should only ever use “said” and “asked” as dialogue tags. This is because it forces the dialogue itself to do the work. Personally, I’m not wholly against alternative dialogue tags (“groaned,” “cried,” “yelled,” “lamented,” etc.) when used in moderation. I think they can be particularly effective when the dialogue itself, and the context of the story, can’t portray the way that it’s said. For example:
“That’s great,” Melody groaned.
But sometimes the chosen dialogue tag honestly doesn’t make sense. Such as . . .
“Elephants use their skin folds to crush mosquitoes,” Milo whined.
The direct dialogue doesn’t sound like whining. The content doesn’t sound like something to whine about, and the structure doesn’t sound like whining. (And I doubt in a story it could logically pass off as whining.) That dialogue tag doesn’t seem to fit.
“Elephants use their skin folds to crush mosquitoes,” Milo said matter-of-factly.
That’s better. But sometimes I see weird combos like this:
“Elephants use their skin folds to crush mosquitoes,” Milo whined matter-of-factly.
I don’t know about you, but “whined matter-of-factly” sounds like something that’s pretty difficult to pull off.
Make sure if you do use an alternative tag that what you write makes sense.
. . . .
Often the most powerful dialogue is indirect. This is because it contains subtext. What’s cool about subtext, is that it happens when the audience comes to a conclusion about what they are reading. So, it invites the audience to participate and experience the story, instead of just “spectating” it.
Here is an example of terrible, straightforward dialogue:
“Jennifer, I love you! I love you more than the moon and the sun,” Cole said.
“I didn’t like you at first, but I guess over time I came to like you too,” Jennifer said. “Maybe we can be friends for now though.”
Straightforward dialogue releases tension. It has a place in storytelling for sure (like . . . when it’s time for the tension to be released). But most of your dialogue should not be so straightforward. In life, people often speak indirectly about things, and their words reveal more than what they are actually saying. Good dialogue does too. It says more than what’s on the page.
Link to the rest at David Farland, Story Doctor