◉RORK LABJP
●GPT-6.1 SOL — Added to Rork's model menu (09-29) with Low, Medium and High effort; included on Pro and Max●SONNET 5.5 — Claude Sonnet 5.5 is selectable: strong at UI design and faster than Sonnet 5 (09-28)●SONNET 4.5 — Retires on the Claude API on 11/30, 27 days left. If your app calls it, check the migration target●SDK 58 — Moves to React Native 0.88. R8 is now on by default in Android release builds, and iOS prebuild generates a SceneDelegate●OBSERVE — EAS Observe now records native crashes too (SDK 57.0.21 or later, 10/07)●NEW — My App Open Ad Only Showed When the App…●GPT-6.1 SOL — Added to Rork's model menu (09-29) with Low, Medium and High effort; included on Pro and Max●SONNET 5.5 — Claude Sonnet 5.5 is selectable: strong at UI design and faster than Sonnet 5 (09-28)●SONNET 4.5 — Retires on the Claude API on 11/30, 27 days left. If your app calls it, check the migration target●SDK 58 — Moves to React Native 0.88. R8 is now on by default in Android release builds, and iOS prebuild generates a SceneDelegate●OBSERVE — EAS Observe now records native crashes too (SDK 57.0.21 or later, 10/07)●NEW — My App Open Ad Only Showed When the App…
Articles/App Dev
◇ App Dev/2026-03-22Beginner

Creating App Store Screenshots with Figma

A Figma workflow for App Store and Google Play screenshots, rebuilt around the current official specs (checked October 2026): which sizes to make, how to leave room for long translations, and how to export and re-check before submitting.

Figma8screenshots3App Store93Google Play44ASO27store designapp development39

I was about to redo our store screenshots when I opened my old size notes. They said "6.7-inch, 1290 × 2796." App Store Connect, however, was asking for something else. The note was months old.

Here is what I'd like to say first: a screenshot size table starts going stale the moment you copy it down. The earlier version of this guide was exactly that. This time I re-read the official pages as of October 2026, replaced the numbers, and rebuilt the Figma setup so it's easy to fix when the specs move again.

Check the specs on the official page before you design

I keep a handful of wallpaper apps in the stores, so I swap screenshots a few times a year. The size is the one thing I always verify first. I've been burned by building a whole set from an old note and having it rejected at upload—my stomach still drops a little at the memory.

What App Store Connect accepts

According to the App Store Connect screenshot specifications, the main rules today are:

DeviceRequired?Accepted sizes (px)
iPhone with Dynamic Island (medium display)At least one1179 × 2556 or 1206 × 2622 (portrait); swap the sides for landscape
iPad 13-inch displayIf the app supports iPadOS2064 × 2752 or 2048 × 2732 (portrait); swap the sides for landscape

Three more points matter:

  • You can upload up to 10 screenshots per device size.
  • Files must be JPEG, JPG or PNG, with no alpha channel or transparency.
  • If your UI is the same across devices and localizations, the highest required resolution is enough; App Store Connect scales it down for smaller devices.

My earlier advice to prepare 6.5-inch and 5.5-inch sets "for coverage" is the wrong default now. Make one set at the largest size, and add device-specific sets only where the layout really differs.

What Google Play accepts

The Play Console Help page is looser than Apple's:

ItemRequirement
CountAt least 2 across device types to publish; up to 8 per device type
FormatJPEG, or 24-bit PNG without alpha
Dimensions320–3840 px per side; the long side at most twice the short side
Tablets and ChromebooksAt least 4; 1080–7680 px per side, 9:16 or 16:9
For promotion eligibilityAt least 4 for apps, 1080 px minimum per side, 9:16 or 16:9

The old "8 MB per file" figure does not appear on the page I checked for phone screenshots. Rather than hard-coding a number the docs don't state, I rely on the console's upload warnings.

Build the template in Figma

With the numbers settled, the plan is simple: one master frame, and every export derived from it.

Frames and pages

Create the App Store master at one of the accepted sizes—say 1206 × 2622—rather than the old 1290 × 2796. Make the Google Play version a separate frame at 1080 × 1920 with the same design.

Split pages like this so adding a language never gets confusing:

  • Template: master frames and components
  • ja / en / …: one page per language
  • Export: frames used only for output, named with size and language code

I name frames like appstore_1206x2622_en_01—store, size, language, sequence—so a batch export already tells me the upload order.

Treat device frames as decoration

Plugins that generate device frames exist in plenty, but the numbers shift as new models appear. Always compare the plugin's screen area with your own frame. If you see a thin gap above or below your pasted screen, a size mix-up is the quickest explanation.

Paste in real captures from a device or simulator. If your app was built with Rork, the exported PNG works just the same. Just don't upload transparent PNGs: App Store rejects alpha channels, so include a background colour when you export.

Design text from the longest language

I put the headline in the top 20–30% of the frame. On a ~1200 px wide frame I start around 56–72 px for headlines and 32–40 px for supporting text, then check legibility on a real phone.

The real problem is length. English often runs 1.2–1.3× Japanese, and German can exceed 1.5×. Early on I polished a Japanese layout, dropped in the English, watched it spill to four lines, and rebuilt everything. Now I paste the longest translation into the master first and design for that width.

Wrap text in Auto Layout so the background grows with extra lines. It cuts the post-translation adjustments dramatically.

Rolling out languages

My order of work:

  1. Finish the master in Japanese: colours, spacing, components.
  2. Test the longest language (often German or Russian) for overflow before anything else.
  3. Duplicate the page and replace text layers only.
  4. Export and upload per language in App Store Connect and Play Console.

I only swap text—never position or size. If I feel the urge to nudge something, I fix the master instead; otherwise slightly different designs multiply per language.

For going wider, see one capture scaled down for a multilingual App Store pipeline and localizing Google Play screenshots into 16 languages. If you're still choosing a tool, the Figma, Stitch and Canva comparison is a decent starting draft.

Export and pre-submission check

Select the frames on the Export page and export as PNG at 1x. The frame dimensions are already the store's required sizes; 2x produces off-spec files that get rejected.

Before submitting, confirm four things:

  • The dimensions match one of the sizes in the tables above.
  • No transparency remains (App Store forbids alpha).
  • The count is within limits and the first image carries your strongest feature.
  • Text in every language still reads when scaled down to phone size.

Do the last check on a real device, in the actual store listing. Text that looked fine on my monitor has turned to mush in small search cards more than once.

Wrapping up

Check the numbers on the official page, build one master frame, derive everything from it—those three habits cut the work on the day a spec changes.

Never copy the numbers down; re-read them every time. Fix the design in one place only. I intend to keep that line.

Your next step: compare the sizes you're using today with the current official pages. If anything is off, start by correcting the master frame.

Share

Thank You for Reading

Rork Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • ✦Copy-paste ready implementation code
  • ✦New advanced guides published daily
  • ✦$5/mo or $10 for lifetime access
View Membership →

If you found this article helpful, a small tip ($1.50) would mean a lot to us. Your support helps keep this site ad-free and covers server and hosting costs.

Related Articles

◇ App Dev2026-10-26
Your 5% Rollout Says 99.76% Crash-Free. How Many Users Until You Can Trust It?
At 5% rollout, a crash-free rate rests on few users and the interval is wide. A Wilson-interval script that says proceed, wait or halt, plus simulated numbers on how often you halt a good release.
◇ App Dev2026-09-09
Those 14 Days of Closed Testing Are for Gathering What the Production Form Asks
Google Play production access starts from a closed test with 12 testers opted in continuously for 14 days. Here is how the count actually works, the order the tracks open in, what the application form asks, and the records worth keeping during those two weeks.
◇ App Dev2026-09-07
Sending user text to an external AI: what actually goes in Play's Data safety form
Classifying user input sent to an external AI as collected, shared, or ephemeral in Play's Data safety form, plus a redaction ordering bug found by running the code.