Threads link limit: 5 unique URLs per post, checked before publish

Threads allows 5 unique URLs per post and returns THREADS_API__LINK_LIMIT_EXCEEDED past that. Count unique links in the caption before posting a Sume clip.

5 min readSume
All posts

A Threads post may contain at most 5 unique URLs. Since 22 December 2025, going over returns the error THREADS_API__LINK_LIMIT_EXCEEDED, so count unique links in the caption before you publish.

Sume only produces the video. The caption and its links stay in your Threads API call, which makes the check a few lines in your own pipeline.

What exactly is limited?

The limit counts unique URLs, not link occurrences. Repeating one URL does not use a second slot.

Threads link limit (read 2026-10-05)
ItemValue
Maximum unique URLs per post5
Error past the limitTHREADS_API__LINK_LIMIT_EXCEEDED
Enforced since22 December 2025

How do I count unique URLs?

The sample uses a simple regex and a set. A real caption may need a stricter URL parser, so treat this as a pre-flight guard, not a guarantee.

import re

def unique_links(caption):
    return set(re.findall(r"https?://[^\s]+", caption))

caption = "Demo https://a.example/x and https://a.example/x plus https://b.example"
links = unique_links(caption)
print(len(links), "unique", "OK" if len(links) <= 5 else "TOO MANY")

What should a Sume pipeline do on a failure?

Do not re-render. A link error is a caption problem, and the finished MP4 is already a durable media.sume.com URL, which the Sume docs say does not expire. Fix the caption and publish again with the same video_url.

That keeps the render cost at one trim or timeline job instead of one per attempt.

Sources

Related posts

More in Integrations

All Integrations posts

Written by Sume