guides/design/youtube-thumbnail-design/SKILL.md
YouTube thumbnail design with specific dimensions, contrast rules, and mobile preview optimization. Covers safe zones, text placement, face expression psychology, and A/B testing. Use for: YouTube thumbnails, video cover images, click-through optimization. Triggers: youtube thumbnail, thumbnail design, video thumbnail, click through rate, ctr optimization, youtube cover, video cover image, thumbnail maker, thumbnail tips, youtube design, video preview image
npx skillsauth add inference-sh/agent-skills youtube-thumbnail-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create high-CTR YouTube thumbnails with AI image generation via inference.sh CLI.
Requires inference.sh CLI (
belt). Install instructions
belt login
# Generate a thumbnail
belt app run falai/flux-dev-lora --input '{
"prompt": "YouTube thumbnail style, close-up of a person with surprised excited expression looking at a glowing laptop screen, vibrant blue and orange color scheme, dramatic studio lighting, shallow depth of field, high contrast, cinematic",
"width": 1280,
"height": 720
}'
| Spec | Value | |------|-------| | Dimensions | 1280 x 720 px (minimum) | | Recommended | 1920 x 1080 px | | Aspect ratio | 16:9 | | Max file size | 2 MB | | Formats | JPG, GIF, PNG |
Your thumbnail appears at roughly 120px wide on mobile — that's how most viewers first see it.
At 120px, viewers must be able to identify:
Test: view your thumbnail at 120px width. If it's a muddy blur, redesign.
┌─────────────────────────────────────────────┐
│ │
│ ✅ SAFE FOR TEXT AND KEY ELEMENTS │
│ │
│ │
│ │
│ │
│ ┌───┐ │
│ │ ⏱ │ │ ← Timestamp overlay
│ ┌────────┴───┘ │ (bottom-right)
│ ┌────┐ │ DURATION │
│ │ CH │ Chapter marker └──────────────│
└───┴────┴────────────────────────────────────┘
↑ Bottom-left: chapter/progress markers
Avoid placing critical elements in:
| Combination | Mood | Best For | |-------------|------|----------| | Yellow + Black | Urgency, attention | Tech, business, lists | | Red + White | Energy, excitement | Entertainment, reactions | | Blue + Orange | Professional contrast | Education, tutorials | | Green + White | Growth, money | Finance, success stories | | Purple + Yellow | Premium, creative | Design, art, creativity | | White + Dark | Clean, minimal | Luxury, minimalist channels |
| Rule | Reason | |------|--------| | Max 6 words | Readability at thumbnail size | | Min 60pt equivalent | Must be legible at 120px width | | Bold sans-serif font | Thin fonts disappear at small sizes | | Contrast stroke/shadow | Ensures readability on any background | | No small text | If it's not readable small, cut it |
Thumbnails with faces get higher CTR than faceless thumbnails. Expression matters:
| Expression | CTR Impact | Best For | |------------|-----------|----------| | Surprise/shock | Highest | Reaction, reveal, discovery content | | Curiosity | High | Tutorial, how-to, tips | | Excitement | High | Unboxing, reviews, announcements | | Concern/worry | Medium-high | Warning, mistake, problem content | | Confidence | Medium | Expert advice, authority content | | Neutral | Lowest | Avoid unless your brand is minimalist |
# Generate a face-forward thumbnail
belt app run falai/flux-dev-lora --input '{
"prompt": "close-up portrait of a man with genuinely surprised expression, mouth slightly open, raised eyebrows, looking at camera, left side of frame, vibrant teal background, dramatic rim lighting, YouTube thumbnail style, high contrast, cinematic",
"width": 1280,
"height": 720
}'
# Generate a face-looking-at-subject thumbnail
belt app run bytedance/seedream-4-5 --input '{
"prompt": "person looking amazed at a glowing holographic chart showing upward growth, dramatic blue and green lighting, right side profile view, dark background, tech aesthetic, high energy",
"size": "2K"
}'
belt app run falai/flux-dev-lora --input '{
"prompt": "overhead flat lay of organized workspace with laptop showing code editor, colorful sticky notes, coffee cup, clean bright background, professional setup, tutorial style composition, warm lighting",
"width": 1280,
"height": 720
}'
belt app run falai/flux-dev-lora --input '{
"prompt": "split composition, left side dark and messy disorganized desk, right side bright clean organized minimalist workspace, dramatic contrast between chaos and order, clear dividing line in center, high contrast",
"width": 1280,
"height": 720
}'
belt app run falai/flux-dev-lora --input '{
"prompt": "two products facing each other with dramatic lighting and sparks between them, competition battle concept, dark background with colorful rim lighting, versus comparison style, high energy, product photography",
"width": 1280,
"height": 720
}'
belt app run falai/flux-dev-lora --input '{
"prompt": "dynamic arrangement of 7 different colorful objects floating in space against dark gradient background, each item distinct and clearly separated, energetic composition, vibrant saturated colors, studio lighting",
"width": 1280,
"height": 720
}'
Test one variable at a time:
| Variable | Test A vs B | |----------|-------------| | Face vs No face | Same composition, with/without person | | Expression | Surprise vs curiosity | | Color scheme | Warm vs cool palette | | Text vs No text | With/without text overlay | | Background | Bright vs dark | | Composition | Left-facing vs right-facing subject |
# Generate variant A
belt app run falai/flux-dev-lora --input '{
"prompt": "..., bright yellow background, ...",
"width": 1280, "height": 720
}' --no-wait
# Generate variant B (same prompt, different background)
belt app run falai/flux-dev-lora --input '{
"prompt": "..., dark navy background, ...",
"width": 1280, "height": 720
}' --no-wait
| Mistake | Problem | Fix | |---------|---------|-----| | Too much text | Unreadable at thumbnail size | Max 6 words or no text | | Low contrast | Disappears in the feed | Use complementary colors | | Cluttered composition | Eye doesn't know where to look | One focal point | | Generic stock photo feel | No personality, gets skipped | Authentic expressions, unique angles | | Tiny details | Lost at 120px | Bold, simple shapes | | Same style every video | Viewer fatigue | Vary within brand guidelines | | Misleading thumbnail | Kills trust, hurts retention | Match the actual content |
npx skills add inference-sh/skills@ai-image-generation
npx skills add inference-sh/skills@image-upscaling
npx skills add inference-sh/skills@prompt-engineering
Browse all apps: belt app list
development
Render videos from React/Remotion component code via inference.sh. Pass TSX code, get MP4. Supports all Remotion APIs: useCurrentFrame, useVideoConfig, spring, interpolate, AbsoluteFill, Sequence. Configurable resolution, FPS, duration, codec. Use for: programmatic video generation, animated graphics, motion design, data-driven videos, React animations to video. Triggers: remotion, render video from code, tsx to video, react video, programmatic video, remotion render, code to video, animated video, motion graphics code, react animation video
tools
Generate videos with Pruna P-Video and WAN models via inference.sh CLI. Models: P-Video, WAN-T2V, WAN-I2V. Capabilities: text-to-video, image-to-video, audio support, 720p/1080p, fast inference. Pruna optimizes models for speed without quality loss. Triggers: pruna video, p-video, pruna ai video, fast video generation, optimized video, wan t2v, wan i2v, economic video generation, cheap video generation, pruna text to video, pruna image to video
documentation
Still-to-video conversion guide: model selection, motion prompting, and camera movement. Covers Wan 2.5 i2v, Seedance, Fabric, Grok Video with when to use each. Use for: animating images, creating video from stills, adding motion, product animations. Triggers: image to video, i2v, animate image, still to video, add motion to image, image animation, photo to video, animate still, wan i2v, image2video, bring image to life, animate photo, motion from image
tools
Generate videos with Google Veo models via inference.sh CLI. Models: Veo 3.1, Veo 3.1 Fast, Veo 3, Veo 3 Fast, Veo 2. Capabilities: text-to-video, cinematic output, high quality video generation. Triggers: veo, google veo, veo 3, veo 2, veo 3.1, vertex ai video, google video generation, google video ai, veo model, veo video