Emoji
Every row on the Emoji settings screen: access, suggestions, the emoji row, skin tones, fonts, the panel page, and keyword packs.
The Emoji screen collects every setting behind emoji access, suggestions, the panel, and emoji fonts in one place, grouped exactly as they appear on screen. This page is the field reference. For the emoji panel itself, with search, skin tones and favourites, see Emoji picker & search. For the reasoning behind fonts, keyword packs, suggestions, and the emoji row, see Emoji customization.


Options
Section titled “Options”Access
Section titled “Access”| Setting | Control | Options / range | Default |
|---|---|---|---|
| Emoji button in toolbar | Toggle | On / Off | On |
| Buttons beside the suggestions (shown only while Emoji button in toolbar is on) | Tool picker + reorderable list | any tools, in any order | Emoji |
| Toolbox button (same condition) | Toggle | On / Off | Off |
| Buttons on the right (same condition) | Toggle | On / Off | Off |
| Own size for these buttons (same condition) | Toggle | On / Off | Off |
| Button width (shown only while Own size for these buttons is on) | Slider | 20–64 dp | 38 dp |
| Button icon size (same condition) | Slider | 14–30 dp | 22 dp |
| Full-screen emoji panel | Toggle | On / Off | On |
| Panel layout | Nav row | n/a | opens the emoji panel’s layout editor |
| Emoji panel | Nav row | n/a | opens the Emoji panel page |
| Emoji mixes | Nav row | n/a | opens the Emoji mixes page: its sources and where mixes show |
Emoji button in toolbar keeps a one-tap emoji launcher in the top bar even while suggestions are showing.
Buttons beside the suggestions picks which tools stay beside the suggestions, and how many. Emoji is the default. Tap Add to add Clipboard, Voice input or any other tool; the list under it holds the chosen buttons, where you drag the handle to change their order and tap the bin to take one off. A tool must be turned on under Tools to show. A tool that is also pinned on the toolbar slides between its two spots when the bar flips between the suggestions and the tools, the way the emoji button always has. With the tools on a row of their own, a button already on that open row is left off the strip.
Toolbox button puts the toolbox launcher first among these buttons, so the toolbox is one tap away while the suggestions show, the same as from the toolbar. A swipe up on it brings the pinned tools and a swipe down puts them away. With it on, the toolbar can drop its own toolbox button and the strip its arrow, under Toolbar, and Where the tools go can be On a swipe.
Buttons on the right moves these buttons from the strip’s start, before the words, to its far end, after them. On a right-to-left layout (Arabic, Hebrew, Urdu) the words run from the right, but the buttons stay on the side and in the order you set, as the toolbar’s tools do. Turn on Reverse the order for right-to-left languages under Toolbar to have both follow the script instead.
Own size for these buttons sizes the buttons beside the suggestions apart from the toolbar’s tools, with Button width and Button icon size. Off, they take the toolbar’s Tool width and Tool icon size, so a tool in both places looks the same in each. Turned on, it also brings the English words switch of a phonetic layout up to the same size, instead of the smaller button it otherwise uses.
Full-screen emoji panel makes the panel take over the whole keyboard: the toolbar, emoji row, and symbol row step aside, and the category tabs move into the row they leave behind, next to a back button. Turn it off to keep the toolbar within reach while picking emoji.
Panel layout and Emoji panel are the two doors to the panel itself, side by side: the first edits the panel’s grid of tabs, search and rows, the second holds every other panel setting. They sit together in this group so that everything about the panel starts from one place.
Emoji mixes opens the page for two-emoji stickers. The keyboard ships no source for them; the page takes one you add and sets where its mixes show. See Emoji mixes.
Two more emoji-access toggles live on a different screen. See Details & edge cases below.
Suggestions
Section titled “Suggestions”| Setting | Control | Options / range | Default |
|---|---|---|---|
| Emoji suggestions | Toggle | On / Off | On |
| Press an emoji suggestion (shown only when Emoji suggestions is on) | Choice | Replace word / Keep word | Replace word |
Emoji suggestions appends matching emoji to the end of the suggestion strip as you finish typing a whole word. “birthday” offers 🎂🎉🥳. It works in English, and in any other language whose keyword pack you have. English and Bangla keywords are built in, so those two work with nothing downloaded.
Press an emoji suggestion decides what happens when you tap one. Replace word swaps the typed word for the emoji entirely, Gboard-style: “birthday” plus a tap on 🎂 leaves just 🎂. Keep word adds the emoji after it instead, giving you “birthday 🎂”. Long-pressing a suggestion runs whichever of the two this setting didn’t pick, so the other behaviour is one hold away rather than a trip back to this screen.
Emoji panel
Section titled “Emoji panel”This group is a page of its own, opened from the Emoji panel row in the Access group of the Emoji screen. On the screen itself the Emoji row and Skin tone groups come next, in that order; they are documented below.
| Setting | Control | Options / range | Default |
|---|---|---|---|
| Grid size | Slider | 36–64 | 44 |
| Narrowest tab | Slider | 24–48 dp | 40 dp |
| Emoji size | Slider | 20–36 | 28 |
| Columns | Slider | Auto, 5–14 | Auto |
| Row height | Slider | Auto, 36–72 | Auto |
| Recent emoji kept | Slider | 8–96 | 32 |
| Clear emoji history | Button (confirms first) | n/a | n/a |
| Return to the keyboard after you insert | Toggle | On / Off | Off |
| Switch to GIFs and stickers | Choice | Off / Top / Bottom | Bottom |
| Open the last used panel | Toggle | On / Off | Off |
| One long list | Toggle | On / Off | Off |
| Panel height | Slider | Same as keyboard to +400 dp | Same as keyboard |
| History tab | Choice | Recent / Most used / Both / Off | Recent |
| Clear recents button (shown only when History tab is Recent or Both) | Toggle | On / Off | Off |
| Kaomoji tab | Toggle | On / Off | Off |
| Kaomoji | Page | Opens the kaomoji library’s settings | |
| Emoji descriptions | Toggle | On / Off | On |
| Animated emoji | Toggle | On / Off | On |
| Send emoji as image | Toggle | On / Off | On |
| Emoji categories | Opens Emoji categories | n/a | n/a |
| Emoji keywords | Opens Emoji keywords | n/a | n/a |


Grid size is the least each cell of the emoji grid may be. A smaller size fits more columns. When Emoji size needs more room than that, the cells grow to fit it.
Emoji size is how large each emoji is drawn, on every tab and in search results. The long-press popup keeps its own size regardless.
Narrowest tab is how narrow a category tab may get before the tab strip stops sharing out the width and scrolls sideways instead. At 40 dp a 1080p phone holds about ten tabs; at 32 it fits the history tab, every category and the kaomoji tab without scrolling.
Columns fixes how many emoji go across a row. On Auto the grid fits as many as Grid size allows, so a wider screen shows more; a number keeps every emoji in the same column on any screen. Row height fixes how tall each row is, in dp; on Auto a row is as tall as the emoji size needs. With both fixed, a swipe of a given length always scrolls to the same emoji. Arrange like sets them, with the emoji size, to match the keyboard you copy, and a fixed grid centres each emoji in its cell.
Recent emoji kept caps the history tab. 32 is about one row on a small phone and four on a tablet. Lowering it trims the list straight away.
Clear emoji history empties the history tab, unpins your favourites, and puts each emoji’s skin tone back to the default. It confirms first, and it can’t be undone. The emoji themselves are untouched.
Return to the keyboard after you insert closes the emoji panel the moment you insert a single emoji, instead of leaving it open to pick several in a row. The clipboard panel shares this setting, so a single paste closes it the same way.
Switch to GIFs and stickers puts a row of three buttons, one each for emoji, GIFs and stickers, in all three panels, so you go from one to the next with a tap instead of a trip back to the toolbar. The button of the panel you’re in is lit. Bottom (default) puts the switch in the bottom row, between ABC and the space bar, and the GIF and sticker panels gain that same row under their results, with its ABC, space and backspace. Top puts it at the end of the search row instead: beside the category tabs on the emoji panel, beside the search box on the other two. Off leaves it out. With Top or Off the GIF and sticker panels still end in the emoji panel’s ABC, space and backspace row. The GIF and sticker buttons only show while those tools are on, and with both off there is no switch at all. The setting shapes the emoji panel as it ships. If you’ve laid the panel out yourself, the switch is wherever your layout puts it: it’s the Emoji, GIF and sticker switch component, and a layout without it has none. The GIF and sticker panels can carry the same component. One of those without it shows the switch beside its search box while this setting is on.
Open the last used panel makes the three behave as one panel. The emoji key and the emoji tool open whichever of emoji, GIFs and stickers you had open last, and with any of the three open, they close it. Off by default, so the emoji key always opens emoji. The keyboard forgets the last panel when it restarts.
One long list turns the panel into a single list you scroll from top to bottom, with each category’s name as a short heading over it, instead of a page per category that you swipe sideways through. A swipe runs from one category into the next. The tabs still jump: tap one and the list moves to that heading, and the tab bar follows the list as you scroll. Your history comes first, and with Kaomoji and Emoticons on, those two come last. Only the rows on screen are drawn, so the whole catalog in one list scrolls as smoothly as one page.
Panel height makes the emoji, GIF and sticker panels open taller than the keyboard, so more of them fit on screen at once, while the letters keep their own, more compact height. The three panels share it, so going from one to another never moves the top of the keyboard. The bar across the top of the emoji, GIF and sticker panels drags this same setting, and the GIF and sticker tool pages show it too. The panel never covers more than most of the screen, so on a short screen or a phone held sideways it can stay shorter than you set. While you type a search, the panel shrinks as before so the keys fit under it.
History tab sets what the panel’s first tab shows. Recent lists emoji in the order you last used them, and Most used ranks by frequency. Both puts your 16 most used at the top under their own heading, then the recents. Favourited emoji are pinned to the front of either list. Off removes the tab, and the panel opens on the first emoji category.
Kaomoji tab adds a tab to the end of the panel’s tab strip with your kaomoji library: Japanese-style faces and Western ASCII emoticons, under tag tabs you can add to, sort and rename. The Kaomoji row under it opens the tab’s own settings: a separate Emoticons tab, the tag tabs, the edit buttons beside the grid, kaomoji suggestions while you type, and the library itself with its import from Emotic, export and reset. Full coverage: Kaomoji & text art.
Emoji descriptions shows the emoji’s Unicode name above the favourite and skin-tone controls on its long-press popup, so near-identical emoji are easier to tell apart.
Animated emoji adds a looping preview and a Send animated emoji button to that same long-press popup, for the roughly 880 emoji Google publishes an animation of. Full coverage: Animated emoji.
Send emoji as image adds a Send image as sticker button to the popup for every emoji. It draws the emoji at 512×512 in your chosen emoji font and sends it as a WebP image. Full coverage: Sending an emoji as a picture.
Emoji categories is a navigation row, not a setting stored here: it opens the sub-screen documented below, where you reorder the panel’s category tabs, hide the ones you never open, and arrange the emoji inside each one.
Emoji keywords is a navigation row, not a setting stored here: it opens the sub-screen documented below.
Emoji row
Section titled “Emoji row”| Setting | Control | Options / range | Default |
|---|---|---|---|
| Emoji row | Choice | Off / Button / Own row | Off |
| Emoji row content (hidden when Emoji row is Off) | Choice | Most used / Recent / Favourites | Most used |
| Emoji in the row (same visibility gate) | Slider | 3–16 | 8 |
| Scroll the emoji row (same visibility gate) | Toggle | On / Off | On |


Emoji row controls a dedicated strip of your own emoji, similar to Gboard’s. Off (default) hides it entirely. Button adds a toggle to the toolbar that swaps the suggestion strip for the emoji row on tap. Own row keeps it permanently visible between the toolbar and the keys.
Emoji row content picks what fills the row: Favourites always sort first regardless of which of the three you choose.
Emoji in the row splits the row’s width into this many slots and shrinks the emoji to fit, so a higher number packs more, smaller emoji across. Scroll the emoji row is on by default, so the emoji past the last slot are a sideways swipe away. Turn it off and anything past the last slot isn’t shown at all, which also means the row can’t slide under a tap.
Until you’ve used enough emoji to fill the row from your own history, it falls back to a fixed set of 24 common ones, drawn in your Default skin tone.
When Emoji row is set to Own row, a caption on this screen points to Rows & bars for where the row sits relative to the toolbar and symbol row; by default it’s first, above both.
Skin tone
Section titled “Skin tone”| Setting | Control | Options / range | Default |
|---|---|---|---|
| Default skin tone | Choice | ✋ / ✋🏻 / ✋🏼 / ✋🏽 / ✋🏾 / ✋🏿 | ✋ (None) |
| Override with last used | Toggle | On / Off | On |
Default skin tone sets the Fitzpatrick tone applied to toned emoji (👍, 🙏, 🧑…) wherever they’re drawn: the emoji panel’s grid, the suggestion strip and emoji search results.
Override with last used, on by default, keeps a tone you picked yourself from an emoji’s long-press popup ahead of that default, for that emoji only. Turn it off and the default tone wins everywhere.
Emoji style
Section titled “Emoji style”| Setting | Control | Options / range | Default |
|---|---|---|---|
| Emoji font | Choice | System / Google / Installed / Custom | System |
| Get the newest emoji (only while there’s something to download) | Card with a Download button | n/a | n/a |
| Download more | Opens the addon catalogue, filtered to emoji fonts | n/a | n/a |
| Hide emoji that your device cannot show | Toggle | On / Off | On |
| Find any character by its Unicode name (advanced) | Toggle | On / Off | Off |
| Suggest characters by their Unicode name (advanced) | Toggle | On / Off | Off |


Emoji font decides which font draws emoji on the keyboard itself. WM Keyboard ships no emoji font of its own. A live preview row (😀😂🥰😎🤔👍❤️🎉) runs through the real shaping pipeline, so it shows exactly what the panel will draw. System uses your phone’s own emoji pack. Google fetches Noto Color Emoji once through the system font provider and caches it. Installed picks from an emoji font installed via Addons. Custom uses a single font file you import through a document picker. Whichever you choose, the text you send stays plain Unicode, and other apps and phones draw it with their own emoji font.
Get the newest emoji is a card rather than a row, sitting just under the font choice and its preview. It’s the one-tap route to emoji your phone is too old to draw. Tap Download. It fetches the current Noto Color Emoji (around 10 MB) from WM Keyboard’s addon repository, installs it into the font library, and points Emoji font at it as Installed. The Google choice above can’t do that job. A downloadable font is asked for by family name with no version in the request, so the system font provider serves whichever build it happens to have. On a phone with a recent system emoji font, that’s the older of the two.
The card only shows when there’s something to do:
- Nothing in your font library yet: Get the newest emoji, with a Download button.
- A newer build published since you installed yours: New emoji are available, naming the version, with an Update button.
- Otherwise it isn’t on the screen at all.
While the download runs the button becomes a progress bar, and a failure leaves the card in place with the reason and a Retry button. It’s the same file that’s published as an emoji-font addon, so this shortcut and the catalogue install the same font.
Download more opens the addon catalogue filtered to emoji fonts, for faces like Twemoji or OpenMoji from whichever repositories you’ve added. See Installing addons.
Hide emoji that your device cannot show is on by default, because the keyboard’s emoji list is newer than the font on most phones. It hides an emoji from the panel, search, and suggestions only when neither the chosen font nor the phone’s own system font can draw it. An emoji missing from just the chosen font is drawn quietly in the system font instead, in a different style.
Find any character by its Unicode name lets the emoji panel’s search reach symbols, letters and marks by the words of their official names, after the emoji. Suggest characters by their Unicode name puts a character on the suggestion strip when the words you just typed are exactly its name, such as snowman or em dash, and a tap swaps the name for the character. Both are explained under Emoji picker & search.
Long-pressing any emoji in the panel opens its favourite and skin-tone controls: two-person emoji like 🤝 let you set each person’s tone independently.
Emoji categories
Section titled “Emoji categories”The emoji panel ships its categories in the order Unicode defines them, which is rarely the order you reach for them in. This screen is where that changes. Nothing here touches the emoji themselves: it is an arrangement laid over the catalogue, and resetting it puts everything back.


| Control | What it does |
|---|---|
| Arrange like | Unicode (default), Gboard, SwiftKey or HeliBoard: copies that keyboard’s tabs and emoji order |
| Drag handle | Moves a category’s tab in the panel’s tab strip |
| Eye | Hides a category’s tab, or brings it back |
| The row itself | Opens that category’s emoji, to arrange them |
| Reset every order | Puts the tabs, the hidden ones and every category’s emoji back the way they shipped |
Arrange like. Sets every order on this screen at once to match another keyboard, for when your thumb learned emoji there. Where that keyboard groups emoji differently from the catalogue, the emoji move to the tab it keeps them on (on HeliBoard, plants join Animals and the weather joins Travel), and a tab left empty is hidden: Nature on all three, and People on SwiftKey, which keeps faces and people together. It also sets the grid to that keyboard’s columns, row height, emoji size and scrolling. Everything stays draggable and resizable afterwards. After a hand change the row shows Your own, and picking a preset then asks before it replaces your arrangement. Unicode does what Reset every order does. See Arranging the panel like your old keyboard for what each preset moves.
Reordering a tab. Drag a row by its handle. The order you leave it in is the order the tabs appear in the panel, left to right.
Hiding a tab. Press the eye on a category you never open and its tab leaves the panel. The emoji are still found by emoji search, and they still appear in the suggestion strip. Only the tab goes. The last visible category cannot be hidden: the panel pages by category, so a panel with none would have nothing to page.
Arranging the emoji inside a category. Press a category to open its grid, then press and hold an emoji and drag it where you want it. Dragging to the top or bottom edge scrolls. The order you leave is the order that category’s page shows. Reset in the top bar puts one category back on its own.
Three tabs are deliberately not listed here:
- Recent (or Most used) orders itself by what you use, with your favourites pinned to the front. Reorder those from any favourited emoji’s long-press popup.
- Kaomoji (and Emoticons, when split off) is switched on and off by the Kaomoji tab toggle above and always sits at the end of the strip. Its own tags are sorted on the Kaomoji page.
Added emoji
Section titled “Added emoji”Emoji from a Unicode release newer than the app’s own catalogue (Emoji 17.0), added by hand. Each one shows at the end of its tab in the emoji panel, is found by panel search and inline :word search, and can be a favourite or land in Recent. See Adding emoji the keyboard doesn’t have yet for the reasoning.
| Control | What it does |
|---|---|
| Add an emoji | Opens a form: the emoji itself, a name, comma-separated keywords, and the tab it goes in |
| Import emoji-test.txt | Adds every emoji in Unicode’s emoji-test.txt that the keyboard doesn’t have yet, skin tone versions excepted |
| A row under Your added emoji | Opens the same form to change or delete that emoji. Swiping the row deletes it |
| Delete all added emoji | Removes every added emoji, after asking |
The form won’t save an emoji the keyboard already has (it names the tab it is in), one you already added, or text with a space in it. When your emoji font can’t draw what you pasted, the form says so but still lets you save it: the keyboard types it correctly, and Hide emoji that your device cannot show never hides an added emoji.
When an update includes an emoji you added, its row says The keyboard now includes this emoji. The built-in entry is used from then on and keeps your keywords, so deleting yours loses nothing.
Added emoji are part of your settings: a backup with Settings ticked carries them, and sync copies them between devices. The list holds up to 500.
Emoji keywords
Section titled “Emoji keywords”Reached from the Emoji keywords row in the Emoji panel group above, this sub-screen manages the per-language dictionaries emoji search matches against. English and Bangla keywords ship built in. Everything else needs a pack.


| Setting | Control | Options / range | Default |
|---|---|---|---|
| Download automatically | Toggle | On / Off | On |
| Download more | Opens the addon catalogue, filtered to emoji keywords | n/a | n/a |
Download automatically fetches a keyword pack (roughly 100 KB) in the background the first time you enable a language you type in. Off leaves it to the Download button next to each language below.
Download more sits in the same group and opens the addon catalogue filtered to emoji keyword packs, which is where a pack lives if it isn’t one of the 126 the data repository carries.
Below that, one group appears per language you’ve enabled (plus any language that already has a downloaded or imported pack, even if you’ve since turned it off). Each group shows:
- A download/delete row with the pack’s emoji count and size, for any language the data repository covers.
- Any packs you’ve imported by hand, each with its own delete button.
- Import pack (a document picker) and From URL buttons.
Packs stack on top of the bundled English and Bangla keywords rather than replacing them, and a language can have several at once. The import format is a tab-separated file: one emoji per line, then its comma-separated keywords, and optionally a display name. Lines starting # are ignored. The JSON emoji dictionaries from the wmkeyboard-data repository import as they are, with no conversion needed.
The data repository currently covers 126 downloadable language packs: fewer than its raw language count because a handful of codes get remapped or merged with duplicates, and a few packs the source data leaves nearly empty are left out.
Each enabled language’s own settings screen also carries a matching Emoji group with the same download row and a shortcut back to this same screen, so you can start a download from either place and see the same state in both.
Details & edge cases
Section titled “Details & edge cases”- Two more emoji-access shortcuts live on a different screen. Emoji key instead of 🌐 (on by default) turns the 🌐 key into an emoji-panel launcher. Comma key opens emoji (off by default) does the same to the comma key. Both are under WM Keyboard Layout & size Bottom row keys, not here. Turning on the comma-key version also removes the emoji tool from the toolbar, per its own info text.
- Inline
:word:emoji search is a Typing setting, not an Emoji one. WM Keyboard Typing Suggestions Inline emoji search (on by default) turns a colon at a word boundary into a live emoji search in the suggestion strip, and auto-commits exact shortcode matches like:tada:. It’s unrelated to the Emoji suggestions toggle above. - Press an emoji suggestion only appears while Emoji suggestions is on. Turning suggestions off hides the choice entirely rather than disabling it.
- Clear recents button only appears while History tab is Recent. The Most used tab is a computed ranking rather than a remembered list, so there’s nothing on it to clear.
- Emoji row content, count, and scrolling only appear while Emoji row is not Off.
- Installed and Custom emoji fonts each reveal their own extra controls. A font list pulled from Addons for Installed, an import button for Custom, shows only while that choice is selected.
- Kaomoji and emoticons insert as plain text. Tapping one types it directly. It counts for the Kaomoji tab’s own Recent tag and never joins your emoji recents or most-used history.
- Power Saving mode can drop emoji suggestions independently of the toggle here. See Power saving for its own emoji-prediction toggle.
- The toolbar’s Emoji tool has its own mini-settings panel with a duplicate “Emoji button in toolbar” toggle and an “All emoji settings” shortcut back to this screen. See Tools for toolbar-tool customization in general.
- The Emoji categories screen lists added emoji too. They sit at the end of their category and can be dragged like the built-in ones.
- No build differences. Every setting on this screen and its keyword sub-screen works the same in every build.
Related pages
Section titled “Related pages”- Emoji picker & search: the panel itself. Search, skin tones, favourites and recents.
- Emoji customization: the reasoning behind fonts, keyword packs, suggestions, and the emoji row.
- Kaomoji & text art: the Kaomoji tab, its tags, editing and the Emotic import.
- Layout & size: the 🌐-key and comma-key emoji shortcuts.
- Typing: inline
:word:emoji search and shortcodes. - Rows & bars: where the emoji row sits relative to the toolbar and symbol row.
- Addons: installing emoji fonts for the Installed choice.
- Power saving: dropping emoji suggestions to save battery.
