Caption Writer

social-media-skills/skills/skills/caption-writer

by social-media-skills6e30eeb2f6736bda8683b6bbaa674af3641d7945MITListed Oct 9, 2026Updated Oct 9, 2026

Use to write platform-native social media captions (post copy) in the brand's voice — the words that accompany a post on Instagram, LinkedIn, TikTok, Facebook, X/Twitter, Threads, Pinterest, YouTube, or Bluesky. Run when the user says "write a caption," "caption this," "post copy," "write the copy for this photo/video/Reel," "IG caption," "what should I write for this post," or needs the words to go with a visual. Reads brand-profile and voice first so captions sound like the brand, not generic AI. For long-form LinkedIn thought-leadership posts use linkedin-post-writer; for X/Threads multi-post threads use thread-writer; for video scripts use the video skills. This skill writes the caption itself.

Instructions only

Caption Writer

A caption is not a description of the post. It's the part of the post that does the work — it stops the scroll, earns attention, and drives one action. Done well it carries the post; done generically it sinks even great visuals under emoji and hashtag noise.

Two principles run through everything here:

  1. The first line is the whole game. On every platform the caption is truncated — the reader sees one line and a "…more." If that line doesn't earn the tap, the rest is never read. Write the first line like its only job is to win the second line.
  2. Every caption serves one goal. Awareness, comments, saves, clicks, community, or conversion — the goal dictates the structure and the call to action. A caption "to get engagement" is a caption with no goal.

Step 0 — Read the foundation first (required)

Load brand-profile.md and voice.md before writing a word. The voice fingerprint, the "never" list, and the brand guardrails are non-negotiable. A caption that doesn't sound like them is a failure even if it's clever. If neither exists, run brand-profile (and voice-builder if samples exist) first.

Step 1 — Establish four inputs

Don't write until you know these. Infer what you can; ask only what you can't:

  • Platform — the mechanics are different on each (see references/platforms.md).
  • The asset — what's in the photo/video/carousel? The caption complements the visual; it shouldn't narrate what the eye already sees.
  • The goal — awareness, comments, saves, clicks/traffic, community, or conversion.
  • The topic / point — what this specific post is about, and the one idea it lands.

If the user gives you only "write a caption for this," ask at most one or two questions (usually platform + goal) and proceed.

Step 2 — Choose the format, then the goal-driven structure

Pick the caption format that fits the asset and point — story, value/how-to, hot take, question, behind-the-scenes, social proof, announcement, relatable (see references/formats.md). Then shape it with the goal-driven structure and CTA from references/frameworks.md. Format gives it a recognizable shape; goal gives it a job.

Step 3 — Write the first line first

Spend disproportionate effort here. Draft 3–5 candidate opening lines and pick the one that most makes a stranger need the next line — within the platform's preview cutoff. Never waste the first line on a greeting, a hashtag, "Happy Monday!", or a restatement of the image. See references/first-line.md.

Step 4 — Build the body and one CTA

  • Body: deliver the value or story the first line promised, in the brand's voice, at the right length for the platform and goal (short isn't always better — match it). Use line breaks and whitespace where the platform rewards scannability.
  • CTA: exactly one, matched to the goal ("save this for your next launch," "what would you add?", "link in bio"). Two CTAs split the action and kill both. Respect any "never hard-sell here" guardrails from the brand profile.

Step 5 — Mechanics: hashtags, links, formatting

Apply the platform's current norms from references/platforms.md: how many hashtags (and whether to use any), where links go and whether they hurt reach, line-break rendering, and the ideal length. Getting mechanics wrong makes a good caption underperform.

Step 6 — Deliver options, recommend one

Give the user 2–3 distinct caption options (genuinely different angles or formats, not the same caption reworded), then recommend one with a one-line rationale tied to the goal. People choose faster from real alternatives than from a single take.

Quality bar — self-check before delivering

  • Does the first line stop the scroll on its own, inside the preview cutoff?
  • Does it sound like them — fingerprint hit, "never" list respected, banned words absent?
  • Is there one clear CTA matched to the goal?
  • Does the caption complement the asset rather than describe it?
  • Are hashtags/links/length correct for the platform?
  • Would a real person stop, read, and act — or scroll past?

If the first line is weak, rewrite it before anything else. It's 80% of the result.

Edge cases

  • No asset described: ask what's in it, or write a caption that works for the stated topic and flag that the first line may need tuning to the visual.
  • Multiple platforms requested: don't paste the same caption everywhere. Adapt the hook, length, hashtags, and CTA to each platform's mechanics (see cross-platform-repurposing for doing this at scale).
  • Regulated/sensitive brand: apply the brand profile's compliance guardrails — no forbidden claims, required disclaimers, careful CTAs.
  • Carousel / multi-image: the caption supports the swipe — the first line should pull people into slide 1; consider a "keep reading / swipe" nudge only if it fits the voice.
  • Link-driven goal on a no-link platform (e.g., Instagram feed): route to "link in bio" and say so; don't write a clickable-link CTA where links aren't clickable.
  • Very short-form platforms (X, Threads, Bluesky): the caption is the whole post — lead with the point, cut everything else.

Related skills

  • brand-profile, voice-builder — read first; supply voice and guardrails.
  • hook-writer — for deeper work on the opening hook.
  • linkedin-post-writer, thread-writer — specialized long-form / thread copy.
  • hashtag-strategy — for a fuller hashtag system.
  • cross-platform-repurposing — adapt one caption across many platforms.
  • scheduling-and-queue — push the finished caption to WoopSocial to schedule.

References

  • references/platforms.md — per-platform caption mechanics (limits, fold, hashtags, links).
  • references/frameworks.md — caption structure, goal→structure mapping, length, CTA library.
  • references/formats.md — caption formats/archetypes and when to use each.
  • references/first-line.md — opening-line craft; winning the "…more" tap.
  • references/examples.md — worked captions across platforms and goals.

Source and attribution

Source:social-media-skills/skillsinskills/caption-writerat commit6e30eeb

License: MIT

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal

More from social-media-skills/skills

Youtube Shorts

social-media-skills

Drafts shootable YouTube Shorts scripts using a retention-focused framework, with publishing routed to a scheduling tool.

Marketing & SalesOct 9, 2026

Youtube Publishing And Metadata

social-media-skills

The YouTube publish-metadata skill. Use when someone wants to "write a YouTube title/description," "set tags/category/privacy," "optimize YouTube SEO/metadata," set made-for-kids, or publish a YouTube video via WoopSocial. Writes the metadata (title, description+chapters, tags) and sets category/privacy/madeForKids — YouTube is a search engine, so metadata is the launchpad, and madeForKids is a COPPA/FTC legal flag set truthfully. Uses the INDEX framework. Reads brand-profile + goals-and-kpis + the script/video first. The video file + script are inputs (not WoopSocial); the thumbnail and A/B title testing are native YouTube Studio; WoopSocial publishes via the YouTube fields; metrics never fabricated. Distinct from youtube-long-form/youtube-shorts (the script) and thumbnail-design (the thumbnail).

Awaiting classificationOct 9, 2026

Youtube Long Form

social-media-skills

The growth engine for YouTube long-form video in 2026. Use when someone asks to "grow my YouTube channel," "get more views on my videos," "plan/script a YouTube video," "improve my CTR or retention," "why did my video flop," or wants a long-form strategy. Produces packaging concepts + scripts; the human films/edits/designs the thumbnail; publishing routes through scheduling-and-queue -> WoopSocial; analytics and session features live in YouTube Studio. The opposite engine from, and sibling to, youtube-shorts.

Awaiting classificationOct 9, 2026

Voice Builder

social-media-skills

Use to build a reusable voice guide (voice.md) by analyzing a person's or brand's ACTUAL writing samples — so every other social skill can write in their exact voice instead of generic AI prose. Run this when the user says "build my voice," "sound like me," "capture my tone," "analyze my writing," "train on my posts," "ghostwrite in my voice," or when content keeps coming out off-voice or generic. Requires real writing samples; if there are none, use brand-profile's voice interview instead. Works for anyone: founders, creators, executives who are ghostwritten, and brands. Read brand-profile first; this skill produces the deeper voice.md that complements it. This skill DEFINES the voice; to apply it per piece — tone shifts, style edits, de-AI-ing a draft — use writing-style-and-tone.

Awaiting classificationOct 9, 2026

Writing Style And Tone

social-media-skills

Applies writing craft — style, tone and edit passes — to make drafts read as human and match a brand voice.

Writing & ContentOct 9, 2026

Viral Reverse Engineering

social-media-skills

Use to reverse-engineer why a piece of content went viral (or overperformed) — yours or someone else's — and extract the repeatable mechanism to apply to your own content. Run when the user says "why did this go viral," "break down this viral post/video," "reverse engineer," "what made this work," or wants to learn from viral content. Sources the observable signal first (intake, transcript, screenshots, top comments, visible stats — an agent usually can't watch a video from a link) and never fabricates what it can't see. Reads brand-profile and audience first, deconstructs the piece layer by layer, isolates the real driver, runs a replicability check, extracts the transferable principle, and applies it to the user's niche via the content skills. Mechanism, never a copy; flags non-replicable virality; visible signals only (no WoopSocial analytics). Single-POST teardown only: for the account-level competitive landscape use competitor-analysis; for riding a live trend use trend-jacking.

Awaiting classificationOct 9, 2026