# Emoji

> Every row on the Emoji settings screen: access, suggestions, the emoji row, skin tones, fonts, the panel page, and keyword packs.

URL: https://wmkeyboard.pages.dev/reference/settings/emoji/
Section: Reference

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](https://wmkeyboard.pages.dev/emoji/picker/). For the reasoning behind fonts, keyword packs, suggestions, and the emoji row, see [Emoji customization](https://wmkeyboard.pages.dev/emoji/customization/).

  reference/settings/emoji-overview — The Emoji settings screen, showing Access and Suggestions at the top.

## Options

Emoji

### Access

Emoji / 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](#emoji-panel) page |
| Emoji mixes | Nav row | n/a | opens the [Emoji mixes](https://wmkeyboard.pages.dev/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](https://wmkeyboard.pages.dev/reference/settings/appearance/#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](https://wmkeyboard.pages.dev/reference/settings/appearance/) 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](https://wmkeyboard.pages.dev/reference/settings/appearance/), 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](https://wmkeyboard.pages.dev/emoji/mixes/).

Two more emoji-access toggles live on a different screen. See [Details & edge cases](#details--edge-cases) below.

### Suggestions

Emoji / 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.

Typing `:cat:` to search or auto-commit an emoji from the suggestion strip is a separate toggle on the [Typing](https://wmkeyboard.pages.dev/reference/settings/typing/) screen, not this one. See [Details & edge cases](#details--edge-cases).

### Emoji panel

Emoji / 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 |

  reference/settings/emoji-panel-group — The Emoji panel group, with the Emoji keywords row at the bottom.

**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](#emoji-categories) 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](https://wmkeyboard.pages.dev/languages/custom-layouts/#panel-layouts), 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](https://wmkeyboard.pages.dev/emoji/kaomoji/).

**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](https://wmkeyboard.pages.dev/emoji/picker/#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](https://wmkeyboard.pages.dev/emoji/picker/#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

Emoji / 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 |

  reference/settings/emoji-row-group — The Emoji row group with Own row selected.

**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

Emoji / 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

Emoji / 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 |

  reference/settings/emoji-style-group — The Emoji style group, with the live font preview row and font choices.

**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](https://wmkeyboard.pages.dev/addons/installing/). **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](https://wmkeyboard.pages.dev/addons/installing/).

**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](https://wmkeyboard.pages.dev/emoji/picker/#characters-on-the-suggestion-strip).

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

Emoji / Emoji panel / 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.

  reference/settings/emoji-categories-screen — The Emoji categories screen: drag to reorder a tab, press the eye to hide one.

| 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](https://wmkeyboard.pages.dev/emoji/customization/#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](https://wmkeyboard.pages.dev/emoji/picker/#searching-for-an-emoji), 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

Emoji / Emoji panel / 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](https://wmkeyboard.pages.dev/emoji/customization/#adding-emoji-the-keyboard-doesnt-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

Emoji / Emoji panel / 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.

  reference/settings/emoji-keywords-screen — The Emoji keywords screen, with per-language download and import controls.

| 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](https://github.com/wasi-master/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

- **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 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.** 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](https://wmkeyboard.pages.dev/typing/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](https://wmkeyboard.pages.dev/tools/overview/) 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

- [Emoji picker & search](https://wmkeyboard.pages.dev/emoji/picker/): the panel itself. Search, skin tones, favourites and recents.
- [Emoji customization](https://wmkeyboard.pages.dev/emoji/customization/): the reasoning behind fonts, keyword packs, suggestions, and the emoji row.
- [Kaomoji & text art](https://wmkeyboard.pages.dev/emoji/kaomoji/): the Kaomoji tab, its tags, editing and the Emotic import.
- [Layout & size](https://wmkeyboard.pages.dev/reference/settings/layout/): the 🌐-key and comma-key emoji shortcuts.
- [Typing](https://wmkeyboard.pages.dev/reference/settings/typing/): inline `:word:` emoji search and shortcodes.
- [Rows & bars](https://wmkeyboard.pages.dev/reference/settings/rows/): where the emoji row sits relative to the toolbar and symbol row.
- [Addons](https://wmkeyboard.pages.dev/addons/installing/): installing emoji fonts for the Installed choice.
- [Power saving](https://wmkeyboard.pages.dev/typing/power-saving/): dropping emoji suggestions to save battery.
