# Connect Threads

Heropost publishes to your Threads profile. Post text, photos, videos, carousels of up to 20 items and links, add a first comment as a reply, see post analytics and answer replies in the Social Inbox.

Last checked: Oct 8, 2026 on the live app. Source: https://heropost.ai/docs/networks/threads/

## What you need

- **A Threads profile.** Heropost connects the profile you sign in with.
- **A plan that includes Threads.** Every plan sold today does. The original Lifetime plan can't connect Threads: choosing it opens **Time to Level up!**. Some older plans have a separate, smaller allowance for X, TikTok, Google Business Profile, Threads and Bluesky together; see [How many accounts your plan includes](/docs/social-accounts/account-limits/).
- **Pop-ups allowed** for app.heropost.io.
- **The owner or Admin role** in your Heropost workspace.

Threads is separate from Instagram in Heropost: connecting Instagram doesn't connect Threads, and the other way round.

## Connect your Threads profile

1. Click your **workspace name** at the top of Heropost, then **Accounts**.
2. Press **Add Profile** and choose **Threads**.
3. Threads opens in a small window. Log in if Threads asks, and allow access.
4. The window shows "Connecting your Threads account… This window will close automatically." and closes.
5. **Add Social Account** lists your profile under **Profiles**. Tick it and press **Done**.
6. Heropost shows **Account successfully added**.

[Screenshot: The Add Social Account window listing a Threads profile under Profiles]

Threads' window uses the profile that's logged in at threads.net in your browser. To add a different profile, log out there first, or use a private window, then add Threads again.

## What you can post

| Post | Supported | Details |
|---|---|---|
| Text only | Yes | Post Type **Media/Caption** with no media. |
| Photo | Yes | One JPG or PNG, up to 8 MB. |
| Video | Yes | One MP4 or MOV, up to 1 GB. Threads' own rules allow up to 5 minutes. |
| Carousel | Yes | 2 to 20 photos and videos, mixed in any order. |
| Link post | Yes | Post Type **Link**, with your text. Threads shows a preview card for the link. A link post can't carry your own photos or video. |
| Polls, topics, alt text | No | |

| Text | Limit |
|---|---|
| Caption | 500 characters. Required on a **Link** post. |
| First comment | 500 characters, posted as a reply to your post |

**Media tips.** The **Media Requirements** link in the upload box lists Threads' rules. Threads officially supports JPG and PNG photos, scales photos to between 320 and 1,440 pixels wide, and recommends 9:16 video to avoid cropping or blank space. Heropost checks file size and count, not video length or shape.

**Processing.** Threads processes photos and videos before they go live. Heropost waits up to 15 minutes for it to finish.

## Options in the Threads tab

[Screenshot: The Threads tab with Post Type, a carousel, the caption and First Comment, and the preview]

- **Post Type:** **Media/Caption** (text, photos, videos or a carousel) or **Link**.
- **Link:** the address for a **Link** post. Use the full address, starting with https://.
- **First Comment:** published as a reply to your post, from your profile, right after it goes out. See [Add a first comment](/docs/posting/first-comment/).
- **Take media, caption, first comment from the All tab:** switch it on to reuse the All tab's content. On a **Link** post, it takes the link instead of the media.

Photos get your [watermark](/docs/social-accounts/watermark/), if you set one for the account or the workspace.

## Limits and holds

- **When Threads limits an account,** Heropost stops publishing to it for a while, to protect it. Posts due in that time fail with "Threads is temporarily limiting how often this account can post. Heropost paused publishing to it until {date} UTC to protect the account. This post was not published to it — schedule it again later." If Threads keeps limiting the account, the pauses get longer. Reconnecting doesn't lift them. See [When a network limits an account](/docs/troubleshooting/network-holds/).
- **What to do:** wait until the time in the message, send the held posts again with **Duplicate Failed**, and spread your posts through the day.
- **Connections expire.** Threads sets how long Heropost's access lasts. Heropost renews it automatically in the week before it expires. If it lapses anyway, Hero_Agent on Home lists the profile as needing attention: [reconnect](/docs/social-accounts/reconnect/) it.

## Analytics and the Social Inbox

- **Analytics:** views, likes, replies and shares for each post. When you connect a profile, Heropost also imports up to 100 of its recent posts. A post with no views or interactions yet doesn't appear until it has some. Follower growth isn't tracked for Threads. See [Analytics](/docs/analytics/analytics/).
- **Social Inbox:** replies to your 25 most recent posts appear under **Comments**, where you can answer them. Mentions of your profile appear under **Mentions**. See [The Social Inbox](/docs/analytics/social-inbox/).

## Errors and fixes

### When you connect or reconnect

| Message | What it means | What to do |
|---|---|---|
| **Time to Level up!** | Your plan doesn't include Threads (the original Lifetime plan). | Press **Upgrade** to see plans. See [Lifetime plans explained](/docs/billing/lifetime/). |
| "Looks like you've reached the limit of your plan. Please upgrade your account to access for features." | The workspace owner's plan has no room for another account, or for another account on these networks. | Remove an account you don't use, or upgrade. See [account limits](/docs/social-accounts/account-limits/). |
| "Authentication cancelled" | Threads' window was closed or blocked, or you didn't allow access. | Allow pop-ups for app.heropost.io and try again. |
| "Selected account not found" (when reconnecting) | You logged in to a different Threads profile. | Log in to Threads as the profile you're reconnecting. |

### In the post editor

| Message | What it means | What to do |
|---|---|---|
| "You can upload up to 20 files" | A Threads post takes up to 20 photos and videos. | Remove some. |
| "Wrong file format. Please upload JPG, PNG, MP4 or MOV" | Threads takes JPG and PNG photos, MP4 and MOV videos. | Convert the file. |
| "Image size limit: 8MB maximum" / "Video size limit: 1024MB maximum" | The file is too big. | Compress it. |
| "Codec is not supported. For more information please check requirements" | Your browser can't read the video. | Export it again as an H.264 MP4. |
| "You can have up to 500 characters in caption" / "You can have up to 500 characters in first comment" | The text is too long. | Shorten it. |
| "Caption is required" | A **Link** post needs text. | Write a caption. |
| "Link is required" / "Invalid URL" | A **Link** post needs a full web address. | Paste the full address, starting with https://. |
| Hovering **Schedule All** shows "Please select accounts for Threads" | Threads is on for this post, but no profile is ticked. | Tick one, or switch Threads off for the post. |

### When you schedule

These come from the same rules, checked again when you schedule or publish:

- "Unable to post because Threads requires link."
- "Unable to post because Threads requires caption or at least 1 media."
- "Unable to post because Threads requires caption for link post."

Open the Threads tab, add what the message asks for, and schedule again.

### When a post fails

Failed posts are listed under **Content → Posting Errors**. Threads' own messages are shown as Threads wrote them.

| Message | What it means | What to do |
|---|---|---|
| "Threads is temporarily limiting how often this account can post. …" | Threads limited the profile, so Heropost paused publishing to it. | Wait until the time shown, then send the post again with **Duplicate Failed**. See [Limits and holds](#limits-and-holds). |
| "Threads took too long to process video. Eventually, Threads marked it as expired." | Threads didn't finish processing the video within 15 minutes. | Try again with a smaller video, ideally an H.264 MP4 under 5 minutes. |
| "Media was not published due to error. {error}" | Threads couldn't process a photo or video. | Check the file against Threads' rules under **Media Requirements**, export it again, then send the post again with **Duplicate Failed**. |
| "Param text must be at most 500 characters long" | The text is over Threads' limit, usually from an automation or an AI tool. | Shorten the text on the Threads tab. |
| "Your subscription does not include Threads" | The profile was connected earlier, but the workspace owner's plan doesn't include Threads (the original Lifetime plan). | Upgrade, or untick Threads in your posts. |
| "Failed to create a comment to Threads post" | The post went out, but the first comment didn't. | Reply to the post on Threads. |

If several posts fail with a message about the access token or session, Threads ended Heropost's access: [reconnect](/docs/social-accounts/reconnect/) the profile.

Failed posts aren't sent again by themselves. After fixing the cause, open the post from **Content → Posting Errors** and choose **⋮ → Duplicate Failed**: you get a draft with only the accounts that failed, ready to schedule. See [The Posting Errors page](/docs/troubleshooting/posting-errors/).

## Questions

**Does connecting Instagram connect Threads too?**

No. Add Threads separately: click your **workspace name** at the top of Heropost, then **Accounts**, then **Add Profile**. Each one is its own account in Heropost.


**How does the first comment appear?**

As a reply to your post, from your profile, right after the post goes out.


**Can I mix photos and videos?**

Yes. A Threads post can carry up to 20 photos and videos together, which Threads shows as a carousel.


**Why is a recent post missing from Analytics?**

Threads reports nothing for a post that has no views or interactions yet, so it appears once it has some. Numbers are refreshed every few hours for new posts, and less often as they age.


**Heropost paused my Threads posts. Can I lift the pause?**

No. The pause protects the profile while Threads is limiting it. Wait until the time in the message, then send the held posts again with **Duplicate Failed** and space them out.
