A plugin for Figma that translates, composes, and uploads your screenshot sets to App Store Connect and Google Play. Powered by AI translation with brand glossaries.


To capture, compose, translate, review, and upload. Without errors. Then again next release.
8 hours to grab 13 locales on a real device. By the time you're done, marketing wants new copy.
Drive becomes a maze of Locale / Device / Version folders nobody trusts.
Re-typing translations, fixing line breaks, one screen at a time. Twenty times.
Alpha channel issues, sizing problems, half a day wasted dragging PNGs into the wrong slot.
Set up your screenshot structure once, then update copy, assets, and screen order across all locales without rebuilding frames one by one.

Draft every locale at once, then review before you ship — fast enough for ASO tests, release updates, and last-minute copy changes.

Tell AI what to keep, translate, or reuse — from product names to market-specific phrasing.
Use Import Manager to organize raw screenshots by locale and device, then place them into layouts without clicking through every frame manually.

Prefer the old-school way? Asorium supports CSV export and import.

Push finished screenshot sets to App Store Connect and Google Play Console — without exporting folders, renaming files, or dragging PNGs into store dashboards.
Stop being the bottleneck. Mark the layout once, let the team refresh translations and re-upload screenshots without you in the loop.
Stop waiting on screenshot production. When the data is ready, update your next ASO variant and ship localized screenshots in hours.
Localize to dozens of languages without hiring a localizer. AI translation + Figma + store upload — one tool, one Saturday afternoon.
| Metric | Without | With Asorium |
|---|---|---|
| Screenshot update cycle | 2–5 days of manual work | 4–8 hours, mostly screenshot capture |
| ASO iteration speed | Blocked by screenshot production | Only limited by how fast data is collected |
| Localization mistakes | Easy to miss across locales | Easier to catch and prevent |
| Team bottlenecks | Designer, ASO and translators wait on each other | Review, approve, ship |
Based on a typical project with 10–20 screenshots, 10+ locales, and 2 store platforms.
We're starting with the core screenshot workflow: Figma, App Store Connect, and Google Play Console. If your team needs Asorium to plug into translation tools, CI/CD, or internal systems, send us a request.
Yes. Installing is free and no card is needed. On your first sign-in the account gets a welcome bonus: credits for AI translation, a screenshot upload to App Store Connect, and a CSV translation import.
These need no subscription at all: marking up frames and creating locales, the Import Manager, and CSV export for outside translators.
Credits are the unit AI translation is billed in. What a run costs depends on several things at once — among them the length of your strings, how many of them go out in one run, the target language, your rules and glossary, the Effort level, and whether the text is adapted to fit its box.
On our measured runs — a real job of 8 strings into 10 locales — one translation, meaning one string into one locale, came out at about 1.2 credits at Regular effort, 2.4 at High and 4 at Extra. Take those as a reference point rather than a price list: your own jobs will land differently, and the figures shift as we keep tuning the translation.
Translate a whole set in one run rather than string by string: the same volume costs noticeably more one string at a time.
Plan credits refresh every month and do not carry over — on a yearly plan as well: paying for a year buys the same monthly allowance, not twelve months of credits up front.
Top-up packs are a separate pool: they carry over and do not expire — credits you paid for stay yours for as long as your account exists. Welcome bonus credits are different: nobody paid for them, so they are valid for 365 days.
There are three ways forward. Move up to a bigger plan if the limit runs short regularly. Buy a top-up pack — available with an active subscription. Or, if your team needs higher limits permanently, we'll work out custom terms — write to us.
Nothing already translated is lost: once you top up, re-run the translation for the strings that are left.
For now a subscription is personal. That doesn't stop you from splitting the work across the team.
A designer can prepare and mark up the frames on the free version — everything needed for that works without a subscription. The Import Manager, which places finished screenshots into those frames, is free as well.
AI translation in the plugin reaches native-level copy that keeps your tone and style: you write your own instructions, keep a glossary of terms, adapt the text to each market, and edit individual strings by hand.
Turn on “Adapt length to text box” in the translation bar — every locale gets its own length budget, and anything that overflows goes back for another pass. Next to it is Attempts: from 1 to 3, three by default.
Three things are worth knowing.
More attempts mean a tighter fit, but each attempt is a full translation and spends credits. One or two usually do it; sometimes all three are needed.
A box that is too tight works against you: in some locales it costs you both copy quality and extra attempts. Leave some slack, or use auto layout.
Meaning comes first: if a line cannot be shortened without losing it, the translation stays longer than the box. The trade-offs are a smaller font size or a shorter source string.
75 built-in locales — the App Store and Google Play lists combined. You can also add your own code in BCP 47 form, de-AT for example.
One caveat: only locales the store itself lists can be published. A locale the store does not accept is skipped during upload and named in the run report — as a working language inside your file it still does its job.
Between them, those two lists are meant to cover everything the stores accept. If the one you need is missing from the picker, adding it is a small change on our side — write to us.
The plugin covers every device class the stores have a storefront for. On the App Store that is iPhone, iPad, Apple Watch, Apple TV, Apple Vision Pro and Mac. On Google Play — Android phone, 7" and 10" tablets, Wear OS, Android TV, Chromebook and Android XR.
For Android you can take a ready-made preset or set your own size: Play accepts a range, and the plugin checks the frame before it is sent. Apple accepts exact sizes only, so a frame of the wrong size is refused by the plugin up front rather than by the store after the upload.
Chromebook and Android XR are uploaded to the console by hand — Google has no API for them. Everything else works as usual there: markup, translation, export. The plugin says so up front, not at upload time.
Missing a size we have not covered? Let us know.
The minimum it takes to upload screenshots and create listing locales. In App Store Connect that is an API key with the Marketing role or above; in Google Play, a service account with “Manage store presence” and “Edit and delete draft apps”.
The key is stored encrypted and can be removed from the plugin in one click. You can also revoke access on your side, in the store console.
We never publish and never send anything for review ourselves. What an upload leaves behind differs between the two stores, though, and Google needs one step from you.
App Store Connect: the screenshots attach to the version you are preparing. Nothing reaches users until you submit that version.
Google Play: we send the changes as a draft, but what happens next is up to Google — for some apps it reviews and publishes them on its own. The run tells you which way it went.
To rule that out, turn on Managed publishing in Play Console — then nothing goes live until you press Publish: Google's guide.
You pick the mode: replace clears the set in the selected bucket and uploads yours, append adds to what is already there. Replace is the default, and the mode can be overridden for an individual locale.
Only the strings you send for translation go out, together with your rules and glossary. The layout, the images, the rest of the file and your account details are not transmitted.
The current translation provider and the full list of sub-processors are in the Privacy Policy.
Translation job strings — 24 hours after the job finishes, then deleted. Exported PNGs — 6 to 24 hours depending on the plan.
Where all of it is hosted, and who processes what, is set out in the Privacy Policy. You can delete your account and everything in it yourself — immediately and irreversibly.
Install the plugin for free — no card, just Figma.