Black Friday30% off your first month. See prices →
VibeView

App Store

Make App Store screenshots without a Mac

Aurimas Mickys — Founder, VibeViewPublished 2026-10-16Updated 2026-10-17

App Store Connect requires an iPhone with Dynamic Island (medium display) set, such as the iPhone 17 Pro, for every iPhone app, plus a large-display iPhone set (the iPhone 17 Pro Max, or older Face ID screenshots), and a 13-inch iPad set when the app runs on iPad. Without a Mac, that usually means borrowing someone’s phone, fighting a status bar that shows 3% battery and a carrier name, or paying for a mockup tool that guesses at the pixels.

VibeView runs those exact devices as live simulators in your browser. The app is your real build, the status bar is the one Apple uses in its own marketing, and the Screenshot button and vibeview screenshot both save the device’s own pixels, not a copy of the video stream.

What you need

  • A VibeView account. The free plan works, but its sessions are a few minutes each, so plan one device per session.
  • A simulator build of your app that runs on its own: a release build, or a debug build with its JavaScript bundled in for React Native. Upload one, or build it in the cloud with vibeview build --cloud. Flutter, React Native, Capacitor and native apps all work.

Take the screenshots

  1. Open the app on the right device. On the Devices page, start an iPhone 17 Pro with your app. From the CLI:

    vibeview dev --platform ios --app <app_id> --standalone --detach --model "iPhone 17 Pro"

    --standalone runs the build as it is, without a dev server, and --detach gives you the terminal back while the session runs. It prints a link to the device in your browser.

  2. Clean up the status bar. In the Device tab of the tools panel, turn on Clean status bar. It shows 9:41, a full battery and full Wi-Fi and cellular signal, the same status bar Apple uses in its screenshots, and it stays on while you move around the app. Appearance switches the device between light and dark, if you want both sets.

  3. Go to each screen and save it. Tap through the app in your browser, and at each screen click Screenshot next to the device (or press S). It saves a PNG of the device’s own pixels at full resolution, named after the app, the device and the time. From the terminal, the same picture is:

    vibeview screenshot --out home.png

    which uses the session you just started (pass --session <id> for one you opened on the Devices page; the id is in its URL). If the confirmation after a click says the screenshot came from the video, the device didn’t answer in time and the picture can be smaller than the screen: take that one again.

  4. Repeat on the other devices. Stop the session with vibeview dev-stop, then start an iPhone 17 Pro Max the same way (--model "iPhone 17 Pro Max") for the large-display set, and an iPad Pro 13-inch (--model "iPad Pro 13-inch") if your app runs on iPad. vibeview list-devices --models lists every model you can pick.

  5. Upload them in App Store Connect. Drag the PNGs into the screenshot slots of your app version. VibeView uploads your binary with vibeview submit; screenshots, like the rest of the listing, stay in App Store Connect.

The sizes you get

DeviceScreenshot sizeApp Store Connect display size
iPhone 17 Pro1206×2622 (portrait)iPhone with Dynamic Island (medium display), required
iPad Pro 13-inch2064×2752 (portrait)13-inch iPad, required if your app runs on iPad
iPhone 17 Pro Max1320×2868 (portrait)iPhone with Dynamic Island (large display), required unless you upload older Face ID large-display screenshots

Apple’s rule: if your interface is the same across sizes, you only need the highest required resolution for each, and App Store Connect scales it down for smaller devices.

Let your coding agent take them

If you use Claude Code, Codex or Cursor with VibeView, an agent can walk through your app and take the screenshots for you: it turns on the clean status bar with vibeview set-status-bar clean, taps from screen to screen on the cloud device, and saves each one with the same screenshot command. See Coding agents to connect one.

Screenshots show whatever is on the screen, so sign in with a demo account and fill the app with good sample data before you start. A recorded test can do that setup for you on every device, and then the screens are the same each time you retake them.

Frequently asked questions

Are these the real App Store sizes? Yes. A screenshot on a cloud iPhone 17 Pro is 1206×2622 pixels and on an iPad Pro 13-inch 2064×2752, and an iPhone 17 Pro Max gives 1320×2868: sizes App Store Connect lists for its required medium and large Dynamic Island iPhone sets and its 13-inch iPad set. They are the device’s own pixels.

Does the clean status bar look like Apple’s? It’s the same override Apple’s own simulator tools use for marketing screenshots: 9:41, a full battery, and full Wi-Fi and cellular signal. It’s available on iOS phones and tablets.

Can I use a release build? Yes, as long as it’s a simulator build. A signed .ipa is for physical devices and can’t run on a simulator, so screenshot the simulator build of the same version.

Do I need a paid plan? No, but free sessions are short, so a full set across iPhone and iPad goes faster on a paid plan: the Solo plan has no session length limit and more streaming minutes for retakes.

Next steps

Try it yourself

Open a live iOS simulator, Android emulator, Apple TV, Android TV or Roku in your browser.

Start free