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-registry 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
Declarative UI widgets from JSON for React/Next.js from ui.inference.sh. Render rich interactive UIs from structured agent responses. Capabilities: forms, buttons, cards, layouts, inputs, selects, checkboxes. Use for: agent-generated UIs, dynamic forms, data display, interactive cards. Triggers: widgets, declarative ui, json ui, widget renderer, agent widgets, dynamic ui, form widgets, card widgets, shadcn widgets, structured output ui
tools
Tool lifecycle UI components for React/Next.js from ui.inference.sh. Display tool calls: pending, progress, approval required, results. Capabilities: tool status, progress indicators, approval flows, results display. Use for: showing agent tool calls, human-in-the-loop approvals, tool output. Triggers: tool ui, tool calls, tool status, tool approval, tool results, agent tools, mcp tools ui, function calling ui, tool lifecycle, tool pending
development
Chat UI building blocks for React/Next.js from ui.inference.sh. Components: container, messages, input, typing indicators, avatars. Capabilities: chat interfaces, message lists, input handling, streaming. Use for: building custom chat UIs, messaging interfaces, AI assistants. Triggers: chat ui, chat component, message list, chat input, shadcn chat, react chat, chat interface, messaging ui, conversation ui, chat building blocks
tools
Batteries-included agent component for React/Next.js from ui.inference.sh. One component with runtime, tools, streaming, approvals, and widgets built in. Capabilities: drop-in agent, human-in-the-loop, client-side tools, form filling. Use for: building AI chat interfaces, agentic UIs, SaaS copilots, assistants. Triggers: agent component, agent ui, chat agent, shadcn agent, react agent, agentic ui, ai assistant ui, copilot ui, inference ui, human in the loop