Emotion searches work best when you separate the feeling from its intensity. Happy can mean a small smile, relieved laughter, or a room full of people dancing. Those results are not interchangeable in a conversation.
Start with the broad emotion, inspect the results, and change one part of the query at a time. This makes it easier to see which word improves the match.
Use three layers of description
Feeling: happy, sad, confused, relieved, proud, grateful, surprised.
Intensity: subtle, quiet, big, excited, dramatic, exhausted. Catalogs may not use every modifier, so treat these as experiments rather than guaranteed filters.
Visible action: nodding, clapping, shrugging, waving, smiling, facepalm. Actions help when the emotion term is ambiguous or poorly represented in tags.
For example, begin with proud, then try proud nod if the results feel too celebratory. For a low-key acknowledgment, nod may work better than yes, which can return loud celebrations.
Distinguish neighboring emotions
Surprise and disbelief can look similar. Relief and exhaustion can share the same slumped posture. Gratitude and sarcasm can both involve applause. Watch the full animation and any captions before deciding that a result communicates the intended feeling.
When a query produces the wrong tone, replace the emotion word before adding more qualifiers. Appreciation may perform differently from thanks; uncertain may work differently from confused. Search vocabularies vary between catalogs.
Design an emotion-first picker
If you are building a picker, keep category names short and understandable without cultural context. Give users a text search alongside categories, because no fixed list describes every reaction.
Do not claim that an emotion category is a content-safety rating. A “happy” result can still be inappropriate for a specific workplace, age group, or audience. Suitability needs separate review.
GIFs.so provides 56 reaction categories for verified users, and its API guide explains how to list the current IDs. Use the returned IDs rather than assuming that a display label is an API parameter. For more precise scene searches, see finding a GIF without its name.