All · Motion graphics · Showreel · kinetic type
608One-sentence ad" black-and-white kinetic — words slam in one per beat, flipping the screen, 14 seconds
Write your shop or service in one sentence: each word slams onto a black or white screen on the beat, the words gather back into the sentence and it ends with your name — a vertical ad MP4.
What you get
- A 5-scene vertical ad MP4 (about 14 seconds at 120 BPM, 60fps, with a coded backing track)
- An HTML file with a settings panel to change the sentence, extra line, colors and tempo
- A render script that makes a new MP4 with one command
- Claude Opus 5.5 Made with this AI
Fill in the fields
- 1Fill in the fields
- 2Copy the prompt
- 3Paste it into an AI that can run code (Claude Opus 5.5 · GPT-6 Astra · Gemini Argon)
- 4It builds the HTML, renders it itself and leaves an MP4
- 5To change it, edit the settings panel at the top of the HTML and run one render command No new request
Full prompt 6,010 characters
Make a short vertical kinetic-typography ad as one self-contained HTML file and render it to MP4. The idea: one sentence, said one word at a time — every word gets its own full screen on the beat, the screen flips between black and white on every word, then the words fly back together into the full sentence, then the name. It must look like a black-and-white type ad from a top design studio: huge heavy letters, hard cuts on the beat, one accent color used only for the emphasis word. Do the whole job now without asking questions. [Inputs (use the default when empty)] Name: "【Name】" — default Promptpan Small kicker: "【Small kicker】" — a short monospace line, default "PROMPTPAN — NO. 11" Sentence: "【Sentence】" — split into words at spaces; a part wrapped in *asterisks* is the emphasis word (keep it as one word even if it has spaces); use at most 10 words Extra line: "【Extra line】" — same *emphasis* rule End button text: "【End button】" — default: the name Palette: "【Palette】" Black & white = white #FFFFFF, black #0B0B0B, accent red #FF3B1F, grey #8A8A8A Black & white · Yellow = white #FFFFFF, black #0B0B0B, accent yellow #FFD400, grey #8A8A8A Paper · Ink = paper #EFE9DE, ink #151413, accent red #C8102E, grey #8C857A Tempo: "【Tempo】" — default 120 BPM. Aspect ratio: Output size 1080x1920 pixels, 9:16 portrait story. Keep all text inside the central 80% of the height. (default 9:16). [Structure — 5 scenes, each long enough to read] Give each scene its own length in beats: at least 4; for text scenes the Korean reading time (0.9 s + 1 s per 7 characters) rounded up to an even number of beats. 1. Line: black screen; the kicker types in small monospace above the centre; a thin white line draws out from the centre to both sides on the first beat; in the last beat the line thickens until white fills the whole screen. 2. One word per beat: each word alone, centred, as big as it fits (about 86% of the width) in a 1.3x-wide heavy display face (Black Han Sans); the background flips between black and white on every word and the letters take the opposite color; each word punches in from 118% to 100% in the first third of its beat, with a short flash; a small "02 / 04" counter above. The emphasis word is in the accent color and gets an accent underline that swipes in. Scene length = number of words rounded up to an even number of beats. 3. The sentence: on white, the words come back one by one, alternately sliding in from the left and right, and settle into centred lines in a heavy Korean sans (Noto Sans KR 900), wrapping when a line is too wide; the emphasis word is in a bold serif italic (Nanum Myeongjo 800, slight skew) in the accent color. Near the end a solid black block sweeps under the emphasis word and the word turns white on it. The kicker sits small in the top-left corner. Fade to black at the end. 4. Extra line: on black, a thin grey rule draws across, the extra line types in above it in white with the emphasis in the accent color, then fade to white. 5. End: the name assembles from three cut pieces of each real glyph flying in and locking together; an accent dot pops in as the full stop with a burst of small accent particles; the sentence types under the name in grey; a black end button grows in, a cursor clicks it on the beat and a ring spreads. Hold the final frame. [Always-on details] A thin 5-segment story progress bar along the top fills with time and recolors to stay readable on black and white. Real motion blur on fast moves (average several sub-frame samples). Light film grain. Three typefaces only (Noto Sans KR, Nanum Myeongjo, Black Han Sans stretched 1.3x wide), loaded from Google Fonts. Keep a 6% safe margin; never clip a Korean syllable; no gradients or glows — flat black, white and one accent. [Sound] If you can generate music, add a dark synth backing track at the given tempo whose kick lands on every word cut, and mux it into the MP4 as AAC. If you cannot generate audio files with a music model, write the backing track yourself in code instead: synthesize an original instrumental (kick, snare, hi-hats, bass, a chord pad, no vocals) at the given tempo with a simple chord loop, sample by sample into a WAV, with the drums entering where the one-word scene starts, then mux it into the MP4 as AAC. Never use a placeholder or someone else's recording. [Build] One HTML file, everything on a single canvas. The script starts with a `const CONFIG` object holding every input plus fps 60 and a seed. All drawing comes from a pure `seek(t)` — no timers, no CSS animation, randomness only from the seed — so any frame renders identically. A settings panel above the preview (hidden with ?render=1) with English labels: text inputs for every text input, selects for palette, tempo and ratio, play/pause, a scrubber, and a "Copy settings" button that copies CONFIG as code. Edits re-render instantly. Write render.mjs: open the page with ?render=1 in headless Chromium (Playwright), wait for document.fonts.ready, step seek(frame / 60) through every frame, screenshot the canvas at 1080 px on the short side, and pipe into ffmpeg (libx264, yuv420p, crf 18) to make motion.mp4. Close the browser at the end. Accept an optional JSON file argument that overrides CONFIG. [Check before finishing] Render, export frames at every word and the middle of every scene into a contact sheet and look at it: every word is readable at phone size and never clipped, black and white really flip on every word, the emphasis word is the only accent-colored text, the sentence lines wrap cleanly, the full stop sits clear of the last letter. Fix and re-render if anything fails. Finish with the file paths and the single command to re-render after editing settings. [Final output format] Output size 1080x1920 pixels, 9:16 portrait story. Keep all text inside the central 80% of the height. This selected output format takes priority over any fixed canvas size or aspect ratio elsewhere in this template. Adapt the composition, text zones and margins to the selected canvas without stretching or cropping essential content. Device safe areas apply only when a device is selected. Never print these format instructions on the image.
How did it turn out?
How to use it · FAQ
One sentence is enough — a 14-second black-and-white kinetic ad
Write your shop or service in one sentence and each word slams onto the screen on the beat, one at a time. Black and white flip on every word, and only the word you highlight turns red, so it jumps out. Then the words fly back into one sentence and it ends with an extra line and your name. Use it for short ads that stop the thumb on Reels, Shorts and TikTok.
Paste it into an AI that runs code
Paste it into an AI that writes and runs code, not an image AI. Claude Opus 5.5 also adds a backing track it builds in code (simple instrumental, no vocals) — no music model, account or cost needed. The AI builds the HTML, renders it and leaves you an MP4. The example above was made with Claude Opus 5.5. Check fees and terms of any outside service with that service.
How to fill it in
Four to eight words works best — one word is one beat, so a long sentence flies by. Wrap the one thing you most want to say in *asterisks* and only that word gets the accent color (e.g. Today's bread sells *today only*). Don't write anything you don't actually offer.
Edit without asking again
Change the sentence, extra line, colors and tempo in the settings panel at the top of the HTML, press "Copy settings" and run the one render command for a new video. Scene lengths stretch to fit your text.

