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, Instagram, X, LinkedIn, Pinterest, YouTube, TikTok, Threads, Bluesky, Google Business Profile, Reddit, Telegram.
Text#
| Network | Caption | First comment | Other fields | Hashtags |
|---|---|---|---|---|
| 63,206 | 8,000 | — | 30 in the caption, 30 in the first comment | |
| 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 |
| 3,000 | 20,000 | — | No limit | |
| 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 |
| 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 < and >.
- 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 |
|---|---|---|---|---|
| JPG, PNG | 8 MB | Several (no video in the same post) | — | |
| 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 | — |
| JPG, PNG, GIF | 30 MB (LinkedIn recommends under 5 MB) | Up to 9 | — | |
| JPG, PNG | 20 MB | Up to 5, all the same shape | At least 200 × 300 pixels | |
| 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.
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 |
|---|---|---|---|
| 1 GB | 3 seconds to 20 minutes | 1, no photos with it. Published as a Page video. | |
| 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 |
| 5 GB | 3 seconds to 15 minutes | 1, no photos with it | |
| 2 GB | 4 seconds to 15 minutes | 1, no photos with it | |
| 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.
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 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, 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.