Downloads & mobile data
What a language downloads, when it downloads, and which downloads ask before spending your mobile data.
Adding a language can pull files down. Most of them are tiny, one of them is 42 MB, and none of them check whether you’re on Wi-Fi first. This page lists exactly what gets fetched, when, and what it costs, so nothing on your bill is a surprise.
What arrives on its own
Section titled “What arrives on its own”Two kinds of file, both small, both behind switches that ship on:
- Emoji keyword packs, so emoji search answers in the language you’re typing rather than only in English. 125 languages have one. They’re gzipped JSON, mostly 70 to 100 KB, and the largest in the whole set is 112 KB.
- Word-pair data, the bigrams and trigrams predictions rank with, so the keyboard knows which word tends to follow which. Three languages have a pack today: English (about 1.1 MB), Bangla (about 1.8 MB) and Banglish (about 315 KB). More get added as the data repository grows them.
Both are gated on Download data automatically (WM KeyboardLanguagesLanguage dataDownload data automatically, default on). Emoji packs have a narrower switch of their own on top of that, Download automatically under WM KeyboardEmojiEmoji keywords (also default on), and both have to be on for a pack to arrive by itself.
The check runs from the keyboard rather than the settings app, and it runs off your enabled-language list rather than once at install. Add Tamil today and its pack is fetched the next time you type on the keyboard. Anything already on disk is skipped, and a download that fails is left alone until the keyboard’s process next starts, so a dead connection doesn’t turn into a retry loop.
Word lists are never in this set, whatever the switches say. They’re the big ones, and they stay a deliberate tap.
What waits for you to ask
Section titled “What waits for you to ask”| Download | Where | Rough size |
|---|---|---|
| Word list, per size tier | Languages → (a language) → Dictionary | Printed on the row. That figure is the whole remote file, from a few KB to about 40 MB; a size tier stops the transfer well short of it |
| Download language data? prompt (word list, emoji keywords and word-pair data in one go) | Shown as you add a language | Named on the dialog |
| Download all data | Languages → (a language) → Language data | Named on the button |
| Pinyin table | Languages → Chinese → Chinese options | About 2.5 MB |
| Stroke table | Languages → Chinese → Chinese options | About 450 KB |
| Cangjie table | Languages → Chinese → Chinese options | About 350 KB |
| Jyutping table | Languages → Cantonese → Cantonese options | About 3.4 MB |
| Kana to kanji table | Languages → Japanese → Japanese options | About 42 MB |
Every one of these shows you the size before you commit, and pressing the button is the consent, so there’s no second confirmation once you have. The add-language prompt is the only one with a way out: Download fetches the set, Not now adds the language with nothing, Cancel backs out of the language too. Word-list tiers and how downloaded and imported lists combine are covered on Downloadable dictionaries; the CJK tables and what each one is for are on Chinese, Japanese & Korean.
None of it looks at your connection
Section titled “None of it looks at your connection”Here’s the part worth knowing. No language download checks whether the connection is metered. The automatic emoji and word-pair packs start on whatever is up, the prompts quote a size but never mention Wi-Fi, and the 42 MB Japanese table goes over mobile data exactly as it would over broadband.
For the automatic pair that’s a few hundred kilobytes a language, which is why it’s allowed to be quiet. For the manual ones it’s your call, and if your plan is tight there are three ways to keep it that way:
- Turn Download data automatically off. Nothing is fetched until you ask for it on a language’s own screen.
- Answer Not now to the add-language prompt, then come back to Download all data when you’re on Wi-Fi.
- Leave the CJK tables, the Japanese one above all, for a Wi-Fi moment. Nothing else about a language comes close to it except a word list taken at the Everything tier.
Nothing here downloads in the background when the keyboard isn’t running, and nothing resumes on a schedule: there’s no job queue waiting for a better connection, which is the flip side of there being no metered check. See Network policy for the full accounting of what this keyboard contacts and when.
What does ask
Section titled “What does ask”Three downloads elsewhere in the app do treat a metered connection differently, so the difference is a line drawn at size rather than an oversight:
| Download | When it asks | What you get |
|---|---|---|
| Whisper voice models Full edition only | Metered connection and the model is over 150 MB | A “Use mobile data?” dialog naming the model and its size, with Download anyway and Wait for Wi-Fi |
| On-device AI models Full edition only | Metered connection and the model is over 500 MB | The same dialog |
| Rotating photo backgrounds | Never asks. It’s a setting instead: Use mobile data, off by default, in a theme’s Online photos group | A rotation waits for Wi-Fi rather than prompting |
Models under those thresholds go through without a word: the smallest Whisper model is about 42 MB and the smallest on-device AI model about 143 MB, so both download on mobile data with no dialog. Full detail on those two is on Offline voice (Whisper) and AI writing tools.
Options
Section titled “Options”| Setting | Where | Default |
|---|---|---|
| Download data automatically | Languages → Language data | On |
| Download automatically (emoji keywords) | Emoji → Emoji keywords | On |
| Download all data | Languages → (a language) → Language data | A button (no stored value) |
| Dictionary size tier (per download) | Languages → (a language) → Dictionary | Large (up to 300,000 words) |
| Use mobile data (photo backgrounds) | Appearance → Keyboard themes → (edit a theme) → Board → Rotating background → Online photos | Off |
Details & edge cases
Section titled “Details & edge cases”- “Automatically” means the keyboard, not the app. The automatic pass lives in the keyboard service and runs when your settings change while it’s up. Sitting in the settings app after adding a language doesn’t fetch anything; opening a text field does.
- Nothing downloads before the first unlock. The automatic pass is skipped entirely until the phone has been unlocked once after a restart, because the files it writes live in storage that isn’t readable before then. Type on a still-locked device and the packs simply arrive later.
- A failed automatic download is not retried in that session. The language is remembered as given up on for the life of the keyboard’s process, so a bad connection costs one attempt, not a stream of them. Restarting the keyboard (or the phone) clears the mark.
- Deleting a language’s emoji keywords tells the automatic pass to leave it alone. That’s how deleting the pack sticks instead of it quietly reappearing on your next connection.
- Everything comes from one place. Word lists, emoji keywords, word-pair data and the CJK tables all download from the same public data repository over plain HTTPS. No analytics, no per-download reporting, nothing else contacted.
- Sizes shown are the compressed transfer, not what lands on disk. For word lists they’re also an upper bound: the transfer stops early at words that occur only once in the source, so a finished download is often smaller than the number promised.
