# Character limits and media specs for every network

One reference for all 12 networks: caption and first-comment limits, hashtag limits, and the photo and video types, sizes, lengths and counts the Heropost post editor accepts.

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

**These are the limits Heropost checks** before a post can be scheduled. Each network also publishes its own recommendations, such as image shapes and video formats: in the editor, the **Media Requirements** link in the upload area lists them for the network you're on.
More about each network: [Facebook](/docs/networks/facebook/), [Instagram](/docs/networks/instagram/), [X](/docs/networks/x/), [LinkedIn](/docs/networks/linkedin/), [Pinterest](/docs/networks/pinterest/), [YouTube](/docs/networks/youtube/), [TikTok](/docs/networks/tiktok/), [Threads](/docs/networks/threads/), [Bluesky](/docs/networks/bluesky/), [Google Business Profile](/docs/networks/google-business/), [Reddit](/docs/networks/reddit/), [Telegram](/docs/networks/telegram/).

## Text

| Network | Caption | First comment | Other fields | Hashtags |
|---|---|---|---|---|
| Facebook | 63,206 | 8,000 | — | 30 in the caption, 30 in the first comment |
| Instagram | 2,200 (no caption on Stories) | 2,200 | — | 30 in the caption, 30 in the first comment |
| X | 280, counted the way X counts | — | — | 30 |
| LinkedIn | 3,000 | 20,000 | — | No limit |
| Pinterest | 800 (the Pin's description) | — | **Title**: 100 | 10 |
| YouTube | 5,000 (**Description**) | 10,000 | **Title**: required, 100 | 30 in the description, 30 in the first comment |
| TikTok | 2,200 (labeled **Title**) | — | — | No limit |
| Google Business Profile | 1,500 | — | — | No limit |
| Threads | 500 | 500 | — | No limit |
| Bluesky | 300 | 300 | — | No limit |
| Reddit | 300 (**Caption** is the post's title, required) | — | **Text** (text posts): 40,000 | No limit |
| Telegram | 4,096, or 1,024 when the post has media | — | — | No limit |

- **X** counts every link as 23 characters, and some characters, such as emoji, as two. The X tab counts the same way.
- **YouTube** titles and descriptions can't contain the characters &lt; and &gt;.
- **Telegram's 1,024-character** limit for posts with media is checked when you schedule.
- **The All tab** shows the smallest limit of the networks that take its text.
- **A post's title in Heropost** (the name in your lists) can be up to 50 characters. It's separate from the YouTube and Pinterest titles.

## Photos

| Network | File types | Largest file | Photos per post | Size or shape checks |
|---|---|---|---|---|
| Facebook | JPG, PNG | 8 MB | Several (no video in the same post) | — |
| Instagram | JPG, PNG | 8 MB | Up to 10 (a carousel) | Feed: between 4:5 and 1.91:1 |
| X | JPG, PNG, WEBP, GIF | 5 MB, GIF 15 MB | Up to 4, or 1 GIF on its own | — |
| LinkedIn | JPG, PNG, GIF | 30 MB (LinkedIn recommends under 5 MB) | Up to 9 | — |
| Pinterest | JPG, PNG | 20 MB | Up to 5, all the same shape | At least 200 × 300 pixels |
| Reddit | JPG, PNG, GIF | 20 MB | Up to 20 | — |
| Telegram | JPG, PNG, WEBP, GIF | 10 MB | Up to 10, photos and videos mixed. A GIF goes on its own. | — |
| Threads | JPG, PNG, WEBP | 8 MB | Up to 20, photos and videos mixed | — |
| Bluesky | JPG, PNG, WEBP | 1 MB | Up to 4 | — |
| Google Business Profile | JPG, PNG | 15 MB | 1 | Between 400 × 300 and 10,000 × 10,000 pixels |
| YouTube, TikTok | Video only | | | |

A photo outside the shape or size checks opens **Incorrect Image**, where **Go to Editor** lets you crop or resize it. See [Add photos and videos](/docs/posting/photos-and-videos/#when-a-photo-doesnt-fit-incorrect-image).

## Videos

For every network that takes video, the editor accepts **MP4** and **MOV** files. An MP4 with H.264 video and AAC audio is the safest choice; for Bluesky, use MP4.

| Network | Largest file | Length | Videos per post |
|---|---|---|---|
| Facebook | 1 GB | 3 seconds to 20 minutes | 1, no photos with it. Published as a Page video. |
| Instagram | 1 GB | 3 seconds to 15 minutes | 1, published as a Reel |
| X | 512 MB | 0.5 to 140 seconds | 1, no photos with it |
| LinkedIn | 5 GB | 3 seconds to 15 minutes | 1, no photos with it |
| Pinterest | 2 GB | 4 seconds to 15 minutes | 1, no photos with it |
| Reddit | 1 GB | Up to 15 minutes | 1, no photos with it |
| Telegram | 50 MB | Not checked by Heropost | Can be mixed with photos, up to 10 files |
| Threads | 1 GB | Not checked by Heropost; Threads' own rules allow up to 5 minutes | Can be mixed with photos, up to 20 files |
| Bluesky | 50 MB | Up to 60 seconds | 1, no photos with it |
| YouTube | 4 GB | Up to 15 minutes | 1 |
| TikTok | 4 GB | 3 seconds up to the longest your TikTok account allows | 1 |
| Google Business Profile | No video | | |

- **TikTok:** with several TikTok accounts in a post, the shortest of their maximum lengths applies.
- **YouTube** decides whether a video becomes a Short. Heropost uploads it the same way either way.

## Stories

Facebook and Instagram take Stories: set the network's **Post Type** to **Story**.

| | Facebook Story | Instagram Story |
|---|---|---|
| Files | Exactly 1 photo or 1 video | Exactly 1 photo or 1 video |
| Photo | JPG or PNG, up to 8 MB | JPG or PNG, up to 8 MB |
| Video | MP4 or MOV, 3 to 60 seconds, up to 1 GB | MP4 or MOV, 3 to 60 seconds, up to 100 MB |
| First comment | No | No |

Instagram Stories have no caption, and on Facebook video Stories the caption box is grayed out. A 9:16 shape fills the screen; Heropost adds blank space around wide Instagram Story photos so Instagram doesn't crop them.

## Video covers

| Network | Custom cover |
|---|---|
| Facebook (not Stories) | JPG or PNG, up to 10 MB |
| Instagram (not Stories) | JPG or PNG, up to 8 MB |
| YouTube | JPG or PNG, up to 2 MB. The channel must be verified by YouTube. |
| Other networks | No custom cover |

Without a custom cover, Heropost uses the video's first frame. See [Set a video cover](/docs/posting/photos-and-videos/#set-a-video-cover).

## Other places files come in

| Where | What it takes |
|---|---|
| The post editor's **All** tab | JPG, PNG, WEBP, GIF, MP4, MOV. Photos up to 30 MB, videos up to 5 GB, up to 100 files. Each network's limits above still apply. |
| The **Media Library** page | JPG, PNG, WEBP, GIF, MP4, MOV. Video thumbnails: JPG or PNG, up to 2 MB. |
| Links in a [bulk upload](/docs/posting/bulk-upload/) CSV, or sent by Hero_Agent, AI tools and automations | Photos up to 20 MB, videos up to 5 GB per link, then each network's limits. |

**Not accepted anywhere:** HEIC photos, video formats other than MP4 and MOV (such as AVI or WEBM), PDFs and other documents, and audio files.

## What Heropost adjusts for you

When a network refuses a file for a reason Heropost can fix, it fixes the file and tries again:

- **Facebook:** converts an image Facebook can't read to JPEG. For video Stories, fixes a size, frame rate or shape Facebook refuses.
- **Instagram:** re-encodes a video Instagram refuses, once.
- **X:** converts an image X doesn't recognize to JPEG.
- **TikTok:** re-encodes a video refused for its frame rate.
- **Google Business Profile:** re-saves an image Google refuses as a JPEG.

Apart from these fixes and your [watermark](/docs/social-accounts/watermark/), Heropost sends your files as they are. Bluesky's 1 MB photo limit, for example, is yours to meet before uploading.

## Questions

**The editor accepted my file, but the network refused it. Why?**

Heropost checks file type, size, length, count and some shapes. Networks also check things like codecs, frame rates and exact dimensions. Follow the network's recommendations under **Media Requirements** in the upload area, and see the reason under **Content → Posting Errors**.


**My X post looks shorter than 280 characters, but it's refused. Why?**

X counts links as 23 characters each, and some characters, such as emoji, as two. The X tab counts the same way, so trust its counter.


**Can I post longer than 280 characters to X with X Premium?**

No. Heropost keeps X posts to 280 characters for every account.


**Why can't I add a GIF to my Instagram or Facebook post?**

Those networks only take JPG and PNG photos in Heropost. GIFs work on X, LinkedIn, Reddit and Telegram. Turn a GIF into a short MP4 video to post it elsewhere.
