One afternoon I sorted my wallpaper apps' downloads by country in App Store Connect, and Japan's share turned out to be far smaller than I had assumed. I had only ever designed the apps with Japanese and English in mind, yet the installs were quietly stacking up from the United States, Brazil, Indonesia, and Turkey. I have been building apps on my own since 2014, and the lineup has now passed fifty million downloads in total — but that chart made one thing concrete: most of those people don't read Japanese.
So I sat down and reworked my App Store localization properly. Here are my notes on what plain translation failed to do, and where the effort actually paid off.
Why I wanted to fill in every locale
The trigger was less a technical problem than an old memory. At sixteen I taught myself programming and first touched the internet, and I still remember the quiet shock of connecting, as if it were nothing, with strangers on the other side of the world. A mentor I met online at seventeen told me that art is a natural language open to everyone. As someone who has also shown artwork across borders, I already knew in my body how expression can cross the language barrier. If people around the world were already using wallpaper — an expression that needs almost no words — then the least I could do was greet them in their own language at the front door, which is the App Store page.
App Store Connect supports nearly forty locales. Filling all of them perfectly isn't realistic for one person, so I ranked them by downloads and impressions and worked from the top down.
Splitting the work: not everything deserves the same effort
The first thing I did was separate the localization targets by their nature. An App Store page mixes parts that are fine to translate mechanically with parts that backfire unless they are genuinely localized.
I sorted them like this. The app name and subtitle live or die on being short and memorable, so they get rewritten as natural copy in each language rather than translated. The description only needs to convey meaning accurately, so a careful translation is enough. The keyword field is not a translation task at all — it requires researching how people actually search in that language. And the text baked into screenshots needs to be rebuilt, image and all, in the local language.
Skip this triage and run one bulk translation over everything, and your effort spreads thin and nothing lands well. Think of the split as the groundwork that lets you concentrate time where it returns the most.
Pitfall 1: the keyword field needs more than translation
The first corner I cut — and regretted — was the keyword field. I had simply translated my Japanese keywords into each language, and impressions barely moved.
The reason is simple: the words people actually type rarely match the dictionary translation. Where a Japanese user types the equivalent of "kabegami," English speakers reach for "wallpaper" but also "backgrounds" and "lock screen." In some regions, themes that are popular locally — particular colors, nature, non-religious festive motifs — feed straight into search terms.
So I rebuilt the keywords locale by locale, checking App Store search suggestions and the real phrasing of each language one at a time. It's unglamorous work, but the difference between merely translated keywords and keywords tuned to local search behavior showed up clearly in impressions. This is less localization than a small, per-locale piece of ASO.
Pitfall 2: leaving screenshot copy untranslated loses people at the door
The other change that mattered was localizing the captions baked into the screenshots. Most people decide to install based on the app name and the first few screenshots alone. If those stay in Japanese or English, it doesn't matter how well you translate the body text — the all-important first impression never arrives in the viewer's language.
That said, rebuilding screenshots for every locale is a real burden for a solo developer. I settled on keeping the underlying images shared while organizing the source files so that only the text layer can be swapped out. With that in place, adding a new locale is mostly a matter of pouring in the strings. My earliest apps, which I hadn't structured this way, were painful to retrofit later — so if you're planning to go multilingual, I strongly recommend keeping your assets with text and image already separated.
What the numbers showed
Not every locale grew neatly. The clear wins came from locales that already had impressions but weren't converting to installs. Those were countries being seen but not greeted in their own language, so localization paid off straightforwardly.
Conversely, locales with little traffic to begin with didn't move much no matter how carefully I built the page. Obvious in hindsight: if nobody is arriving at the door, polishing the door has limited effect. That experience reshaped how I think about localization — not as something to spread evenly in all directions, but as something to prioritize where people are already arriving and being missed.
What I'm working on next
The next thing I want to try is custom product pages per locale. Keyword research made it clear that different regions respond to different motifs, so for the major locales I'd like to prepare pages that lead with a different theme entirely and test them alongside their traffic sources.
There's a ceiling to how much localization a solo developer can do, but precisely because wallpaper needs almost no words, getting just the few words at the entrance right in someone's mother tongue genuinely changed how the apps reached people. I want to keep quietly increasing the number of places where someone, somewhere, can find my apps in their own language.
I hope these notes help anyone else taking on multilingual rollout on their own.