Instagram Hashtag Strategist
Build a sized Instagram hashtag set for a post using the 2026 reality that 3 to 5 well-chosen tags beat 30 random ones.
How to use it
- Hit Copy the whole skill.
- 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. - Describe your job in plain words. The AI follows the skill from there.
npx degit sergebulaev/instagram-skills/.codex-marketplace/instagram-skills/skills/ig-hashtag-strategist#main ~/.claude/skills/ig-hashtag-strategistFor one project only, change the path to .claude/skills/ig-hashtag-strategist.
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.
Show the full text97 lines
Instagram Hashtag Strategist
Pick 3-5 hashtags that actually help, sized so the post can rank. The 30-tag wall is dead: in 2026 hashtags work as topic labels, and a small account ranks in niche tags, not in million-post broad ones. This skill builds the sized set.
When to use
- User has a caption, carousel, or Reel and needs hashtags
- User is still posting 20-30 generic tags and wants the 2026 approach
- User wants tags sized to where their account can actually rank
The model: size, not volume
A tag's size is its total post count. The strategy is a mix so the post ranks in the small tags while touching the bigger ones.
| Tier | Post count | Role | Use |
|---|---|---|---|
| Niche | under 50k | where a small/mid account can actually rank for hours | 2-3 |
| Mid | 50k - 500k | enough audience, beatable competition | 1-2 |
| Broad | 500k+ | a brief category-label touch, ranks for minutes | 0-1 |
Default: 3-5 total. Full reasoning in ../../references/hashtag-strategy.md.
Steps
- Get the post. The caption, carousel topic, or Reel subject, plus the target audience and the account's rough size (so the niche/mid split fits).
- Extract topics. Pull the 3-5 real topics the post is about (the subject, the niche community, the format, the outcome).
- Generate candidates per tier. For each topic, propose niche, mid, and
broad candidates. Niche tags are specific and long-tail
(
#notionforfreelancers); broad tags are single common words (#marketing). - Size each candidate. Estimate the tier from specificity (the API does not
expose counts, so use judgment and tell the user to verify counts in the app's
search). Flag any obviously generic or flag-prone tags
(
#follow4follow,#like4like) to drop. - Assemble the set. 2-3 niche + 1-2 mid + 0-1 broad, total 3-5. Drop the broad slot if nothing genuinely fits. Every tag must match the content.
- Check the match. Reject any tag that is popular but off-topic; a mismatch mistrains the recommendation engine and lowers reach.
- Rotate. Tell the user to vary the set per topic, not reuse one block on every post (identical sets across many posts read as automation).
- Output. The 3-5 set, each tagged with its tier and a one-line why, plus placement guidance (end of caption or first comment).
Output format
Sized set (4 tags):
#notionforfreelancers niche the exact community this post serves
#freelanceworkflow niche long-tail, low churn, rankable
#productivitytips mid warm relevant audience, beatable
#notion broad category label, one touch
Placement: end of the caption or the first comment. Rotate the niche tags per topic.
Hard rules
Global voice rules: see root SKILL.md Voice rules. Additional skill-specific
rules:
- 3-5 tags total. Never output a 30-tag block.
- Every tag must describe the actual content. No popular-but-off-topic tags.
- At most one broad tag; drop it if nothing fits.
- Flag and remove engagement-farm tags (
#follow4follow,#like4like) and any known flagged tags. - Hashtags go at the end of the caption or in the first comment, never mid-sentence.
- Rotate sets per topic; do not hand the user one block to paste forever.
Anti-patterns (skill will refuse)
- Outputting 20-30 hashtags.
- A "viral hashtag pack" of generic broad tags.
- Tags that do not match the post to chase a bigger audience.
- Hiding 30 tags behind dots to "look clean".
- All-broad sets a small account cannot rank in.
Resources
../../references/hashtag-strategy.md- the full 2026 sizing model and recipe../../references/algorithm-heuristics.md- why sends and saves, not hashtag feeds, drive reach
Related skills
ig-caption-writer- writes the caption the hashtags attach toig-carousel-planner- the carousel whose caption carries the setig-content-planner- rotate tag themes across a week
| 1 | |
| 2 | name ig-hashtag-strategist |
| 3 | description "Build 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)." |
| 4 | |
| 5 | |
| 6 | # Instagram Hashtag Strategist |
| 7 | |
| 8 | Pick 3-5 hashtags that actually help, sized so the post can rank. The 30-tag wall |
| 9 | is dead: in 2026 hashtags work as topic labels, and a small account ranks in |
| 10 | niche tags, not in million-post broad ones. This skill builds the sized set. |
| 11 | |
| 12 | ## When to use |
| 13 | |
| 14 | User has a caption, carousel, or Reel and needs hashtags |
| 15 | User is still posting 20-30 generic tags and wants the 2026 approach |
| 16 | User wants tags sized to where their account can actually rank |
| 17 | |
| 18 | ## The model: size, not volume |
| 19 | |
| 20 | A tag's **size** is its total post count. The strategy is a mix so the post |
| 21 | ranks in the small tags while touching the bigger ones. |
| 22 | |
| 23 | | Tier | Post count | Role | Use | |
| 24 | |---|---|---|---| |
| 25 | | Niche | under 50k | where a small/mid account can actually rank for hours | 2-3 | |
| 26 | | Mid | 50k - 500k | enough audience, beatable competition | 1-2 | |
| 27 | | Broad | 500k+ | a brief category-label touch, ranks for minutes | 0-1 | |
| 28 | |
| 29 | **Default: 3-5 total.** Full reasoning in `../../references/hashtag-strategy.md`. |
| 30 | |
| 31 | ## Steps |
| 32 | |
| 33 | **Get the post.** The caption, carousel topic, or Reel subject, plus the |
| 34 | target audience and the account's rough size (so the niche/mid split fits). |
| 35 | **Extract topics.** Pull the 3-5 real topics the post is about (the subject, |
| 36 | the niche community, the format, the outcome). |
| 37 | **Generate candidates per tier.** For each topic, propose niche, mid, and |
| 38 | broad candidates. Niche tags are specific and long-tail |
| 39 | (`#notionforfreelancers`); broad tags are single common words (`#marketing`). |
| 40 | **Size each candidate.** Estimate the tier from specificity (the API does not |
| 41 | expose counts, so use judgment and tell the user to verify counts in the app's |
| 42 | search). Flag any obviously generic or flag-prone tags |
| 43 | (`#follow4follow`, `#like4like`) to drop. |
| 44 | **Assemble the set.** 2-3 niche + 1-2 mid + 0-1 broad, total 3-5. Drop the |
| 45 | broad slot if nothing genuinely fits. Every tag must match the content. |
| 46 | **Check the match.** Reject any tag that is popular but off-topic; a mismatch |
| 47 | mistrains the recommendation engine and lowers reach. |
| 48 | **Rotate.** Tell the user to vary the set per topic, not reuse one block on |
| 49 | every post (identical sets across many posts read as automation). |
| 50 | **Output.** The 3-5 set, each tagged with its tier and a one-line why, plus |
| 51 | placement guidance (end of caption or first comment). |
| 52 | |
| 53 | ## Output format |
| 54 | |
| 55 | |
| 56 | Sized set (4 tags): |
| 57 | #notionforfreelancers niche the exact community this post serves |
| 58 | #freelanceworkflow niche long-tail, low churn, rankable |
| 59 | #productivitytips mid warm relevant audience, beatable |
| 60 | #notion broad category label, one touch |
| 61 | |
| 62 | Placement: end of the caption or the first comment. Rotate the niche tags per topic. |
| 63 | |
| 64 | |
| 65 | ## Hard rules |
| 66 | |
| 67 | Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific |
| 68 | rules: |
| 69 | |
| 70 | 3-5 tags total. Never output a 30-tag block. |
| 71 | Every tag must describe the actual content. No popular-but-off-topic tags. |
| 72 | At most one broad tag; drop it if nothing fits. |
| 73 | Flag and remove engagement-farm tags (`#follow4follow`, `#like4like`) and any |
| 74 | known flagged tags. |
| 75 | Hashtags go at the end of the caption or in the first comment, never |
| 76 | mid-sentence. |
| 77 | Rotate sets per topic; do not hand the user one block to paste forever. |
| 78 | |
| 79 | ## Anti-patterns (skill will refuse) |
| 80 | |
| 81 | Outputting 20-30 hashtags. |
| 82 | A "viral hashtag pack" of generic broad tags. |
| 83 | Tags that do not match the post to chase a bigger audience. |
| 84 | Hiding 30 tags behind dots to "look clean". |
| 85 | All-broad sets a small account cannot rank in. |
| 86 | |
| 87 | ## Resources |
| 88 | |
| 89 | `../../references/hashtag-strategy.md` - the full 2026 sizing model and recipe |
| 90 | `../../references/algorithm-heuristics.md` - why sends and saves, not hashtag feeds, drive reach |
| 91 | |
| 92 | ## Related skills |
| 93 | |
| 94 | `ig-caption-writer` - writes the caption the hashtags attach to |
| 95 | `ig-carousel-planner` - the carousel whose caption carries the set |
| 96 | `ig-content-planner` - rotate tag themes across a week |
| 97 |