Instagram话题标签数量指南

把话题标签串和 caption 长度填进来,按平台规则逐条校验:解析、去重、统计标签串字符数,判断有没有超过 Feed/Reels 的 30 条上限与 caption 的 2200 字符上限。默认示例是一组含重复标签的 31 条串,打开就能看到校验结论。被平台限流的违规标签需要联网查询,本页纯前端不联网,明确不判断这一项。

默认已填 31 条含重复标签的示例;另外两个「示例」按钮可载入短例与超限例。
按裸 Enter 即重算;标签字符会计入 caption 的 2200 上限。
按 value 切换上限:Feed/Reels 30、Story 10、评论 5。
原始条数31
去重条数27
重复条数4
最长标签(字符)10
标签串长度198
caption+标签378
清理后标签串:#travel #food #summer #beach #sunset #sea #photo #like #instagood #trip #vacation #fun #nature #happy #blue #sky #ocean #sand #hotel #foodie #wanderlust #explore #view #relax #weekend #friends #life

提示:标签框按 Ctrl/Cmd + Enter 校验;数值框按裸 Enter 重算;切换发布位置立即刷新。

平台规则对照表(12 行)

规则项取值 / 要求说明
Feed 上限30硬上限
Reels 上限30同 Feed
Story 上限10故事
评论上限5建议
caption 上限2200含标签
建议数3~5高相关
标签字符集字母数字下划线无空格标点
重复标签去重后变少31→27
banned hashtag需联网查本页不判
计入 caption是并入 2200
# 作用只作前缀不算标签字符
大小写不敏感统一小写

规则表是常量说明,不是当前输入的实算结果;随输入变化的是上方卡片、报告与清理后标签串。

使用方法

打开页面时标签框已经填好一组 31 条含重复标签的示例,caption 长度填的是 180,发布位置默认是 Feed,因此不必先输入就能看到一份完整的校验报告。想校验自己的内容,把标签串粘进文本框:空格、逗号、中文逗号、分号、换行乃至 # 本身都可以当分隔符,写「#travel #food」和写「travel, food」都能解析。文本框按 Ctrl/Cmd + Enter 触发校验,也可以边输入边看卡片实时刷新。caption 正文长度是数值框,按裸 Enter 即重算,允许 0~10000;发布位置用下拉框选 Feed、Reels、Story 或评论,切换后立即按对应上限重算。留空、填非数字、填负数、超量程、标签含非法字符,都会给出具体报错文字,不会静默当成 0 条继续出结论。

校验完成后给出四样东西:六张卡片报「原始条数 / 去重条数 / 重复条数 / 最长标签 / 标签串长度 / caption+标签总长」;报告区带 role="alert",逐条列出通过、超限、建议与边界;清理后标签串可直接复制;下方 12 行规则对照表可导出带 BOM 的 CSV 或按 TSV 复制。三个「示例」按钮分别载入短例、31 条示例与 35 条超限例,方便对比不同情形。

要先把定位说清楚:Instagram话题标签数量指南是平台规则校验器,回答「这组标签有没有违反当前平台的硬性规则」,不是又一个数标签个数的统计器。它只按写死的规则常量判断条数、字符数、字符集与重复,不判断标签好不好、相不相关、会不会被限流。

这个工具能解决什么问题

发帖、发 Reels 或 Story 之前,最常见的三类翻车是:标签堆太多越过上限、caption 正文加标签一起越过 2200 字符、标签里混进了空格或标点。本页把这三类一次性自查完,并顺带把重复标签去重后真正生效的条数算出来,避免「我明明写了 31 个」和「实际只有 27 个」之间的误会。它还会提醒一个常被忽略的口径:30 是硬上限,不是目标,把标签堆到 30 个反而不利于触达,平台建议的是 3~5 个高相关标签。

第二个用途是把哪些事本页做不了讲明白。被平台限流的违规标签(banned hashtag)必须联网查询平台实时名单才能判断,本页纯前端不联网,不能判断,也不承诺检测违规标签;标签热度、相关性、是否蹭热点同样不判。平台规则也可能随时间调整,本页用的是当前公开的一版常量,不联网取实时值。Instagram话题标签数量指南只回答「按这版规则,我这组标签在条数、字符数、字符集上是否合规」;它不生成标签、不翻译、不查重名、不替代平台自己的提示。

与站内已有的标签统计、标签提取类工具不同,本页回答的是「有没有踩线、踩了哪条线」,所以报告把每条规则的结论单独列出,而不是只丢一个总数。

校验原理与规则变量

规则常量一共六个:Feed 最多 30 个标签、Reels 同样 30、Story 10、评论建议 5、caption 最多 2200 字符、建议标签数 3~5 个。发布位置决定本次用哪个条数上限:Feed/Reels 取 30,Story 取 10,评论取 5;caption 的 2200 则与位置无关,任何场景都适用。

解析分四步。第一步按 /[\s,,;#]+/ 切开原始串,得到候选片段。第二步把每个片段开头的 # 去掉、去掉首尾空白、统一转成小写,因为标签大小写不敏感,#Travel 与 #travel 是同一个标签;空片段丢弃。第三步顺序扫描去重:第一次出现记入有效列表,再出现就记入重复列表。第四步用正则 /^[A-Za-z0-9_]+$/ 检查每个有效标签——只允许字母、数字、下划线,# 只作前缀不参与匹配,含空格、中文、连字符或标点的一律判为非法并具体列出。

统计口径也固定下来:清理后标签串是 '#' + 有效标签.join(' #'),它的长度 tagLen 包括每个 # 与中间的一个空格;总长 total = captionLen + tagLen,因为标签字符计入 caption 的 2200。最长标签按标签名长度(不含 #)取最大值。最后两条判断是 有效条数 > 平台上限 与 total > 2200,任一为真就报超限;有效条数超出建议 3~5 时再补一条建议,全是整数计数与字符串处理。

完整示例(三组复算)

这三组数字都不是写死的答案,而是把对应的标签串与 caption 长度代入同一套解析与规则判断现算出来的。点三个示例按钮可以逐组回放;把任意一组里的标签删掉几个、把 caption 调大一点,卡片与报告会立即重算。注意短例里连续多个空格不会多算标签——分隔符是被压缩处理的,这也是为什么它仍只有 6 条原始片段。

输入范围与规则对照表

规则对照表把 14 条规则列成三列:规则项、取值或要求、说明。默认显示前 12 行,点「加载更多」展开最后 2 行(30 是硬上限的定位、以及可用的分隔符清单)。前 12 行覆盖 Feed 30、Reels 30、Story 10、评论 5、caption 2200、建议 3~5、单标签字符集、重复去重、banned 需联网本页不判、标签计入 caption、# 只作前缀、大小写不敏感。

这张表是常量说明,不是当前输入的实算结果;随输入变化的是上方六张卡片、校验报告与清理后标签串。表可导出带 BOM 的 CSV,Excel 打开不乱码,也可按 TSV 复制粘进表格软件。标签框不限标签条数,但 caption 数值框限 0~10000;含不可见控制字符、只写分隔符不写标签名、标签含非法字符,都会给出具体报错。

结果边界与精度说明

常见问题

这个页面能查出被限流的违规标签吗?

不能。banned hashtag 需要联网查询平台的实时名单才能判断,本页是纯前端工具,不发起任何网络请求,因此明确不判断、也不承诺检测违规标签。报告里专门有一行 [边界] 写明这一点。本页能查的只有条数、caption 总长、单标签字符集与重复这些可离线校验的硬规则。

既然上限 30,为什么还建议只放 3~5 个?

因为 30 是平台允许的最大条数,是硬上限而不是推荐值。把标签堆满 30 个往往相关性被稀释,反而不利于触达;平台建议 3~5 个高相关标签。本页把「超过 30」报成 [超限],把「超过建议 3~5」报成 [建议],两者严重程度不同,别把建议当成报错。

标签字符算进 caption 的 2200 吗?

算。总长按 caption 正文长度加清理后标签串长度计算,标签串里的每个 # 与中间空格都算字符。所以 31 条示例的 caption 180 加标签 198 得 378;超限例的 2100 加标签 235 得 2335,越过 2200。只数正文不数标签,很容易误判为没超。

我写了很多标签,为什么实际条数变少了?

因为重复标签被去重了。解析时每个标签只保留第一次出现,后面重复的记入重复列表;判断上限用的是去重后的有效条数。默认 31 条里有 4 条重复,去重后是 27 条,卡片把原始、去重、重复三个数并列出来,就是为了让这个差异看得见。

标签里能有空格、中文或标点吗?

不能。单个标签只允许字母、数字与下划线,用正则 /^[A-Za-z0-9_]+$/ 校验;# 只作前缀,不参与匹配。含空格、中文、连字符或标点的片段会被判为非法标签,并在报错里列出具体名字,方便你逐个改掉。注意分隔是靠空格、逗号、换行等符号完成的,标签内部不能再有空格。

Feed、Reels、Story、评论的上限一样吗?

不一样。Feed 与 Reels 都是 30 个,Story 是 10 个,评论建议 5 个;caption 的 2200 字符则与位置无关。用页面上方的「发布位置」下拉框切换,报告会按对应的条数上限重新判断,同一组标签在 Feed 下通过、在 Story 下就可能超限。

大小写不同的标签算一个还是两个?

算一个。Instagram 标签大小写不敏感,本页解析时先把标签名统一转成小写再去重,所以 #Travel 与 #travel 会合并成同一个,清理后标签串也统一输出小写。这样做既符合平台口径,也避免同义标签被重复计入有效条数。

规则会不会过期?输入会被上传吗?

规则常量按当前公开的一版写死在页面里,不联网取实时值,平台调整后请以官方说明为准。输入内容不会被上传:解析、去重、正则校验与计数全在当前浏览器执行,页面不发起网络请求,也不写 Cookie 或 localStorage,关掉页面数据也不留存。

相关工具