Kaomoji Generator
Browse 150+ Japanese-style kaomoji emoticons by mood and click to copy. Free, instant, and works entirely in your browser.
Faces you read the right way up
Kaomoji, written 顔文字 and meaning roughly face characters, appeared on Japanese bulletin board services in the mid 1980s. Western emoticons had turned up a couple of years earlier on a university message board, and the two traditions took opposite approaches from the start.
The Western form is rotated. You tilt your head to read :-) and the colon becomes eyes. The Japanese form is upright and symmetrical, so (^_^) is read face on with no rotation at all. A common explanation is cultural: Japanese readers tend to look to the eyes for emotional information while English speakers read the mouth, which is why kaomoji vary the eyes so much and often leave the mouth out entirely. Compare (^_^), (T_T), (ಠ_ಠ) and (♥ω♥). Same brackets, same underscore, completely different feeling, all from the eyes.
Japanese character sets made this possible. Fixed width kana and CJK punctuation gave writers a far larger palette than the ASCII keyboard offered, and arms, tears and motion lines became available as ordinary typed characters.
What these faces are built from
Pull one apart and you find pieces borrowed from all over Unicode.
Katakana supplies limbs and gestures: ノ and ヽ for arms, ツ for the grinning face in the shrug, ノ in its half width form. CJK punctuation gives the wide brackets ( )and the small circle 。. Box drawing characters build the furniture, which is how ┻━┻ becomes a table. Greek, Cyrillic and Armenian letters supply eyes and mouths, ω and ಠ among them, with ಠ coming from Kannada and ʕ ʔ in the bear faces being Latin glottal stop letters.
This board holds 193 kaomoji across fourteen mood tabs: Happy, Sad, Angry and Love with 20 each, Shrug 15, Bear 12, Cat 14, Table Flip 11, Surprised 12, Confused 11, Embarrassed 10, Greeting 10, Dancing 9 and Disapproval 9. Clicking a tile hands that exact string to the browser clipboard and confirms when the write succeeds. The full list ships with the page, so nothing you copy is sent anywhere.
Why they survive where emoji struggle
An emoji is one code point that has to be drawn by an emoji font. No font, no picture. Kaomoji are just ordinary text characters sitting next to each other, so they do not depend on an emoji font at all.
That matters in places emoji quietly fail: a terminal, a git commit message, a code comment, a plain text log, an older email client, a printed document, a system that strips anything outside its expected range. A kaomoji generally comes through as typed.
The claim is sometimes overstated, so here is the honest version. Kaomoji do not need an emoji font, but they do need font coverage for every script they borrow from. A device with a thin font stack may render ಠ or ᴥ as an empty box while showing the brackets fine, leaving you with a face missing its eyes. Simple ASCII leaning faces such as (^_^) and (T_T) are the most bulletproof.
Two more practical quirks. Many of these characters are classed as East Asian wide, meaning they occupy two cells in a monospaced terminal, so a kaomoji pasted into aligned output will push the columns out. And one entry on the Cat tab is a two line design; paste it into a single line input and the second line will be dropped or flattened.
The shrug and its backslash problem
¯\_(ツ)_/¯ is the most reproduced kaomoji in English speaking internet culture, and it is also the one most likely to arrive broken.
The trouble is the backslash. Apps that use Markdown style formatting treat a backslash as an escape character, and treat the underscores around (ツ) as italic markers. The result is that the face loses an arm or the underscores vanish.
The usual workaround in chat apps that behave this way is to double the backslash before sending, so you type two of them and one survives. In an app with no Markdown parsing, paste it as is. If a copy comes out looking wrong, that is the formatter interfering, not a copying error.
Where people actually use them
Chat and group threads are the obvious home, particularly where a tone marker is needed and an emoji feels too heavy. A ¯\_(ツ)_/¯ after a scheduling question reads as easygoing in a way a plain full stop does not.
Game chat and voice channels favour them because they type fast from a keyboard and there is no emoji picker to open mid match. Forums and issue trackers use them in the same spirit, with the added benefit that they survive plain text quoting.
Bios and display names take them well, with the caveat that longer faces eat character allowances quickly and some username fields reject anything outside letters and numbers. The multi character designs on the Table Flip tab can run past twenty characters on their own.
For colour pictographs instead, the Emoji Picker covers the full set. The Aesthetic Symbols board has the stars, arrows and dividers used for decoration rather than expression, and the Fancy Text Generator restyles whole words into Unicode variants.
Things people ask
Why does the shrug arrive missing an arm?
Because the receiving app treated the backslash as an escape character and swallowed it. Chat clients with Markdown formatting are the usual culprits. Typing the backslash twice before sending normally fixes it.
Some characters show as squares on my friend's phone. Is the copy corrupt?
No, the text is intact. Their device lacks a font covering that particular script, so it substitutes a placeholder box. Faces built only from brackets, carets and underscores avoid the problem entirely.
Can I type these without a picker?
The simple ones yes, since they are keyboard characters. Anything using kana or unusual letters is far quicker to copy. Many people paste their favourites into a text expander or phone keyboard shortcut and trigger them with a short code.
Do kaomoji break alignment in a terminal or spreadsheet?
Often, yes. A lot of these characters are classed as full width and take two columns in a monospaced grid, so tables and aligned logs shift. Keep them out of anything where column position matters.