Independent guide · updated Oct 22, 2026

Claude motion graphics prompts, with real examples

Original creator prompts for five different jobs, with source posts, watch links and practical notes for adapting them.

Pick a prompt by the result you want

Each prompt below is quoted from its creator's public post or reply. The adaptation notes are ours. Watch the result, open the full prompt and check its prerequisites before trying it. Copying the prompt does not reproduce the creator's environment or supply their assets.

Showreel

A short motion design showreel

A deliberately open brief for a short reel. Add your visual direction, dimensions and delivery format when adapting it.

Original prompt by @stephanlivera · from the creator’s post

Watch the result
Read the full original prompt
make a dynamic 15-second motion graphics video that shows what an incredible motion designer you are, like it's your showreel for a résumé. go all out.
Logo reveal

A logo reveal

Supply a usable logo asset and describe the reveal, final lockup and end hold. The original asks for a particular logo; replace it with your own.

Original prompt by @tdinh_me · from the creator’s post

Watch the result
Read the full original prompt
Create an impressive motion design video of a slow-reveal transition that assembles and eventually reveals the TypingMind logo.
Explainer

An animated product explainer

This very short brief names MakerMap. Provide your own product context, audience and verified facts so the agent does not have to guess.

Original prompt by @verbove · from the creator’s post

Watch the result
Read the full original prompt
explain MakerMap, but make it insane
Launch film

A structured product launch film

This longer template asks for inputs before building. Bring a brand name, approved assets and licensed music; check the requested dimensions and timing.

Original prompt by @twoclipping · from the creator’s post

Watch the result
Read the full original prompt
<inputs>
Ask me for: a one-word brand name for the wordmark (a verb works best), 9 to 12 high-res photos, a royalty-free song around 120 BPM with a drop and a quiet breakdown (Mixkit, free for commercial use), and a free stock clip of a plain wall with moving plant shadows (Pexels).
</inputs>

<direction>
An Apple-keynote launch film, 2D only, one continuous take. Every scene is made out of the previous one: nothing fades, blurs or cuts. Objects change shape instead: text rises out of a mask line, icons pop from zero on a spring, bars draw across, pages push, and a black shape floods the whole frame and contracts into the next scene. Warm off-white canvas, black UI, iOS 26 liquid glass over the photos. Archivo (wdth 125, weight 800) for the wordmark, Geist for UI. A cursor drives every change with real clicks, drags and long-presses. The camera zooms screen-studio style so each moment fills the square, and the cursor scales with it.
Banned: crossfades, blur-ins, brightness "developing", 3D flips, particles, glows, holds longer than 1s, anything that looks like a template.
</direction>

<structure>
120 BPM, 54 beats, something happens on every beat.
Open: the wordmark squeezes into its own period like an accordion, the dot grows into a black pill, a label rises inside it. Click: six iris blades close over the label and snap open onto a photo. The circle becomes a square, shrinks, the grid unfolds from behind it like a paper map (center, plus, corners), reflows into a bento, and a click zooms into one tile, landing exactly on the drop.
Glass: a glass word pops in letter by letter, melts into a droplet that stretches into a glass toolbar. The adjust icon turns it into a slider. Dragging relights the photo from day to golden hour (two aligned shots), and the knob turns into a glass lens while held. It lifts into a glass orb, the next photo opens inside it as a circle, and the orb expands into a lock screen: glass clock digits, date, and a home bar that stretches into a glass music player.
Stage: the lock screen pulls back into a phone (the bezel grows out of the screen edge). The Dynamic Island stretches like liquid, pinches off, flies over and grows into a Mac window that rolls up like a blind. Long-press the wallpaper, drag it onto a Safari tab, the page pushes in, drop it and it becomes the hero of a landing page. Scroll: the hero morphs into a framed print on a product card, with the mat and molding growing out of the photo's edge. Pick a frame color (it paints across) and a size, then the nav button flies down into "Order print".
Order: one black shape keeps morphing: Ordered ✓ → Printing % → On its way (a van on a route) → Delivered ✓.
Wall: the delivered circle floods the frame edge to edge, holds black for a beat, and contracts into the framed print hanging on the real wall footage. The same iris opens onto the print, closes again, the frame floods the screen and contracts into the pill → the dot → the letters spring back out, landing on the beat return. Last frame = first frame.
</structure>

<build>
1. One HTML file, square 1440x1440. Every style is computed from time inside an async seek(t): no CSS transitions, no timers, no state between frames.
2. Springs are closed-form step responses. A value with many targets is the sum of one spring per change, so it stays a pure function of time.
3. Liquid glass: each glass element holds its own clone of the scene behind it, filtered with an SVG feImage displacement map (a rounded-rect distance field) through three feDisplacementMaps at slightly different scales for chromatic edges, plus a rim light. Glass letters: a canvas distance field per glyph gives the map, mask and highlights.
4. Goo: blur + alpha threshold, then composite the source atop it so the glass stays sharp inside.
5. Iris: 6 blades around a hexagonal aperture. Each blade is its two vertices, both edge extensions and the SHORT arc between them.
6. Wordmark squeeze: every letter moves toward the dot by the same factor and its drawn width follows (narrow the wdth axis, scale the rest), so the letters stay touching.
7. Footage: re-encode all-intra (ffmpeg -g 1), load it as a blob URL, await 'seeked' before drawing each frame.
8. Sound: a downloaded SFX for every event (Mixkit), never synthesized, each placed by its measured peak. The song starts on a downbeat: the zoom lands on the drop, the wall sits in the breakdown, the wordmark returns with the beat. Loudnorm to -14 LUFS.
9. Render with Playwright: 4 subframes per frame blended with ffmpeg tmix, 60fps. Check one frame per beat, then scan for single-frame pops (frame-difference spikes 3x their neighbours).
</build>

<gotchas>
backdrop-filter: url() misreads displacement maps in Chromium, so clone the scene instead. A flood must overscale past the corners and take about 0.3s, or half the screen changes in one frame. A child with visibility: visible shows through a hidden parent, so use inherit. Text that swaps inside a morphing shape needs its own mask. python http.server can't range-seek video, so use the blob URL.
</gotchas>

<start>
Ask me for the inputs, then show me the beat map and 4 stills (open, glass, stage, wall) before you write the full film.
</start>
Typography

A kinetic typography loop

This detailed JSON prompt relies on a supplied original audio track and frame-level timing. It is a reference-recreation brief, not an asset-free text-to-video prompt. Its requested format may differ from the posted clip.

Original prompt by @finnardley · from the creator’s post

Watch the result
Read the full original prompt
{
  "title": "Creative & Smooth Motion - kinetic typography loop",
  "task": "Recreate this vertical kinetic-typography motion graphic from scratch, frame-accurate, and use the supplied original audio track unchanged (do not generate, re-time, or alter any sound).",
  "output": {
    "resolution": "720x1280",
    "aspect_ratio": "9:16",
    "fps": 30,
    "total_frames": 155,
    "duration_seconds": 5.167,
    "codec": "H.264 yuv420p, high quality",
    "loop": "Seamless: frame 155 (Motion, huge + horizontally ghosted) hands off to frame 1 (Creative, huge + letters overlapping)",
    "motion_blur": "Real shutter blur (~180 degree, 6 subframes normally; ~1.1 shutter / 10 subframes on fast frames 1-12, 78-90, 107-117, 126-130, 150-155)"
  },
  "audio": {
    "mode": "KEEP_ORIGINAL",
    "instruction": "Copy the original audio stream as-is (ffmpeg -c:a copy). Do not regenerate or edit.",
    "format": "AAC (HE-AACv2), 44.1 kHz, stereo, 5.18 s",
    "sync_map": [
      {"time_s": 0.00, "frame": 1,   "event": "opening hit / swell as 'Creative' snaps in from huge blurred state"},
      {"time_s": 1.40, "frame": 43,  "event": "accent as '&' and 'Smooth' land"},
      {"time_s": 2.25, "frame": 68,  "event": "BIGGEST early hit: '&' collapses to a point"},
      {"time_s": 2.75, "frame": 83,  "event": "swell peak: words explode into letter clusters, '+' appears"},
      {"time_s": 3.75, "frame": 113, "event": "hit on the blank flash after the cluster collapses"},
      {"time_s": 4.30, "frame": 130, "event": "hit as scrambled letters snap into 'Motion'"},
      {"time_s": 5.00, "frame": 151, "event": "final riser/hit as 'Motion' zooms toward the loop point"}
    ]
  },
  "canvas": {
    "orientation": "portrait",
    "text_direction": "ALL text is rotated 90 degrees clockwise: reads top-to-bottom, letter tops point right",
    "background": {
      "type": "soft animated mesh gradient (blurred blobs), no hard edges, no grain",
      "base_color": "#FEFCFF (near white)",
      "blob_color": "#FECCFF to #FEC6FF (light magenta-pink)",
      "behavior": "4-5 large gaussian pink blobs drift slowly in elliptical orbits over the whole 155 frames; blob positions: pink pooling top-left at start, top-right and bottom-right mid-clip, left edge at end",
      "max_pink_coverage": "about 75-80%"
    },
    "ink_color": "#020003 (near-black)",
    "font": {
      "family": "Helvetica Neue Bold / Inter Bold style grotesque (Liberation Sans Bold used in the replica)",
      "base_size_px": 80,
      "cap_height_px": 58,
      "tracking": "slightly tight"
    }
  },
  "elements": {
    "word_creative": {"text": "Creative", "rest_length_px": 302, "rest_center": [360, 636]},
    "word_ampersand": {"text": "&", "rest_center": [360, 680]},
    "word_smooth": {"text": "Smooth", "rest_length_px": 268, "rest_bottom_y": 990},
    "plus": {"glyph": "+", "center": [359, 667], "size_px": 43, "stroke_px": 5},
    "word_motion": {"text": "Motion", "rest_center": [360, 639]}
  },
  "timeline": [
    {
      "frames": "1-19",
      "name": "Creative snaps in",
      "action": "'Creative' starts at 2.3x glyph scale with letter spacing crushed to ~51% so letters overlap (reads 'Oreative'), heavy ghost blur. Eases out (expo) to 1.0x scale and normal spacing by frame 19.",
      "easing": "expo out"
    },
    {
      "frames": "19-27",
      "name": "Hold",
      "action": "'Creative' sits centered, barely drifting up (~4 px)."
    },
    {
      "frames": "27-39",
      "name": "Creative lifts, Smooth rises in",
      "action": "'Creative' accelerates upward from y=636 to y~480 (centre) with ease-in-out then out. At frame 38-39 'Smooth' fades/slides up from below (bottom edge y~1180 to 1090) and '&' pops in between them (scale 0.2 to 1.15, rotating from -180 to 90 deg).",
      "easing": "io then out"
    },
    {
      "frames": "39-61",
      "name": "Settle into 'Creative & Smooth'",
      "action": "Words tighten toward final stack: Creative centre y 480 to 467, Smooth bottom edge 1090 to 990, '&' y 720 to 680. Gaps close with ease-out. Final stack spans y=316 to y=990 centered on 360.",
      "easing": "out"
    },
    {
      "frames": "62-75",
      "name": "Ampersand collapse",
      "action": "'&' shrinks 1.0 to 0.75 (f62-67) then to 0 (f72-74) while spinning 300 degrees and blurring into a small black blob that vanishes."
    },
    {
      "frames": "75-82",
      "name": "Plus appears + words begin to explode",
      "action": "'+' pops at (359,667): scale 0 to 1.25 (by f79) then 1.0 (f82). Simultaneously from f77 the letters of 'Creative' and 'Smooth' start rotating and blurring, squashing along their length."
    },
    {
      "frames": "77-87",
      "name": "Explode into two letter clusters",
      "action": "Every letter of both words interpolates (ease-out) from its line position to its cluster pose with large rotation blur. Top cluster = 'Creative' piled around a giant 'C' ring; bottom cluster = 'Smooth' piled around a giant 'S'.",
      "easing": "out quartic"
    },
    {
      "frames": "87-99",
      "name": "Cluster hold",
      "action": "Poses held with very slight drift; '+' stays at (359,667)."
    },
    {
      "frames": "99-112",
      "name": "Collapse to a point",
      "action": "All cluster letters slide toward (410,725), shrink to ~15%, stretch vertically 3.5x and rotate +25 deg, ease-in. At frame 109 '+' shrinks away. Frame 112 is a thin vertical streak of blurred strokes; ~frame 113 is a pure blank flash of the background.",
      "easing": "ease-in cubic"
    },
    {
      "frames": "113-115",
      "name": "Scramble pops in",
      "action": "The 6 letters of 'Motion' pop from 20% to 100% scale (ease-out) into a scrambled pose."
    },
    {
      "frames": "115-125",
      "name": "Scramble drift",
      "action": "Letters drift ~25% toward centre (360,640) and rotate +20 deg, ease-in-out, shrinking ~10%."
    },
    {
      "frames": "125-129",
      "name": "Snap to word",
      "action": "Letters rotate/translate into the straight 'Motion' line (rotation 90 deg, length ~138 px) with a motion-blurred snap.",
      "easing": "ease-in-out"
    },
    {
      "frames": "129-151",
      "name": "Motion zoom",
      "action": "'Motion' centred at (360,639), grows continuously (length in px): f129=138, f131=186, f133=206, f135=218, f137=226, f139=234, f141=242, f143=254, f145=266, f147=290, f149=314, f151=346. Fast out first, slow middle, accelerating tail."
    },
    {
      "frames": "151-155",
      "name": "Loop transition",
      "action": "Glyph scale ramps 1.0 to ~2.1x while letter spacing compresses to ~50%, with strong horizontal ghosting, matching the opening state of frame 1."
    }
  ],
  "letter_poses_px": {
    "note": "x,y = glyph centre on 720x1280 canvas; rot = degrees clockwise; s = scale vs 80px base",
    "creative_cluster": [
      {"ch": "C", "x": 325, "y": 288, "rot": -25, "s": 4.0, "note": "giant ring, opening faces upper right"},
      {"ch": "r", "x": 285, "y": 325, "rot": -60, "s": 1.9, "note": "inside C hole"},
      {"ch": "e", "x": 322, "y": 368, "rot": 190, "s": 1.6, "note": "inside C hole, upside down"},
      {"ch": "a", "x": 440, "y": 145, "rot": -45, "s": 1.7},
      {"ch": "t", "x": 505, "y": 295, "rot": 55,  "s": 2.3},
      {"ch": "i", "x": 355, "y": 165, "rot": 60,  "s": 2.6},
      {"ch": "v", "x": 380, "y": 235, "rot": -35, "s": 1.5},
      {"ch": "e", "x": 470, "y": 245, "rot": -30, "s": 2.0}
    ],
    "smooth_cluster": [
      {"ch": "S", "x": 580, "y": 1055, "rot": -40, "s": 2.3, "note": "giant S"},
      {"ch": "m", "x": 470, "y": 1160, "rot": -30, "s": 2.3},
      {"ch": "o", "x": 435, "y": 1068, "rot": 0,   "s": 1.25},
      {"ch": "o", "x": 395, "y": 1015, "rot": 0,   "s": 1.5},
      {"ch": "t", "x": 365, "y": 1085, "rot": -30, "s": 1.6},
      {"ch": "h", "x": 290, "y": 1120, "rot": 150, "s": 2.0}
    ],
    "motion_scramble": [
      {"ch": "M", "x": 480, "y": 550, "rot": -65, "s": 2.6},
      {"ch": "o", "x": 478, "y": 715, "rot": -65, "s": 1.5},
      {"ch": "t", "x": 320, "y": 825, "rot": 200, "s": 1.8},
      {"ch": "i", "x": 270, "y": 700, "rot": -65, "s": 2.0},
      {"ch": "o", "x": 310, "y": 760, "rot": -65, "s": 1.4},
      {"ch": "n", "x": 360, "y": 700, "rot": 115, "s": 1.4}
    ]
  },
  "style_rules": [
    "Flat 2D only: pure near-black glyphs on a pastel pink/white gradient, no outlines, shadows, 3D, grain or glow",
    "All motion is driven by snappy ease-out / ease-in-out curves plus real motion blur, nothing linear except slow background drift",
    "Letters are always real font glyphs transformed (scale, rotate, translate); never redrawn or distorted beyond scale",
    "Keep every hit on the audio sync_map frames exactly"
  ],
  "negative_prompt": ["extra colors", "gradients on text", "shadows", "3D", "camera shake", "new audio", "music replacement", "extra words"]
}

Turn a creator prompt into your own brief

  1. Replace the subject. Use your product, logo or idea, and provide the exact words or data that must appear.
  2. Define the delivery. State the audience, duration, aspect ratio and whether you need editable source, an MP4, or both.
  3. Bring the missing assets. Supply approved screenshots and licensed audio where needed. A prompt asking to preserve a track cannot work as intended without that track.
  4. Keep the useful direction. Retain timing, hierarchy and transition ideas that fit your brief. Remove details tied to the original brand or reference.
  5. Review a first cut. Fix readability and factual errors before polishing effects. Check the exported file as well as the preview.

These are editorial adaptation notes. We have not rerendered these prompts or verified that a single prompt reproduces a creator's result.

Where do I run Claude motion graphics prompts?

First identify the workflow. Some examples use a local code project with Remotion or HyperFrames; others use Claude's animation interface. Follow the creator's stated setup. Our Claude Motion guide explains the difference and links to the official access and setup instructions.

A prompt is the brief for one video. A skill gives a coding agent reusable instructions. A renderer exports the animation code. A prompt alone does not install the latter two.

How do I get an MP4 and add sound?

Built-in Motion has an Export → MP4 option. In a local code workflow, follow your renderer's export instructions and verify the finished file. A preview playing in a browser is not an MP4 export.

Audio depends on the workflow: creators may supply a licensed track, synthesize effects in code or combine separate tools. Do not infer built-in Motion audio support from those examples. If you change a reference clip's length, check the sound and visual timing together.

See Anthropic's Motion guide and Remotion's coding-agent guide for current product instructions.