App screenshots before you have a single user
A new app always starts with an empty database. Here is how to show it populated without staging a fake product.
Last updated: 28 September 2026
You have three ways to get a populated screen: fill a real account and capture it, redraw the screen in a design tool, or render a mockup from a template. Capturing a seeded account is closest to the truth and takes longest; rendering is quickest and has to carry an honest label. What you should not do is upload the empty state.
What an empty screen tells a visitor
A listing gets a couple of seconds to show what the product looks like in use. A blank list says only “nothing yet”. Visitors and reviewers go to the first image before any caption, and a bare screen suggests a product that is not finished, whatever the words say.
Step one: write the fixture
The fixture is a short list of invented values that every screen pulls from. One page of notes is enough, and it stays canonical: any name, figure or date that shows up on two screens is copied from that page both times.
| Field | Rule | Reason |
|---|---|---|
| Names | Believable, not famous, not a real client | A genuine person in a store listing is a problem you can avoid |
| Amounts | Irregular, mid-sized | A balance of exactly 10,000.00 looks like filler |
| Dates | Counted from a single fixed "today" | Absolute dates age; the listing outlasts the shoot |
| Counts | Modest, in line with a new product | "14,203 members" on a launch listing raises the obvious question |
| Avatars | Generated or licensed | Scraped faces raise both licence and privacy issues |
| Locale | One per screenshot set | Currency symbols that vary within a set look like a defect |
Making invented numbers pass
- Avoid round figures. A round number is the plainest sign that no one thought about the screen.
- Let the sums add up. If a list has three entries, they must total the figure in the header. Few readers check; the one who does is often the reader you wanted to win.
- Stay clear of numbers that sound like claims. A return, a yield, a growth rate: if it would be a factual statement when true, it belongs in a sourced chart rather than a mockup.
The three routes, compared
Route 1: seed a real account
Create the account, enter the fixture through the app, photograph the device screen. Nothing matches it for fidelity: real type, real rendering, real edge cases.
- Price: every flow you show has to work. A half-finished feature cannot be captured.
- Snag: live data drifts. After a design change you must rebuild the identical state to re-shoot six screens, which is harder than it sounds without a script that creates the fixture.
- Choose it when: the app is done and the same images will serve for months.
Route 2: redraw the screen in a design tool
Work in Figma or Sketch at the target pixel size and export directly.
- Price: the comp and the build part ways. Half a year on, the store shows an interface the app has dropped.
- Snag: design tools set type a little differently from a phone. A tight layout that fits in the tool can overflow on the device, and then the picture no longer matches what a user gets.
- Choose it when: you are presenting a direction, not documenting a product that has shipped.
- The longer comparison is in a Figma mockup versus a real screenshot.
Route 3: render a mockup from a template
A tool draws the screen from the values you give it, at native resolution.
- Price: you can only produce what the template covers.
- Gain: editing a figure is one keystroke, so eight locale variants take minutes instead of a whole afternoon.
- Choose it when: the screen follows a familiar pattern (portfolio, feed, dashboard) and the deadline is close. For a crypto wallet app, see what a rendered wallet screen can and cannot stand in for.
What a visitor sees before reading anything
A search result is not a product page. People get an icon, a shortened name, a subtitle and the first screenshots. How many images show depends on the phone's width, so count on two being seen and the third maybe. The description lies below a fold most people never cross and is read by a smaller group that is already interested.
Each field has a ceiling, and the ceilings decide what you can say. The figures were checked on Apple’s and Google’s help pages on 1 November 2026:
| Field | App Store | Google Play |
|---|---|---|
| App name | 30 characters | 30 characters |
| Subtitle / short description | 30 characters | 80 characters |
| Promotional text | 170 characters | none |
| Description | 4,000 characters | 4,000 characters |
| Keywords | 100 bytes | none |
| Screenshots | 1 to 10 per display class | up to 8 per device type |
| Feature graphic | none | 1024 × 500 px |
Promotional text on the App Store can be edited without a new submission, so anything tied to a date goes there. Google allows 80 characters in the short description against Apple's 30, which means your one-line positioning has to be written twice, at two lengths.
Make the first screenshot count
It is the only asset that actually shows the product, it appears in search results, and it is judged in the time of a thumb flick. Good ones carry a single idea, not a tour; use a caption that works alone; and show a populated screen. Weak ones use a device frame you drew yourself (Apple supplies its own), five takes on the same list, or award badges ahead of the product. Apple's review guideline 2.3.3 says screenshots should show the app being used, not just title art, a login page or a splash screen. For pixel sizes and the alpha-channel rejection, see the screenshot sizes guide.
Captions that still read as thumbnails
A caption laid out on a desktop at full size is seen on a phone at a fraction of it. Find the fraction once: capture the App Store on the target phone, measure one thumbnail in your capture, and divide your export width by it. A 1290 px export that appears 150 px wide has a factor near 8.6, so a 48 px caption is read at about 5.6 px, which is as good as missing.
Work in shares of the image width, since those survive a change of export size. Treat these as a starting point and confirm with the measurement above:
| Element | Share of width | At 1290 px |
|---|---|---|
| Caption headline | 6 to 9 % | about 80 to 115 px |
| Supporting line | 4 to 5 % | about 50 to 65 px |
| Below 4 % | treat as decoration |
Aim for words rather than sentences: three to five, on one line. Keep size, position and band height identical from frame to frame; a caption that wanders looks unfinished even if every single image is polished.
Consistency across the set
Visitors scan the row of images as a sequence, so a mismatch between frames registers even if nobody names it. Run this pass over the full set rather than image by image:
| Check | How it fails |
|---|---|
| Clock | 9:41 in one frame, 14:32 in the next |
| Identity | The account name differs between screens |
| Status bar | Battery at 100% on one screen, 43% and red on another |
| Totals | A header figure that contradicts the frame before |
| Theme | A lone dark screen in a light set, by accident |
| Language | A string left untranslated in a localised set |
About the clock: Apple's own marketing has long shown 9:41, which is why it looks neutral and not chosen. Any constant time will do. What fails is a time that changes between frames.
Where listings get into trouble
Each store reads the listing as a statement about the product. Apple's guideline 2.3.1 lists marketing for content or services the app does not really provide as a reason for removal. In practice: screenshots of missing features, invented ratings, made-up press quotes, and demo figures dressed up as real user results.
The line, whichever route you take
Invented figures are acceptable in an App Store listing, a deck or a landing page. Everyone knows a demo account is a demo account, and Apple's marketing works the same way. The setting supplies the meaning.
The identical image becomes a problem once it is offered as a record of something real: a balance shown to obtain money, an investment or someone's trust. There is no grey zone, so decide which side you are on before the asset exists.
A useful habit: leave a visible marker on any render that may travel. Where the context is clear you simply remove it for the store listing, and if the image turns up somewhere you never sent it, the marker spares you an awkward conversation.
Dimensions, for any route
Produce at the biggest device size and let the store shrink the image. The accepted pixel sizes are in App Store screenshot sizes, and the status bar dimensions help when you draw the chrome yourself.
Questions
How can I make App Store screenshots when the app has no users yet?
Start by writing one small invented dataset, with identical names, amounts and dates on every screen. Then pick a route: fill a real account with it and capture the device, redraw the screen in a design tool, or render a mockup from a template.
What size should the caption text have?
Plan for the size at which the image is displayed, not the size you export. Measure one thumbnail on a real phone, divide your export width by it, and scale the caption by the result. Under roughly 4 % of the image width, a caption is only decoration.
Which parts of a listing influence installs?
What is visible before a visitor decides to scroll: the icon, the name, the subtitle and the first screenshots. The long description is mostly read by people who have already leaned toward installing.
Which of the three routes is best?
Capturing a seeded account is the most faithful and the slowest. Rendering is the fastest and must be labelled honestly. You are trading fidelity against time; none of the three is the honest or dishonest one.