app-preview-video
Storyboard an app Product's App Store preview video — the 15–30 s autoplay clip in search and on the product page — with shots, timing and captions, and decide whether the Product needs one.
Written by Kwern, after the skill of the same name in Eronred's aso-skills, MIT. Updated 2026-10-03.
The file, as Kwern runs it
Nothing below is rewritten or cut. The description a model routes on comes first, then the file itself. The whole thing, frontmatter included, is at /skills/app-preview-video.md.
description
Storyboard an app Product's App Store preview video — the 15–30 s autoplay clip in search and on the product page — with shots, timing and captions, and decide whether the Product needs one. Use for "app preview", "preview video", "video script", "video storyboard", "should I add a video". For static screenshots use screenshot-optimization.
A preview autoplays muted in search results and takes the first slot on the product page; a good one lifts conversion 5–25%, a weak one costs the first-slot screenshot. Output is one listing Proposal per preview, a storyboard (shots, timing, caption copy, poster frame) the User or a producer records from in-app footage, uploads in App Store Connect and marks done the day it goes live, plus a brief with the decision and the production notes. Judge the current previews and screenshots from their pictures with view_image.
Gather
read_context— the core outcome, ICP, voice, the feature that demonstrates best.connector_asc_screenshotswhen the ASC Connector exists — the Product's preview sets per localization and preview type, and its screenshot sets, whose orientation the preview shares. Look at each preview'sposterUrland the first screenshots withview_image. Without the Connector,fetch_urlon iTunes Lookup (https://itunes.apple.com/lookup?id=<App Store id>&country=<storefront>) gives the publicscreenshotUrlsand no previews: say that whether the Product carries one is unknown. No read returns a competitor's previews.connector_asc_analyticswhen the ASC Connector exists — page conversion per source, read aspageDownloads÷pageViews, 30 days plus trend: the baseline. Without it, say it is unknown and name it as the first number to read once the preview is live.app_store_reviews— the outcome users praise in their own words; it becomes the hook caption.
Decide, then storyboard
A preview earns its slot when the value shows in motion: games, apps with a distinctive interaction, apps that need a demonstration to be believed. A simple utility, or an app whose value sits in content instead of UI, keeps the first slot for a screenshot — say so and stop at the decision.
The beat timings, the three-variant strategy and the rejection reasons are in references/storyboard-beats.md — read it before writing the storyboard. Format, resolution, count and the pre-submission checklist are in references/spec-sheet.md — read it when writing the production notes.
Five beats fill 30 seconds: hook (the outcome in the first two seconds), problem (one caption states the pain), demo (the real screen recording, sped up when needed), proof (quick cuts of breadth, ratings, results as in-app screens), resolution (the outcome state as the last frame). Every frame is in-app footage; captions carry the message because most viewers never hear the audio; the poster frame is a still the store shows before play and in the search card, so it is the strongest frame, with no half-typed text.
Up to three previews per device: give each its own hook — outcome, demo, social proof — and put the outcome first unless the category expects a demo.
What neither the reads nor the pictures tell you — the screens a flow passes through, the device the footage can be captured on, whether the audio carries anything — is an assumption: state it as one in the brief and plan on it.
Output: one Proposal per preview, and the brief
Each variant is one propose with appStoreField: "appPreview": content is its storyboard, why names what it should move and the baseline it must beat.
PREVIEW — [Product] — Variant [A|B|C] — [outcome | demo | social proof]
Length: [15–30] s Orientation: [portrait | landscape] Locale: [primary]
Poster frame: [description]
00:00–00:02 HOOK Visual: [screen, state] Caption: "[copy]"
00:02–00:08 PROBLEM Visual: … Caption: "…"
00:08–00:20 DEMO Visual: … Caption: "…" Speed: [1× | 1.25× | 1.5×]
00:20–00:26 PROOF Visual: … Caption: "…"
00:26–00:30 RESOLUTION Visual: [outcome state] Caption: "…"
The brief, saved with save_output, carries the reasoning: the decision and its reason, the assumptions, the production notes (device model and OS version, demo account state, where to speed up, captions burned in, audio kept with captions or removed), then Apply — App Store Connect → the version → App Previews and Screenshots per device, one slot per variant, the poster frame chosen in the upload dialog; a preview ships with a version, and a Product Page Optimization treatment tests it against the screenshot-only page without one.
Done when the decision (preview or screenshot-only) is stated with its reason, every variant has its Proposal, every storyboard beat has a visual, a caption and a timing that sums to 30 s at most, the poster frame is named, the checklist in the spec sheet has been run against the storyboard, and the baseline is named or reported unavailable.
Related Skills
screenshot-optimization— the slots that follow the preview, and the orientation the preview must match.localization— caption translation and re-recording per storefront.custom-product-pages— a preview per audience or campaign page.
What it discloses
The Skill reads these files only when it needs them, so the model spends nothing on them the rest of the time.
references/spec-sheet.md
references/storyboard-beats.md
From your accounts to a proposal
- 01
Connect what it reads
Give the ASO agent the accounts it works on. Kwern never asks for a password, and an agent missing a connection says so instead of guessing.
- 02
The loop runs weekly
Before it writes a word it reads the foundation doc, which holds the positioning, the audience and the voice, and whatever its connectors return that day.
- 03
The app-preview-video skill runs
The agent activates it when the run calls for it, and what the model then reads is the file on this page, word for word.
- 04
A proposal waits for you
Nothing is published and nothing is spent until you approve it. Approve and Kwern posts it where it holds the keys; where it does not, it hands you the text and the link.
The file, the agency, and the agent
| On your own | An agency | Kwern | |
|---|---|---|---|
| The method | Whatever you remember to do that week | Theirs, and you never get to read it | This file, open on this page |
| Who runs it | You, when there is time | An account manager, between other accounts | The ASO agent, weekly |
| What it reads | What you can pull by hand | What you remembered to send them | Your connected accounts and your foundation doc |
| What comes out | A draft, sometimes | A deck, and a report at the end of the month | A proposal you approve or throw away |
| What it costs | Your evenings | A retainer | One subscription, and the model on your own key |
Questions about app-preview-video
Pair it with
The other skills the same agents reach for during a run.
Someone is asking for what you built today.
On Reddit, on X, in ChatGPT's answers. Kwern finds them every morning and drafts the reply in your voice; you decide what goes out.