Instagram Carousel Planner

Plan an Instagram carousel slide by slide, up to 10 slides, with a hook slide that opens a loop, value slides that front-load the payoff, and a payoff slide that earns the save and follow.

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit sergebulaev/instagram-skills/.codex-marketplace/instagram-skills/skills/ig-carousel-planner#main ~/.claude/skills/ig-carousel-planner

For one project only, change the path to .claude/skills/ig-carousel-planner.

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.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text124 lines
ig-carousel-planner/SKILL.md124 lines6.8 KBpushed 13d agoRawView on GitHub

Instagram Carousel Planner

Plan a carousel that gets swiped to the end and saved. The whole game is slide 1 (the swipe-earning hook) and the last slide (the saveable payoff). This skill maps every slide, writes the on-image text, and drafts the caption that frames it.

When to use

  • User wants to turn a topic or notes into a multi-slide carousel
  • User has a list, a framework, or a transformation to teach
  • User wants a slide-by-slide structure, not just a caption

Formulas this skill uses (carousel shapes)

Code Formula Primary goal Best for
IG5 Listicle Carousel saves a numbered teaching list, one item per slide
IG6 Before/After Transformation saves, follows proof of a result with the steps between
IG7 Myth-Buster shares correcting beliefs your niche holds
IG8 Steal-This Framework saves a named, repeatable framework

Full skeletons in ../../references/hook-formulas.md.

Slide architecture (the 10-slide spine)

A carousel is 2-10 slides (API limit). The reliable spine:

Slide Role
1 (hook) the promise + an open loop ("most miss #4"). Earns the swipe. Big text, one idea.
2-3 the strongest value, front-loaded (swipe-through decays with depth).
4 to N-1 one point per slide, each standing alone, each readable in 2 seconds.
N (payoff) the one-slide summary (the saveable artifact) + one clear ask (save / follow).

6-10 slides is the sweet spot for a teaching carousel. Fewer than 4 is usually a single image. See references/slide-architecture.md for per-formula spines.

Steps

Voice profile first (all drafts). If ../../references/voice-profile.md has filled: yes, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that ig-humanizer --mode profile can learn their voice from a few posts, then proceed with the generic voice rules.

  1. Gather inputs. Topic, the list/framework/transformation, target audience, and the goal (saves / shares / follows).
  2. Pick the formula. Use the goal table; suggest 2-3 that fit and let the user choose.
  3. Set the slide count. Match it to the real content (6-10 typical). Never pad to hit 10; viewers feel filler and bail.
  4. Write slide 1. The promise plus the loop. Big, single-idea on-image text. Front-load a number if one fits.
  5. Map the value slides. Put the strongest point on slide 2 or 3. One point per slide, each able to stand alone. Draft the on-image text for each (keep it short, it has to read in 2 seconds on a 4:5 frame).
  6. Write the payoff slide. A one-slide recap that is worth saving on its own, plus a single ask (save it / follow for more).
  7. Write the caption. The caption supports the carousel (it can be short), restates the hook for the fold, and carries the hashtags. Hand off to ig-hashtag-strategist or apply the 3-5 sized set.
  8. Humanizer pass on the on-image text and caption. Scrub 2026 AI vocab by density (per slide, per caption paragraph), cap em dashes (at most one per slide, about one per 100 words in the caption; never swap one for a period), break stacked triads and reveal bridges. Slides are short by design: never chop or pad a slide for rhythm. Canonical rules: ig-humanizer V3.
  9. Approval card. Show: formula, slide-by-slide outline with each slide's text, the caption, hashtag set, primary goal, and a reminder that the user supplies 2-10 images (all images, no mixed media) in this order.
  10. On approval, publish with media. Call lib.publish(kind="carousel", draft_text=<approved caption>, target_url="https://www.instagram.com/", media=[<slide image paths in order>], platforms=[<INSTAGRAM_PLATFORM_ID>], scheduled_time=<iso_or_None>). The wrapper uploads each image in order and schedules. With no media or no Publora key it returns the plan as a copy-paste block plus the slide order.

Hard rules

Global voice rules: see root SKILL.md Voice rules. Additional skill-specific rules:

  • Slide 1 is a promise with an open loop, never a bare title.
  • Front-load value to slides 2-3; never bury the best point at the end.
  • One point per slide, readable in 2 seconds on a portrait 4:5 frame.
  • 2-10 slides only. Never pad to a round number.
  • All images, no mixed media (the API rejects an image+video carousel).
  • The last slide must earn the save with a one-slide summary and one ask.

Anti-patterns (skill will refuse)

  • A title-only slide 1 with no promise or loop.
  • A 10-slide carousel padded from a 4-point idea.
  • The strongest point saved for the final slide.
  • Three competing CTAs on the payoff slide.
  • Mixing images and a video in one carousel.
  • On-image walls of text that cannot be read in a swipe.
  • Em dashes above the cap (more than one on a slide), AI vocab clusters, stacked or hollow rule-of-three.
  • "The result?" reveals and staccato stacks added for punch.

Resources

  • ../../references/hook-formulas.md - the carousel formulas (IG5-IG8) with skeletons
  • ../../references/algorithm-heuristics.md - 2026 carousel ranking and swipe-through rules
  • ../../references/hashtag-strategy.md - the 3-5 sized hashtag recipe
  • ../../references/media-workflow.md - uploading 2-10 images in order
  • references/slide-architecture.md - per-formula slide spines and on-image text rules

Optional illustration

Offer a generated image when a visual would lift reach. Draft a prompt and call lib.illustrate(prompt, kind="carousel"), pulling brand handle/color from Voice & Brand Profile section 6 for a pixel-exact overlay. Show the returned url + cost, attach it as your Instagram media via media_urls=[url] in one shot (Publora fetches the hosted URL server-side): a single image posts as a photo, and the carousel planner can pass 2-10 URLs for a carousel. For a Reel cover instead, set platformSettings.instagram.coverUrl. Full workflow (incl. quote-cards): ../ig-humanizer/sub-skills/illustration.md. No Pixfaro key -> it drafts the prompt for you to generate manually.

Related skills

  • ig-caption-writer - when the idea is a single image, not a carousel
  • ig-hashtag-strategist - build the sized hashtag set
  • ig-humanizer - scrub the on-image text and caption
  • ig-hook-extractor - reverse-engineer a carousel you admire
1---
2name: ig-carousel-planner
3description: "Plan an Instagram carousel slide by slide, up to 10 slides, with a hook slide that opens a loop, value slides that front-load the payoff, and a payoff slide that earns the save and follow. Picks a 2026 carousel formula (listicle, before/after, myth-buster, framework) by goal (saves, shares, follows), drafts each slide's text plus the caption, then publishes the images you supply via Publora. Use to structure a multi-slide carousel. Not for single-image captions (use ig-caption-writer)."
4---
5 
6# Instagram Carousel Planner
7 
8Plan a carousel that gets swiped to the end and saved. The whole game is slide 1
9(the swipe-earning hook) and the last slide (the saveable payoff). This skill
10maps every slide, writes the on-image text, and drafts the caption that frames
11it.
12 
13## When to use
14 
15- User wants to turn a topic or notes into a multi-slide carousel
16- User has a list, a framework, or a transformation to teach
17- User wants a slide-by-slide structure, not just a caption
18 
19## Formulas this skill uses (carousel shapes)
20 
21| Code | Formula | Primary goal | Best for |
22|---|---|---|---|
23| IG5 | Listicle Carousel | saves | a numbered teaching list, one item per slide |
24| IG6 | Before/After Transformation | saves, follows | proof of a result with the steps between |
25| IG7 | Myth-Buster | shares | correcting beliefs your niche holds |
26| IG8 | Steal-This Framework | saves | a named, repeatable framework |
27 
28Full skeletons in `../../references/hook-formulas.md`.
29 
30## Slide architecture (the 10-slide spine)
31 
32A carousel is 2-10 slides (API limit). The reliable spine:
33 
34| Slide | Role |
35|---|---|
36| **1 (hook)** | the promise + an open loop ("most miss #4"). Earns the swipe. Big text, one idea. |
37| **2-3** | the strongest value, front-loaded (swipe-through decays with depth). |
38| **4 to N-1** | one point per slide, each standing alone, each readable in 2 seconds. |
39| **N (payoff)** | the one-slide summary (the saveable artifact) + one clear ask (save / follow). |
40 
416-10 slides is the sweet spot for a teaching carousel. Fewer than 4 is usually a
42single image. See `references/slide-architecture.md` for per-formula spines.
43 
44## Steps
45 
46**Voice profile first (all drafts).** If `../../references/voice-profile.md` has `filled: yes`, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that `ig-humanizer --mode profile` can learn their voice from a few posts, then proceed with the generic voice rules.
47 
481. **Gather inputs.** Topic, the list/framework/transformation, target audience,
49 and the goal (saves / shares / follows).
502. **Pick the formula.** Use the goal table; suggest 2-3 that fit and let the
51 user choose.
523. **Set the slide count.** Match it to the real content (6-10 typical). Never
53 pad to hit 10; viewers feel filler and bail.
544. **Write slide 1.** The promise plus the loop. Big, single-idea on-image text.
55 Front-load a number if one fits.
565. **Map the value slides.** Put the strongest point on slide 2 or 3. One point
57 per slide, each able to stand alone. Draft the on-image text for each (keep it
58 short, it has to read in 2 seconds on a 4:5 frame).
596. **Write the payoff slide.** A one-slide recap that is worth saving on its own,
60 plus a single ask (save it / follow for more).
617. **Write the caption.** The caption supports the carousel (it can be short),
62 restates the hook for the fold, and carries the hashtags. Hand off to
63 `ig-hashtag-strategist` or apply the 3-5 sized set.
648. **Humanizer pass** on the on-image text and caption. Scrub 2026 AI vocab
65 by density (per slide, per caption paragraph), cap em dashes (at most one
66 per slide, about one per 100 words in the caption; never swap one for a
67 period), break stacked triads and reveal bridges. Slides are short by
68 design: never chop or pad a slide for rhythm. Canonical rules:
69 `ig-humanizer` V3.
709. **Approval card.** Show: formula, slide-by-slide outline with each slide's
71 text, the caption, hashtag set, primary goal, and a reminder that the user
72 supplies 2-10 images (all images, no mixed media) in this order.
7310. **On approval, publish with media.** Call `lib.publish(kind="carousel",
74 draft_text=<approved caption>, target_url="https://www.instagram.com/",
75 media=[<slide image paths in order>], platforms=[<INSTAGRAM_PLATFORM_ID>],
76 scheduled_time=<iso_or_None>)`. The wrapper uploads each image in order and
77 schedules. With no media or no Publora key it returns the plan as a
78 copy-paste block plus the slide order.
79 
80## Hard rules
81 
82Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific
83rules:
84 
85- Slide 1 is a promise with an open loop, never a bare title.
86- Front-load value to slides 2-3; never bury the best point at the end.
87- One point per slide, readable in 2 seconds on a portrait 4:5 frame.
88- 2-10 slides only. Never pad to a round number.
89- All images, no mixed media (the API rejects an image+video carousel).
90- The last slide must earn the save with a one-slide summary and one ask.
91 
92## Anti-patterns (skill will refuse)
93 
94- A title-only slide 1 with no promise or loop.
95- A 10-slide carousel padded from a 4-point idea.
96- The strongest point saved for the final slide.
97- Three competing CTAs on the payoff slide.
98- Mixing images and a video in one carousel.
99- On-image walls of text that cannot be read in a swipe.
100- Em dashes above the cap (more than one on a slide), AI vocab clusters, stacked or hollow rule-of-three.
101- "The result?" reveals and staccato stacks added for punch.
102 
103## Resources
104 
105- `../../references/hook-formulas.md` - the carousel formulas (IG5-IG8) with skeletons
106- `../../references/algorithm-heuristics.md` - 2026 carousel ranking and swipe-through rules
107- `../../references/hashtag-strategy.md` - the 3-5 sized hashtag recipe
108- `../../references/media-workflow.md` - uploading 2-10 images in order
109- `references/slide-architecture.md` - per-formula slide spines and on-image text rules
110 
111## Optional illustration
112 
113Offer a generated image when a visual would lift reach. Draft a prompt and call
114`lib.illustrate(prompt, kind="carousel")`, pulling brand handle/color from Voice &
115Brand Profile section 6 for a pixel-exact overlay. Show the returned `url` + `cost`,
116attach it as your Instagram media via `media_urls=[url]` in one shot (Publora fetches the hosted URL server-side): a single image posts as a photo, and the carousel planner can pass 2-10 URLs for a carousel. For a Reel cover instead, set `platformSettings.instagram.coverUrl`. Full workflow (incl. quote-cards):
117`../ig-humanizer/sub-skills/illustration.md`. No Pixfaro key -> it drafts the prompt for you to generate manually.
118## Related skills
119 
120- `ig-caption-writer` - when the idea is a single image, not a carousel
121- `ig-hashtag-strategist` - build the sized hashtag set
122- `ig-humanizer` - scrub the on-image text and caption
123- `ig-hook-extractor` - reverse-engineer a carousel you admire
124 

Discussion

Alternatives

Also in Platform posts
Instagram Caption WriterDraft an Instagram caption with the hook in the first 125 characters, a skimmable body, and one clear CTA, using a 2026 hook formula chosen by goal (saves, shares, comments, follows). Runs the humanizer pass and, on approval, publishes with the image or video you supply via the Publora media flow. Use to caption a single image or a Reel. Not for slide-by-slide carousels (use ig-carousel-planner) or auditing a draft (use ig-humanizer --mode audit).Creator · MITLinkedIn Carousel CreatorCreate LinkedIn carousel posts as high-quality PNG images. Design informational multi-slide posts like "5 AI GTM workflows" with consistent styling, then automatically screenshot each slide at LinkedIn's optimal 1080x1080px format.Creator · MITInstagram Content PlannerGenerate a weekly Instagram content plan from a theme, audience, and content pillars. Produces a per-day mix of Reels, carousels, single images, and stories, each with a hook formula, angle, posting time, and primary goal, plus a weekly saves-and-shares goal (the 2026 lever), a story cadence, and a balance check across saves, shares, comments, and follows. Use to plan a week instead of ad-hoc posting. Not for drafting one caption (use ig-caption-writer) or one carousel (use ig-carousel-planner).Creator · MITInstagram Hashtag StrategistBuild a sized Instagram hashtag set for a post using the 2026 reality that 3 to 5 well-chosen tags beat 30 random ones. Sizes each tag as niche (under 50k posts), mid (50k to 500k), or broad (500k+), then assembles a 2-3 niche, 1-2 mid, 0-1 broad mix that a small or mid account can actually rank in, matched to the post content and rotated to avoid spam patterns. Use to choose hashtags for a caption, carousel, or Reel. Not for writing the caption itself (use ig-caption-writer).Creator · MIT