Youtube thumbnail
Generate a branded YouTube thumbnail from a video title.
How to use it
Claude Code
- Run the line below. It pulls the whole folder into
~/.claude/skills/youtube-thumbnail-2, including the files SKILL.md points to. - Describe your job in plain words. Claude Code follows the skill from there.
npx degit charlie947/social-media-skills/skills/youtube-thumbnail#main ~/.claude/skills/youtube-thumbnail-2For one project only, change the path to .claude/skills/youtube-thumbnail-2. This skill also uses about-me.md, voice.md, newsletter-voice.md, thumbnail-config.md, brand-kit.md — copying SKILL.md alone won't be enough. See the folder on GitHub.
Claude (web or desktop app)
- On this page open ⋯ → Download .md.
- Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
- Pick the file and Save. Claude shows the name and description and runs a security scan.
- Check the skill is switched on.
- Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
- ChatGPT: make a Project and paste it into Instructions.
- Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
- Check which app you pasted it into — the steps above name the right one.
- Some skills need the paid tier of Claude or ChatGPT.
Paste into Claude, ChatGPT or Cursor.
Source of Youtube thumbnail
Show the full text147 lines
| name | description |
|---|---|
| youtube-thumbnail | > Generate a branded YouTube thumbnail from a video title. Uses a reference photo of the creator, high-CTR thumbnail principles, and brand colours to produce a ready-to-generate image prompt for Gemini. Use this skill whenever the user says "thumbnail", "youtube thumbnail", "build me a thumbnail", or wants a video cover image before writing the script. The thumbnail-first workflow mirrors the graphic-first approach for LinkedIn: sells the video before anyone hears a word of the script. |
YouTube Thumbnail
Codex and Claude runtime
- Use this skill in Codex or Claude with the tools actually available in the current task.
AskUserQuestionexamples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied. - Work in the user-selected project. Read its
about-me.md,voice.mdand relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or runvoice-builder; never inherit the maintainer's identity, accounts or private files. - Resolve bundled
references/relative to this skill folder. For an explicitly requested profile refresh, read and update the canonicalabout-me.md,voice.mdornewsletter-voice.mdin place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested. - Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run.
- Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts.
Visual completion state
This skill's image prompts are prompt-ready, not generated or visually reviewed assets. Keep its named Gemini workflow unless the user requests another generator. A missing image service does not block writing a prompt. When images are supplied or generated, open and inspect each export at full size and feed size (about 360px wide, 320px for thumbnails). Check exact copy, dimensions, clipping, legibility, brand colours, font appearance, logos and reference fidelity. Fix and re-inspect failed exports. Record any unavailable export or inspection as pending. An image prompt or raster export is not an editable design file.
CRITICAL: Auto-start on load
When this skill triggers, go straight to Step 1.
Step 1. Gather inputs
Check the project for a reference photo config. Look in this order:
thumbnail-config.mdin the project rootbrand-kit.md— look for a reference image path and brand coloursabout-me.md— for the creator's name and positioning
If a reference photo path is stored, pre-fill it. Otherwise ask:
Upload or provide the path to the reference photo of yourself you want used in the thumbnail. Ideally a clear headshot with distinctive lighting and expression you plan to reuse across videos for brand consistency.
Then call AskUserQuestion:
[
{
"question": "What is the video title?",
"header": "Title",
"multiSelect": false,
"options": [
{"label": "I will type the title", "description": "Type the full working title"},
{"label": "Suggest one", "description": "Given the topic, propose 3 click-worthy titles first"}
]
},
{
"question": "Emotional tone?",
"header": "Tone",
"multiSelect": false,
"options": [
{"label": "Shock / surprise", "description": "Wide eyes, open mouth, bold reaction"},
{"label": "Curious / thinking", "description": "Slight smirk, raised eyebrow, gaze off-frame"},
{"label": "Confident / direct", "description": "Eye contact, calm, assertive"},
{"label": "Frustrated / strong take", "description": "Intense gaze, hand gesture, tension"}
]
}
]
Confirm the title and promise against the video’s supplied content. Do not invent a result, imply a demonstration exists, or use an unprovided face or brand mark. A missing reference photo leaves photo-based generation pending, while a composition brief can still be drafted.
Step 2. Apply thumbnail best practices
Every thumbnail must follow these rules:
- Face fills 30 to 50 percent of the frame. Readable at small sizes.
- 3 to 5 words maximum of large text. 6 if absolutely necessary.
- Two colours dominate. Brand primary + one high-contrast accent (yellow, red, cyan work well).
- One clear focal element besides the face. Tool logo, bold number, arrow, or prop.
- High contrast between face, text, and background. Test by squinting.
- Text is not a sentence. It is a hook phrase. Examples: "I fired my team", "Claude can now...", "Don't do this".
- No small text, no logos bottom-right (watch time icon sits there).
Step 3. Build the thumbnail brief
Output a concise brief the user can review:
THUMBNAIL BRIEF: [video title]
Composition: [face position, % of frame, direction of gaze]
Text: "[hook phrase, 3-5 words]"
Text placement: [left, right, top, wraps around face]
Colour palette: [primary hex], [accent hex], [background hex]
Supporting element: [logo / prop / arrow / number]
Emotional tone: [tone from Step 1]
Then ask:
Here's the brief. Say "generate" to output the image prompt or tell me what to change.
Step 4. Output the Gemini prompt
Once approved, output the image generation prompt in a code block:
Using the attached reference photo of me, generate a YouTube thumbnail at 1280 x 720 pixels (16:9).
Composition:
- Place me [left / right / centre] filling [30-50]% of the frame
- My expression: [tone details — e.g., shocked with wide eyes and open mouth]
- My gaze: [direction — e.g., looking directly at camera / looking off-frame toward the text]
Text:
- Display "[hook phrase]" in large bold sans-serif typography
- Text colour: [hex]
- Text outline: [colour, thickness for readability]
- Text placement: [specific area]
Colour palette:
- Primary: [hex]
- Accent: [hex]
- Background: [hex] — [describe treatment: flat, gradient, blurred scene, etc.]
Supporting element: [specific description of the supporting visual]
Constraints:
- Face must be clear and sharp
- Text must be readable at 320px wide (YouTube mobile size)
- No watermarks, no YouTube UI elements, no bottom-right corner text
- High contrast between face, text, and background
Tell the user:
Paste this into a new Gemini chat, attach your reference photo, enable Create Image, and select Nano Banana. Generate at 1280x720.
Step 5. Offer the next move
Want me to outline the video next? Hook, mid, CTA from the thumbnail.
Rules
- 1280x720 pixels (16:9). YouTube's native thumbnail size.
- Never include the reference photo path in the prompt itself — the user attaches the photo separately.
- Never allow more than 6 words of text, 5 is ideal, 3 is best.
- Face must always be a visible focal point. No face-hidden compositions.
- Never use em dashes.
- British English unless voice.md specifies otherwise.
- If brand-kit.md is in the project, read it and use exact brand colours.
- Recommend the user keep a consistent thumbnail style across videos for channel recognition.
| 1 | |
| 2 | name youtube-thumbnail |
| 3 | description > |
| 4 | Generate a branded YouTube thumbnail from a video title. Uses a reference photo of the creator, high-CTR thumbnail principles, and brand colours to produce a ready-to-generate image prompt for Gemini. Use this skill whenever the user says "thumbnail", "youtube thumbnail", "build me a thumbnail", or wants a video cover image before writing the script. The thumbnail-first workflow mirrors the graphic-first approach for LinkedIn: sells the video before anyone hears a word of the script. |
| 5 | |
| 6 | |
| 7 | # YouTube Thumbnail |
| 8 | |
| 9 | ## Codex and Claude runtime |
| 10 | |
| 11 | Use this skill in Codex or Claude with the tools actually available in the current task. `AskUserQuestion` examples describe the questions, not a required API: use an available question tool within its limits, or ask in chat. Reuse answers and source material already supplied. |
| 12 | Work in the user-selected project. Read its `about-me.md`, `voice.md` and relevant brand files before personalised work. Confirm the intended author if files conflict or contain starter defaults. Ask for missing facts or run `voice-builder`; never inherit the maintainer's identity, accounts or private files. |
| 13 | Resolve bundled `references/` relative to this skill folder. For an explicitly requested profile refresh, read and update the canonical `about-me.md`, `voice.md` or `newsletter-voice.md` in place, preserving unrelated user facts and rules. Consumers must reread those canonical files. Use a new filename only for new deliverables that would collide with unrelated existing files. Installation alone never starts an interview or writes files. Do not write persistent learnings unless requested. |
| 14 | Use supplied evidence first. Verify external claims through available search/source tools when needed. If a source or integration is unavailable, name the missing capability and offer supplied text/export input. Never invent facts, first-person experience, metrics or a successful tool run. |
| 15 | Connect only services needed for the chosen route through the user's existing account. Never print credentials or overwrite connections. Drafting, saving and reviewing do not authorise publishing, sending messages or changing accounts. |
| 16 | |
| 17 | ## Visual completion state |
| 18 | |
| 19 | This skill's image prompts are **prompt-ready**, not generated or visually reviewed assets. Keep its named Gemini workflow unless the user requests another generator. A missing image service does not block writing a prompt. When images are supplied or generated, open and inspect each export at full size and feed size (about 360px wide, 320px for thumbnails). Check exact copy, dimensions, clipping, legibility, brand colours, font appearance, logos and reference fidelity. Fix and re-inspect failed exports. Record any unavailable export or inspection as pending. An image prompt or raster export is not an editable design file. |
| 20 | |
| 21 | ## CRITICAL: Auto-start on load |
| 22 | |
| 23 | When this skill triggers, go straight to Step 1. |
| 24 | |
| 25 | ## Step 1. Gather inputs |
| 26 | |
| 27 | Check the project for a reference photo config. Look in this order: |
| 28 | |
| 29 | `thumbnail-config.md` in the project root |
| 30 | `brand-kit.md` — look for a reference image path and brand colours |
| 31 | `about-me.md` — for the creator's name and positioning |
| 32 | |
| 33 | If a reference photo path is stored, pre-fill it. Otherwise ask: |
| 34 | |
| 35 | > Upload or provide the path to the reference photo of yourself you want used in the thumbnail. Ideally a clear headshot with distinctive lighting and expression you plan to reuse across videos for brand consistency. |
| 36 | |
| 37 | Then call AskUserQuestion: |
| 38 | |
| 39 | |
| 40 | [ |
| 41 | { |
| 42 | "question": "What is the video title?", |
| 43 | "header": "Title", |
| 44 | "multiSelect": false, |
| 45 | "options": [ |
| 46 | {"label": "I will type the title", "description": "Type the full working title"}, |
| 47 | {"label": "Suggest one", "description": "Given the topic, propose 3 click-worthy titles first"} |
| 48 | ] |
| 49 | }, |
| 50 | { |
| 51 | "question": "Emotional tone?", |
| 52 | "header": "Tone", |
| 53 | "multiSelect": false, |
| 54 | "options": [ |
| 55 | {"label": "Shock / surprise", "description": "Wide eyes, open mouth, bold reaction"}, |
| 56 | {"label": "Curious / thinking", "description": "Slight smirk, raised eyebrow, gaze off-frame"}, |
| 57 | {"label": "Confident / direct", "description": "Eye contact, calm, assertive"}, |
| 58 | {"label": "Frustrated / strong take", "description": "Intense gaze, hand gesture, tension"} |
| 59 | ] |
| 60 | } |
| 61 | ] |
| 62 | |
| 63 | |
| 64 | Confirm the title and promise against the video’s supplied content. Do not invent a result, imply a demonstration exists, or use an unprovided face or brand mark. A missing reference photo leaves photo-based generation pending, while a composition brief can still be drafted. |
| 65 | |
| 66 | ## Step 2. Apply thumbnail best practices |
| 67 | |
| 68 | Every thumbnail must follow these rules: |
| 69 | |
| 70 | **Face fills 30 to 50 percent** of the frame. Readable at small sizes. |
| 71 | **3 to 5 words maximum** of large text. 6 if absolutely necessary. |
| 72 | **Two colours dominate**. Brand primary + one high-contrast accent (yellow, red, cyan work well). |
| 73 | **One clear focal element** besides the face. Tool logo, bold number, arrow, or prop. |
| 74 | **High contrast** between face, text, and background. Test by squinting. |
| 75 | **Text is not a sentence**. It is a hook phrase. Examples: "I fired my team", "Claude can now...", "Don't do this". |
| 76 | **No small text, no logos bottom-right** (watch time icon sits there). |
| 77 | |
| 78 | ## Step 3. Build the thumbnail brief |
| 79 | |
| 80 | Output a concise brief the user can review: |
| 81 | |
| 82 | |
| 83 | THUMBNAIL BRIEF: [video title] |
| 84 | |
| 85 | Composition: [face position, % of frame, direction of gaze] |
| 86 | Text: "[hook phrase, 3-5 words]" |
| 87 | Text placement: [left, right, top, wraps around face] |
| 88 | Colour palette: [primary hex], [accent hex], [background hex] |
| 89 | Supporting element: [logo / prop / arrow / number] |
| 90 | Emotional tone: [tone from Step 1] |
| 91 | |
| 92 | |
| 93 | Then ask: |
| 94 | |
| 95 | > Here's the brief. Say "generate" to output the image prompt or tell me what to change. |
| 96 | |
| 97 | ## Step 4. Output the Gemini prompt |
| 98 | |
| 99 | Once approved, output the image generation prompt in a code block: |
| 100 | |
| 101 | |
| 102 | Using the attached reference photo of me, generate a YouTube thumbnail at 1280 x 720 pixels (16:9). |
| 103 | |
| 104 | Composition: |
| 105 | - Place me [left / right / centre] filling [30-50]% of the frame |
| 106 | - My expression: [tone details — e.g., shocked with wide eyes and open mouth] |
| 107 | - My gaze: [direction — e.g., looking directly at camera / looking off-frame toward the text] |
| 108 | |
| 109 | Text: |
| 110 | - Display "[hook phrase]" in large bold sans-serif typography |
| 111 | - Text colour: [hex] |
| 112 | - Text outline: [colour, thickness for readability] |
| 113 | - Text placement: [specific area] |
| 114 | |
| 115 | Colour palette: |
| 116 | - Primary: [hex] |
| 117 | - Accent: [hex] |
| 118 | - Background: [hex] — [describe treatment: flat, gradient, blurred scene, etc.] |
| 119 | |
| 120 | Supporting element: [specific description of the supporting visual] |
| 121 | |
| 122 | Constraints: |
| 123 | - Face must be clear and sharp |
| 124 | - Text must be readable at 320px wide (YouTube mobile size) |
| 125 | - No watermarks, no YouTube UI elements, no bottom-right corner text |
| 126 | - High contrast between face, text, and background |
| 127 | |
| 128 | |
| 129 | Tell the user: |
| 130 | |
| 131 | > Paste this into a new Gemini chat, attach your reference photo, enable Create Image, and select Nano Banana. Generate at 1280x720. |
| 132 | |
| 133 | ## Step 5. Offer the next move |
| 134 | |
| 135 | > Want me to outline the video next? Hook, mid, CTA from the thumbnail. |
| 136 | |
| 137 | ## Rules |
| 138 | |
| 139 | 1280x720 pixels (16:9). YouTube's native thumbnail size. |
| 140 | Never include the reference photo path in the prompt itself — the user attaches the photo separately. |
| 141 | Never allow more than 6 words of text, 5 is ideal, 3 is best. |
| 142 | Face must always be a visible focal point. No face-hidden compositions. |
| 143 | Never use em dashes. |
| 144 | British English unless voice.md specifies otherwise. |
| 145 | If brand-kit.md is in the project, read it and use exact brand colours. |
| 146 | Recommend the user keep a consistent thumbnail style across videos for channel recognition. |
| 147 |
Discussion
Browse more free Claude skills or everything in Content creator.