AppShotSet

App screenshot guide

How to Take Clean App Store Screenshots

Create a repeatable source-capture session before adding marketing captions, backgrounds, or device presentation.

Last verified against official Apple and Google documentation: August 23, 2026 · By AppShotSet editorial team
Quick answer

Use Simulator or Android Emulator for repeatable states and physical devices when hardware-dependent behavior matters. Before capture, load safe test data, set the correct locale and theme, remove notifications and debug overlays, then save full-resolution PNG sources. Keep every raw capture unchanged and create store artwork from copies.

Plan the capture session before opening the app

List the exact state needed for each marketing frame. This prevents a capture folder full of nearly identical images with no agreed purpose.

Example capture manifest for a habit tracker
IDStateTest dataVariants
01-todayThree tasks, one completedDrink water; Walk; ReadLight/dark, en/de
02-streakFour-week historyGenerated non-personal datesLight, en/de
03-reminderReminder editor08:30 weekday scheduleLight/dark, en/de

Record platform, app build, device profile, OS version, locale, theme, account fixture, and capture date beside the manifest. These details make later recapture possible.

Capture from Xcode Simulator

Launch the required Simulator device, install the release-representative build, navigate to the planned state, and capture the device screen rather than the scaled desktop window.

  1. Choose the target simulator and run the app.
  2. Apply the planned language, region, appearance, and fixture account.
  3. Navigate to the state and wait for transient loading indicators to settle.
  4. Use Simulator’s screenshot command, or save a command-line capture with xcrun simctl io booted screenshot source.png.
  5. Open the PNG at 100% and check every edge.

Capture from a physical iPhone

Use a physical device when the screen depends on camera input, sensors, accessories, system integration, or another behavior you cannot represent faithfully in Simulator. Apple’s current support instructions use side button + volume up for Face ID models, or side/top button + Home for supported Touch ID models.

  1. Enable the target appearance, language, text size, and permissions.
  2. Load a dedicated demo account or safe local fixture.
  3. Clear notifications and close unrelated overlays.
  4. Capture the exact app state using the device button combination.
  5. Transfer the original file without sending it through a service that recompresses images.

Capture from Android Emulator

Android Studio provides a Take Screenshot action in the emulator toolbar. Google’s documentation says the capture dialog lets you recapture, edit, copy, and save the PNG.

  1. Run the correct Android Virtual Device and app build.
  2. Set the target locale, theme, font scale, and navigation mode.
  3. Load the fixture and navigate to the capture state.
  4. Select Take Screenshot from the emulator toolbar.
  5. Save the source PNG using the manifest ID.

Use a profile that represents the UI you want to show, but treat the saved emulator frame as a source capture. Your final Google Play asset must still meet Google’s current preview-asset requirements.

Capture Android screens with ADB

ADB is useful for scripted or repeated capture sessions. Google documents screencap as the device shell utility and provides this direct PNG command:

adb exec-out screencap -p > 01-today-android.png

Confirm which connected device or emulator receives the command before running a batch. For more than one target, select it explicitly with the appropriate ADB device option and keep the resulting platform/device ID in your manifest.

Make status bars and overlays intentional

A status bar can make a screen feel authentic, but inconsistent time, network, battery, or privacy indicators create noise across a set. Do not paint over UI indiscriminately after capture; prepare the device state and recapture whenever practical.

Clean-capture overlay review
AreaLook forAction
Status barInconsistent time, VPN, hotspot, recording, location indicatorsSet a controlled state or document why the indicator is required
NotificationsNames, message previews, calendar detailsUse Focus/Do Not Disturb and a demo account
Development UIFPS meters, debug banners, layout bounds, touch dotsDisable development overlays in the capture build
System promptsPermission dialogs unrelated to the frame’s messagePreconfigure permissions or make the prompt the intentional subject

Use safe, coherent test data

Marketing data should tell a believable story without identifying a real customer, employee, patient, or contact. Generate fixtures and keep them stable so consecutive screens look like the same account.

Original safe-data substitutions
Sensitive sourceSafer fixtureConsistency rule
Real bank account and transactionsFictional accounts with obviously synthetic namesTotals reconcile across dashboard and detail screens
Customer address on a mapPublic landmark or invented service areaMap, delivery card, and caption describe the same place
Team chatInvented names and project conversationAvatars and roles remain stable throughout the set
Health historyGenerated measurements with no patient identifierUnits and trends remain clinically plausible without implying advice

Do not use copied production records with names blurred out; hidden metadata, reflections of the original data, or missed screens can still expose information.

Capture light, dark, and localized UI deliberately

Decide which appearance supports the product story rather than switching theme frame by frame. When the app supports localized interfaces, capture the actual locale instead of translating only the marketing caption.

  • Set application language and region, then restart if the app requires it.
  • Check date, currency, number, measurement, and plural formatting.
  • Test longer labels and dynamic type for clipping.
  • For right-to-left languages, inspect navigation, icons, charts, and reading order.
  • Keep theme consistent unless the frame specifically demonstrates appearance choices.

Preserve the raw resolution and file history

Save the unedited capture first. Compose and resize a copy for the target store; never overwrite the source with a flattened marketing file.

  • Keep lossless PNG sources where the capture tool produces them.
  • Use deterministic names: order, state, platform, locale, theme.
  • Record the app build and capture environment.
  • Avoid messaging apps or document tools that may resize the image.
  • Inspect width and height before importing.
  • Validate the final export separately from the raw source.

Clean source screenshot checklist

  • The source corresponds to a named storyboard frame.
  • Build, platform, device profile, locale, and theme are recorded.
  • The app state has finished loading.
  • No personal, production, or confidential information is visible.
  • Notifications, keyboards, prompts, and debug overlays are intentional.
  • Test data remains coherent across the full set.
  • The file is the original full-resolution capture.
  • The raw source is archived separately from store artwork.

Official sources

Specifications can change. We review these pages monthly and update the visible verification date only after checking the source material.