Reference

Social Media Character Limits 2026: Every Network and Field

Social media character limits for posts, bios, alt text, titles and hashtags on 11 networks, each copied from the network's own help or developer pages on October 28, 2026, with what counts as a character.

Free to start · No credit card · No manual posting

Social Media Character Limits in 2026: The Short Answer

Social media character limits run from 300 on Bluesky to 5,000 for a YouTube description. In between: 500 on Threads and on a default Mastodon server, 800 for a Pinterest description, 1,024 for a Telegram photo caption, 2,000 for a Discord message, 2,200 for an Instagram caption and 3,000 for a LinkedIn post. Facebook is the odd one out: it publishes no limit at all for an ordinary post.

The post box is only one field. A bio, a display name, a username, alt text, a video title, a hashtag list and a link each have their own cap, and they differ more than the post limits do. TikTok gives you 80 characters for a bio, Instagram 150, Bluesky 256 and a default Mastodon server 500. Documented alt text caps run from 500 characters on Pinterest to 2,000 in the Bluesky app, and mastodon.social allows 10,000.

What a network calls a character also differs, and this is where posts fail in ways that are hard to spot. Bluesky and Mastodon count what you see on screen. Threads counts an emoji by its UTF8 bytes when you post through its developer interface, so one thumbs up costs 4 of your 500. TikTok counts UTF16 units. Mastodon counts every link as 23 characters whatever its length, while the Bluesky app shortens a link before it counts it. A caption that fits on one network can be rejected on the next one for reasons that have nothing to do with how many words it has.

Below you get one cheat sheet, then a table per network with every field we could find on that network's own pages, then the rules for links, emoji, hashtags and alt text that sit across all of them. Where a network publishes no number, we say so rather than repeat a figure from another blog.

How We Researched These Character Limits

On October 28, 2026 we opened the help center or developer documentation of every network on this page and copied each limit from there. Help centers that only render in a browser (Instagram, Facebook, TikTok, Pinterest and Discord's support site) were read in a browser. The rest were fetched directly. Every limit in a table links to the page it came from, and the full list of sources sits at the bottom.

Two networks publish their limits as code rather than help articles, so we read the code. For Bluesky that is the open schema for a post record and a profile record, plus the constants file of the official Bluesky app, which sets the alt text and direct message caps. For Mastodon it is the validator that measures post length and the settings each server reports about itself. We asked mastodon.social for its live settings and three other large servers for theirs, because a Mastodon limit is a default each server can change.

We also measured how emoji count, using the grapheme rules in Unicode's text segmentation standard and plain byte counts, and we ran a long App Store link through the Bluesky app's own shortening function to see what it costs inside 300 graphemes. Those are our measurements, and the page says so where they appear.

What we left out: X, and numbers that only appear on third party blogs. Several fields people search for, such as the Threads bio or the LinkedIn headline, have no official number anywhere we looked. For those, the table says not published, and where other guides agree on a figure, we name it and mark it unconfirmed.

Social Media Character Limits Cheat Sheet for All Networks

One row per network: the main post field, the bio, the alt text cap and the rule most likely to trip you up. Each number is explained, with its source, in that network's own table further down.

Social Media Character Limits Cheat Sheet for All Networks
NetworkPost or captionBio or profile textAlt textWatch out for
Threads500 characters, plus a 10,000 character text attachmentNot published1,000Emoji count as UTF8 bytes through the API, and 5 links at most
Bluesky300 graphemes and 3,000 bytes256 graphemes2,000 in the appLinks are shortened in the app before they count
Instagram2,200 characters150 characters1,0005 hashtags in the app, although the API still says 30
FacebookNot publishedNot publishedNot publishedAds: 50 to 150 characters of primary text recommended
LinkedIn3,000 charactersNot publishedNot publishedAd text over 150 characters gets cut off
TikTok2,200 for a video caption through the API80 charactersNot publishedPhoto posts: 90 character title, 4,000 character description
YouTubeTitle 100, description 5,000Channel description 1,000Not applicableMore than 60 hashtags and YouTube ignores all of them
PinterestTitle 100, description 800Not published500Only the first 40 characters of a title may show
Telegram4,096 for text, 1,024 for a media caption70, or 140 with PremiumNot applicableA long caption under a photo fails, it does not wrap
Discord2,000, or 4,000 with NitroNot published1,024 per attachmentEmbeds have their own limits, 6,000 in total
Mastodon500 by default, set per server500 by default1,500 in the docs, 10,000 on mastodon.socialEvery link counts as 23 characters

Checked October 28, 2026. Not published means we found no number on the network's own help or developer pages.

Post Character Limits by Network, Side by Side

The main post or caption field on each network, on one scale. The spread is the point: a caption written for LinkedIn is ten times longer than Bluesky allows.

Bar chart of post character limits: Bluesky 300, Threads 500, Mastodon 500, Pinterest 800, Telegram caption 1,024, Discord 2,000, Instagram 2,200, TikTok 2,200, LinkedIn 3,000, Telegram message 4,096, YouTube description 5,000
Limits from each network's own documentation, including the Bluesky post schema, Meta's Threads posts guide, Mastodon's posting docs, Pinterest's Pin specs, Telegram's Bot API, Discord's message reference, Instagram's publishing reference, TikTok's posting API, LinkedIn Help and YouTube Help. Chart by Spreadcast.

Threads Character Limit 2026: Posts, Replies, Attachments and Bio

Meta documents Threads in two places: the Threads Help Center, which is part of Instagram's, and the Threads posting guide for developers, which scheduling tools follow. The developer pages are more precise, so most numbers below come from them.

Threads Character Limit 2026: Posts, Replies, Attachments and Bio
FieldLimitNotes
Post500 characters"Text posts are limited to 500 characters," per Meta's developer guide. In the app, the Help Center says a thread that runs past 500 characters gets another post added to it automatically.
Reply500 charactersA reply is published as a post of its own, so the same 500 apply.
EmojiCounted in UTF8 bytesThe publishing reference says emojis count as their number of UTF8 bytes toward the post limit. A plain thumbs up is 4 bytes; a family emoji is 18.
Text attachment10,000 charactersA block of longer text attached to a post, launched in Meta's announcement of September 4, 2025. The attachment docs allow it on text only posts, never on a post with a poll.
Links5 per postEvery unique URL in the text counts, and a link attachment counts too unless it repeats one of them. Since December 22, 2025, a post with more links fails to publish through the API.
Topic tag1 per post, 1 to 50 charactersPeriods and ampersands are not allowed. If a post carries several tags in its text, the first one is used.
Alt text1,000 charactersPer image or video, from the publishing reference.
Carousel2 to 20 items through the APIThe app's Help Center says you can select up to 10 items to attach when posting from your phone.
BioNot publishedNeither the Help Center nor the developer docs give a Threads bio limit. Third party guides list 150, the same as Instagram's documented bio limit, but Meta has not said so.

The 10,000 character attachment is separate from the 500 character post. A reader sees the post first and opens the attachment to read the rest.

What the Threads Character Limit Means When You Write

Five hundred characters is about 80 to 90 words of plain English. That is enough for a full thought with a link, and short enough that a list of features will not fit. If an announcement needs more, the text attachment is the tool Meta built for it: write a tight 500 character post that says what changed, then put the detail in the attachment. Keep in mind that an attachment cannot sit on a post with an image, so a product shot and a long changelog have to be two posts.

The link rule took effect on December 22, 2025. Since then the developer interface refuses a sixth link, and tools that post on your behalf have to follow it. One link per post is the habit that keeps you clear of it, and it reads better anyway.

If you schedule Threads posts from a tool, the emoji rule matters more than it seems. Ten plain emoji count as 40 through the developer interface, not 10, so a caption your editor shows at 480 characters comes out at about 510 and is rejected. Trim emoji first when a scheduled Threads post fails for length. Our guide on how to schedule Threads posts covers the scheduling side, and the Threads statistics page has the audience numbers.

Bluesky Character Limit: Posts, Links, Bio and Alt Text

Bluesky publishes its limits in its open source code. The post and profile numbers come from the schema files that every Bluesky app and tool must follow; the alt text and message caps come from the official app's constants.

Bluesky Character Limit: Posts, Links, Bio and Alt Text
FieldLimitNotes
Post300 graphemesThe post schema sets maxGraphemes at 300 for the text field. A grapheme is one visible character, so an emoji counts as 1.
Post, in bytes3,000 bytesThe same field has a byte cap of 3,000. Plain text never reaches it, but 300 family emoji would.
Extra hashtags8 tags, 64 graphemes eachThe schema allows up to 8 tags stored outside the text, on top of any hashtags you type.
Display name64 graphemesFrom the profile schema, with a 640 byte cap.
Bio256 graphemesThe profile description field. The byte cap is 2,560.
Pronouns20 graphemesA separate profile field.
Alt text2,000 charactersThe official app caps image descriptions at 2,000. A comment in its code says the limit was raised from the usual advice because people asked for it.
Direct message1,000 graphemesSet in the same constants file.
Images per post4Set in the schema for images embedded in a post.

Checked in Bluesky's GitHub repositories on October 28, 2026. Spaces, line breaks and punctuation each count as one grapheme.

Bluesky Character Limit With a Link

The Bluesky app does not count a pasted URL at full length. Its link shortening function keeps the domain, keeps the first 13 characters of the path when the path is longer than 15, and adds three dots. The shortened text is what goes into the post, so that is what counts. We ran three links through the same function.

Bluesky Character Limit With a Link
Link you pasteFull lengthWhat the app postsGraphemes used
An App Store link with a campaign token61apps.apple.com/us/app/examp...30
A blog post on example.com40example.com/blog/2026/on...27
A short pricing page27example.com/pricing19

The full URL still sits behind the shortened text, so the link opens the right page. A tool that posts through the developer interface without shortening spends the full length. Our measurement, October 28, 2026.

Does the Bluesky Character Limit Include Spaces?

Yes. These are the questions people ask most about how the 300 is counted, answered from the schema and the app's code.

  • Spaces and Line Breaks Count

    Each space is one grapheme, and so is each line break. A post with five short lines separated by blank lines spends ten graphemes on the gaps. Unicode's segmentation standard, which defines a grapheme, treats a space as a cluster of its own.

  • Emoji Count as One

    Because the limit is in graphemes, a skin toned thumbs up or a family emoji counts as 1, even though it is several code points underneath. The 3,000 byte cap is the only place emoji cost more, and plain posts never get near it.

  • Mentions Count in Full

    A mention is written as the full handle, such as @alex.bsky.social, and every character of it counts. Long custom domain handles cost more than short ones.

  • Link Cards Are Free

    A link preview card is stored outside the text field, as a separate embed. If the card is enough on its own, the URL text in the post can go, and the post keeps its full 300 for words.

How to Write a Bluesky Post in 300 Characters

Three hundred graphemes is about 50 words. That forces a choice the longer networks never ask for: what is the one thing this post says? For a product update, it is usually the change and the reason to care, in two sentences, with the link in a card. Hashtags are optional on Bluesky and the schema stores up to 8 of them outside the text, so tools can tag a post without eating the 300.

A thread of replies is the native way to say more, and each reply gets its own 300. Our guide on how to schedule Bluesky posts shows the free and paid ways to post them ahead of time, and the Bluesky statistics page covers who is reading.

This is where posting the same update to Bluesky, Threads and Mastodon gets fiddly by hand: three networks, three ways of counting, one draft. Spreadcast writes a separate caption for each network and warns you, by how many characters, when one runs over that network's limit. If the hashtags are what push it over, it drops them from the end first, and only then cuts back to the last full sentence that fits. You can try it from the start page with your App Store link or website.

Instagram Caption Character Limit and Other Instagram Fields

Instagram's limits come from its Help Center and from the publishing reference for developers, which every scheduling tool uses. The two disagree on hashtags, and the app wins.

Instagram Caption Character Limit and Other Instagram Fields
FieldLimitNotes
Caption2,200 charactersFrom the publishing reference. The same cap applies to feed posts, carousels and Reels published through it.
Hashtags5 per post in the appInstagram's hashtag help page says you can use up to 5 tags on a post, and that a comment with more than 5 will not post.
Hashtags through the API30The publishing reference still lists 30 hashtags. Plan for 5, because that is what the app enforces.
Mentions20 @ tagsFrom the publishing reference.
Bio150 characters"You can write a bio of up to 150 characters," per the bio help page. The help page adds that anyone can see your bio.
Alt text1,000 charactersPer image, single or in a carousel. The reference says Reels and stories do not take alt text through the API.
Carousel captionsOne caption per postItems inside a carousel cannot carry captions of their own when published through the API.
UsernameNot publishedInstagram's Help Center lists no length for usernames or display names that we could find.

Read October 28, 2026. Our caption guide for Instagram, with hashtag sets, is on the social media caption generator page linked below.

The Instagram Hashtag Limit Changed, the API Did Not

For years the Instagram rule was 30 hashtags per post. The app now stops at 5, and the help page puts it plainly: more than 5 and your caption or comment will not post. The developer reference that scheduling tools rely on still says 30, which means a tool built to that number can send a caption the app would refuse. If a scheduled Instagram post fails and the caption looks fine, count the hashtags before anything else.

Five tags is enough for the job hashtags do now, which is telling Instagram what the post is about. Pick them the way you would pick search words: the category, the problem the post solves, the type of post. The social media caption generator page has example sets per network, and the Instagram post generator covers sizes and layout. For the wider strategy, see how to promote an app on Instagram.

Facebook Character Limits for Posts, Ads and Usernames

Facebook publishes fewer text limits than any other network on this page. Its Help Center covers usernames; Meta's ads guide gives recommended lengths for ad text. For an ordinary post or a Page bio, we found no official number.

Facebook Character Limits for Posts, Ads and Usernames
FieldLimitNotes
PostNot publishedThe 63,206 figure quoted in many guides does not appear on any Meta help or developer page we could find on October 28, 2026. In practice you will not reach it.
Ad primary text50 to 150 characters recommendedFrom the ads guide for a Facebook Feed image ad. A recommendation for how much shows, not a hard cap.
Ad headline27 characters recommendedSame page. Longer headlines may be cut off on small screens.
UsernameAt least 5 charactersLetters, numbers and periods only, no domain endings such as .com. Periods and capitals do not make two usernames different.
Profile or Page introNot publishedThe Help Center explains how to edit the intro but gives no length.

Facebook is one of the 11 networks Spreadcast publishes to. Because Meta publishes no post limit, the practical limit is what your reader will read before scrolling past.

How Long a Facebook Post Should Be When There Is No Limit

With no hard cap, the useful number on Facebook is Meta's own advice for ads: 50 to 150 characters of primary text and a 27 character headline. Meta writes those numbers for paid placements, but the reason behind them applies to an organic post too. Feeds show the first few lines and hide the rest behind a link to read more, so the first sentence has to carry the post.

For a Page that shares product news, a good pattern is one sentence that names the change, one that says who it helps, and a link. The Facebook post generator has examples in that shape, and the social media image sizes guide covers the picture that goes with it.

LinkedIn Post Character Limit and Ad Text Limits

LinkedIn's help page on creating posts gives the post limit. Its single image ad specifications add the lengths that show before LinkedIn cuts text off, which is the number that matters for reach.

LinkedIn Post Character Limit and Ad Text Limits
FieldLimitNotes
Post3,000 characters"Posts can contain up to 3,000 characters," per LinkedIn Help.
Ad introductory text150 visible, 3,000 maximumUse up to 150 characters, including spaces, emoji and punctuation, to avoid truncation. Up to 10 emoji.
Ad headline70 visible, 200 maximumFrom the same ad specifications.
Ad name255 charactersInternal only. Members never see it.
Links in ad textShortened above 23 charactersURLs longer than 23 characters are converted to a short link in ad text.
Profile headline and AboutNot publishedLinkedIn Help does not state either limit. Guides commonly list 220 and 2,600; treat those as unconfirmed and trust the editor.
CommentNot publishedNo official number that we could find.

Read October 28, 2026. The ad numbers are LinkedIn's own advice on when text gets cut off, and they are the best guide to how much of an organic post shows above the fold too.

How Long a LinkedIn Post Should Be

Three thousand characters is roughly 450 words, longer than most readers give a post. LinkedIn's own ad guidance says text past about 150 characters gets cut off, which is why the strongest LinkedIn posts put the whole point in the first two lines and treat everything after the fold as optional detail.

For a product update, that means the change and the result in the opening line, then a short list of what is new, then the link. Long posts work when they teach something; release notes rarely need more than 600 characters. The LinkedIn post generator has examples at that length, and the LinkedIn carousel size guide covers document posts, which carry their text inside the slides.

TikTok Caption Character Limit, Bio and Username

TikTok's Help Center covers profile fields. Caption limits are published only in its Content Posting API reference, which is how scheduling tools publish to TikTok.

TikTok Caption Character Limit, Bio and Username
FieldLimitNotes
Video caption2,200 UTF16 unitsThe API's title field is the video caption. Hashtags and mentions inside it are matched automatically.
Photo post title90 UTF16 unitsFrom the photo post reference.
Photo post description4,000 UTF16 unitsPhoto posts have a separate title and description; videos have one caption.
Caption typed in the appNot publishedTikTok's Help Center does not state the in app caption limit. Tools that post for you are held to the 2,200 above.
Bio80 charactersThe bio help page says bios cannot exceed 80 characters, and that editing the bio is not available on TikTok's mobile website.
Username2 to 24 charactersLetters, numbers, underscores and periods, with no period at the end, per the username help page. It can be changed once every 30 days.
NicknameUp to 30 charactersThe display name, changeable once every 7 days, per the nickname help page.

A UTF16 unit is one for a plain letter and two for most emoji, so an emoji heavy caption reaches the API limit sooner than its length on screen suggests.

How Long a TikTok Caption Should Be

On TikTok the caption sits on top of the video, and a long one stays folded until someone taps it. Its main jobs are search and context: the words someone would type to find the video, a hashtag or two, and one line that makes sense of what they are watching. A few hundred characters does that. The longer limits suit tutorials that spell out the steps in text.

Plan around 2,200 if a tool posts for you, because that is the limit the developer interface enforces, whatever the app itself allows. The TikTok app promotion guide has caption examples for app founders.

YouTube Title Character Limit, Description and Tags

YouTube states its limits in YouTube Help's page on video settings and, more precisely, in the YouTube Data API reference for videos. The API counts the description in bytes, the Help Center in characters.

YouTube Title Character Limit, Description and Tags
FieldLimitNotes
Video title100 charactersThe same for Shorts. The API adds that a title may not contain the characters < or >.
Description5,000 characters per YouTube Help, 5,000 bytes through the APIIn plain English the two match. With accented letters or emoji, the API runs out first.
Tags500 characters in totalCommas count. A tag with a space is treated as if wrapped in quotation marks, and the quotes count, so Foo Baz costs nine characters.
Hashtags60, or YouTube ignores all of themPer the hashtag policy. Up to three of the hashtags in a description appear next to the title.
Channel description1,000 charactersFrom the channels reference.
Channel keywords500 characters in totalA limit on all keywords together, not on each one.
Title testsUp to 3 titlesYouTube's A/B testing feature compares up to 3 titles or title and thumbnail pairs and keeps the one with the most watch time. Not available for Shorts.

Read October 28, 2026. The API also notes that links in a description only become clickable when the channel meets YouTube's requirements, such as verification.

Video: YouTube on Testing Titles

Since titles are capped at 100 characters, the fastest way to find the right 100 is to test them. YouTube's own Creators channel explains the A/B testing feature behind the last row of the table above.

The YouTube Creators team shows how to set up a test of up to three titles and thumbnails, how the test picks a winner by watch time, and what to keep in mind while it runs. Video by YouTube Creators on YouTube

How to Write a YouTube Title and Description That Fit

One hundred characters is the cap, but search results and phone screens show less than that, so the words a viewer needs go first. A title that front loads the topic ("Budget App Tutorial: Split a Bill in 30 Seconds") survives any cut. The description works the same way: the first two lines show before the fold, and the rest is space for chapters, links and credits.

The byte rule only bites if you write in a language with accented letters or paste emoji into the description, since each of those takes two to four bytes. For a channel that posts Shorts made from app updates, the YouTube MCP server guide covers uploading from Claude, with the quota and audit rules Google sets.

Pinterest Description Character Limit, Title and Alt Text

Pinterest lists text limits next to its image specs on the Pin specs help page. The Pins API reference confirms the same numbers and adds the alt text and link caps.

Pinterest Description Character Limit, Title and Alt Text
FieldLimitNotes
Pin title100 charactersDepending on the device, only the first 40 characters may show in feeds, per Pinterest's ad specs. In Chinese, Japanese, Korean or Arabic, only the first 30 show.
Pin description800 charactersDescriptions do not show in the home or search feed, but Pinterest says its system uses them to decide where to show the Pin.
Text overlay box250 charactersThe text box you can add on top of a Pin's image.
Alt text500 charactersFrom the API reference. Screen readers read it; nobody else sees it.
Destination link2,048 charactersFrom the API reference.
Board name and profile aboutNot publishedNo number on the help pages or in the API reference we checked.

Some older Pinterest ad pages say 500 characters for a description. The Pin specs page, read October 28, 2026, says 800.

How to Write a Pinterest Title and Description

On Pinterest the title and description are search text first. People find Pins by typing, so the title should hold the words they would type, inside its first 40 characters, and the description should say in plain language what the Pin shows and who it is for. Eight hundred characters is room for two or three sentences and a few keywords; filling it with a list of tags reads as spam and gets you nothing.

The Pinterest pin generator has title and description examples, and Pinterest for app founders explains how Pin search works for an app.

Mastodon Character Limit: Defaults and Server Settings

Mastodon's posting docs and profile docs give the defaults. Each server can change them, and each one reports its own settings through the instance endpoint. The last column is what mastodon.social, the largest server, reported when we asked.

Mastodon Character Limit: Defaults and Server Settings
FieldDefault in the docsmastodon.social on October 28, 2026
Post500 characters500
Each link in a postCounts as 23 characters23
MentionOnly the username part countsSame. In @alice@example.com, the domain is free.
Content warningNot stated in the docsCounts toward the 500. The length validator adds the warning to the post text before counting.
Display name30 characters40
Bio500 characters500
Profile fields4 rows of label and value4 rows, 255 characters for each label and each value
Alt text1,500 in the docs example10,000
Poll4 options, 50 characters each4 options, 50 characters each
Images per post44

Mastodon counts graphemes, as its length validator shows, so an emoji counts as 1. When the docs and a live server disagree, the server is what applies to you.

Mastodon Character Limit by Server

Because every Mastodon server sets its own limits, the same post can be fine on one and too long on another. These are four large servers, each read from its own settings endpoint on October 28, 2026.

Mastodon Character Limit by Server
ServerPost limitBioDisplay namePoll options
mastodon.social500500404, 50 characters each
fosstodon.org500500404, 50 characters each
hachyderm.io2,263500404, 50 characters each
infosec.exchange11,0001,0008010, 100 characters each

Any Mastodon app shows your own server's limit as a counter in the composer. A post written on infosec.exchange can be read everywhere, but you cannot post it from a 500 character server.

Video: Every Feature in Mastodon's Composer

Mastodon's founder walks through the post composer, including the parts that affect the count: links, mentions, content warnings, polls and alt text.

Eugen Rochko, who created Mastodon, goes through visibility, media, alt text, polls, content warnings, mentions, hashtags, links and threads in the Mastodon composer. Video by Gargron on YouTube

Telegram Caption Limit, Message Length and Channel Fields

Telegram's limits are in the Bot API reference, which posting tools and bots use, and in the client configuration reference, which lists the different numbers for Premium users.

Telegram Caption Limit, Message Length and Channel Fields
FieldLimitNotes
Text message1 to 4,096 charactersCounted after formatting is parsed, so bold or italic markup does not use up the limit.
Photo or video caption0 to 1,024 charactersThe same cap for every media type: photo, video, document, audio and album.
Caption, Premium user4,096The configuration reference sets the Premium caption length at 4,096. A bot posting to a channel is held to 1,024.
Story caption200, or 2,048 with PremiumFrom the configuration reference.
Bio70, or 140 with PremiumCounted in UTF8 length. Telegram's Premium announcement lists the longer bio, with room for a link, as a Premium feature.
Channel or group title1 to 128 charactersFrom the Bot API method that sets a chat title.
Channel description0 to 255 charactersFrom the method that sets a chat description.
PollQuestion 1 to 300, options 1 to 100 eachA poll takes 1 to 12 answer options through the Bot API.
UsernameLetters a to z, numbers and underscoresPer Telegram's FAQ. Usernames are not case sensitive.

Read October 28, 2026. Telegram's channel post and its caption are separate limits: a 2,000 character announcement fits as a message but not under a photo.

Why Long Telegram Captions Fail and How to Fix It

The most common Telegram length error is a post that would fit as a message but is sent with a picture. A message can be 4,096 characters, a caption only 1,024, and the Bot API does not wrap the extra into a second message. It refuses the post.

There are two clean ways around it. Keep captions under 1,024 and put the long version in a text post, or send the picture first and the full text as a message straight after it. The second keeps the image and the words together in the channel, one above the other.

Spreadcast does the second one for you. When a Telegram caption runs past 1,024 characters, it posts the picture or video first and the full text as a message right under it, so a long channel post never fails for length. Telegram channels post from the same calendar as Instagram and the other networks; the features page lists all 11. For growing the channel itself, see how to grow a Telegram channel and how to schedule Telegram channel posts.

Discord Message Character Limit and Embed Limits

Discord's limits are in its developer reference for messages, channels, users and servers. The Nitro limit is on Discord's Nitro support page.

Discord Message Character Limit and Embed Limits
FieldLimitNotes
Message2,000 charactersThe content field of a message, including one sent by a webhook or a bot.
Message with Nitro4,000 charactersListed as a Nitro perk: up to 4,000 characters per message.
Embeds per message10, up to 6,000 characters in totalThe 6,000 covers every title, description, field, footer and author name across all embeds.
Embed title256 charactersField names and author names are also 256.
Embed description4,096 charactersLonger than a message, which is why bots use embeds for long text.
Embed fields25 fields, 1,024 characters per valueFooter text can be 2,048.
Alt text on an attachment1,024 charactersThe description field on an uploaded file.
Username2 to 32 charactersNicknames inside a server are 1 to 32.
Server name2 to 100 charactersLeading and trailing spaces are not counted.
Channel name and forum post title1 to 100 charactersA forum post opens a thread, and the thread's name is its title.
Channel topic1,024, or 4,096 in forum and media channelsFrom the channel reference.

Read October 28, 2026. Discord trims leading and trailing spaces from embed fields before it counts them.

How Emoji and Accents Count Toward a Character Limit

The same text gives three different lengths depending on how a network measures it. This is why a caption can fit on one network and fail on another at the same visible length.

Table of how text is counted three ways: a thumbs up emoji is 1 grapheme, 2 UTF16 units and 4 UTF8 bytes; a family emoji is 1 grapheme, 8 UTF16 units and 18 UTF8 bytes
Our measurement using Unicode's grapheme rules. Which network counts which way comes from the Bluesky post schema, Mastodon's length validator, TikTok's posting API, Threads' publishing reference and the YouTube Data API. Chart by Spreadcast.

How Each Network Counts a Character

A character limit is only as useful as the counting rule behind it. These are the rules each network documents, plus how it treats links and mentions.

How Each Network Counts a Character
NetworkWhat one character meansLinksMentions
BlueskyOne grapheme, with a 3,000 byte capShortened by the app before countingFull handle counts
MastodonOne graphemeAlways 23 charactersOnly the username, not the domain
ThreadsOne character, but emoji count as their UTF8 bytes through the APIFull length, 5 links at mostNot documented
TikTokOne UTF16 unit through the APINot documentedMatched automatically in the caption
YouTubeOne character per YouTube Help, one byte through the API for descriptionsFull lengthNot applicable
TelegramOne character after formatting is removed; UTF8 length for biosFull lengthFull length
DiscordOne character; spaces at the ends of embed fields are trimmedFull lengthFull length
LinkedInOne character, spaces and emoji includedAd text shortens links over 23 charactersNot documented
Instagram, Facebook, PinterestNot documented beyond charactersNot documentedInstagram allows 20 per caption

Not documented means the network's pages do not say. Test with a draft before a long campaign if your captions use many emoji or links.

Alt Text Character Limits by Network

Alt text describes an image for people using screen readers. Every network that documents it sets a cap, and they range fourfold.

Alt Text Character Limits by Network
NetworkAlt text limitSource
Pinterest500 charactersPins API reference
Instagram1,000 characters per imageInstagram publishing reference
Threads1,000 characters per image or videoThreads publishing reference
Discord1,024 characters per attachmentDiscord message reference
Mastodon1,500 in the docs, 10,000 on mastodon.socialMastodon instance docs
Bluesky2,000 characters in the official appBluesky app constants
Facebook, LinkedIn, TikTokNot publishedNo number on their help or developer pages

Good alt text is usually one or two sentences. The caps are there so a chart or a screenshot full of text can be described in full.

Hashtag Limits by Network

Hashtags have their own limits, and two networks punish going over rather than just refusing the post.

Hashtag Limits by Network
NetworkHashtag limitWhat happens over it
Instagram5 per postThe caption or comment does not post.
YouTube60 per videoYouTube ignores every hashtag on the video, and over tagging can get the video removed from search.
Threads1 topic tag per postOnly the first tag is used.
Bluesky8 extra tags outside the textThe schema refuses more. Hashtags typed in the text count toward the 300 like any word.
MastodonNo published capHashtags count toward the 500. A profile can feature up to 10.
LinkedIn, TikTok, Pinterest, FacebookNo published capThey count toward the caption limit.

Sources: Instagram's hashtag help, YouTube's hashtag policy, Threads posts guide, Bluesky post schema and mastodon.social's settings.

Social Media Bio Character Limits

Bios are where the limits are tightest. TikTok and Telegram leave room for one line; Mastodon and YouTube leave room for a paragraph.

Bar chart of bio limits: Telegram 70 or 140 with Premium, TikTok 80, Instagram 150, Telegram channel description 255, Bluesky 256, Mastodon 500, YouTube channel description 1,000
From Telegram's configuration reference, TikTok's bio help page, Instagram's bio help page, Telegram's Bot API, the Bluesky profile schema, Mastodon's profile docs and the YouTube channels reference. Chart by Spreadcast.

Bio, Name and Username Limits in One Table

Every profile text field we found a number for, network by network. If you keep one bio for everywhere, write it to 70 characters and expand it where there is room.

Bio, Name and Username Limits in One Table
NetworkBioDisplay nameUsername
Telegram70, or 140 with PremiumChannel title 1 to 128Letters, numbers and underscores
TikTok80Up to 302 to 24
Instagram150Not publishedNot published
Bluesky256 graphemes64 graphemesYour handle, a domain name
Mastodon500 by default30 by default, 40 on mastodon.socialSet at signup
YouTubeChannel description 1,000Not publishedNot published
DiscordNot publishedServer nickname 1 to 322 to 32
FacebookNot publishedNot publishedAt least 5
Threads, LinkedIn, PinterestNot publishedNot publishedNot published

Sources are linked in each network's own table above. Read October 28, 2026.

How Much of a Post Shows Before It Gets Cut Off

A character limit says how much you can post. These numbers say how much a reader sees before tapping to read more, where the network publishes one.

How Much of a Post Shows Before It Gets Cut Off
WhereWhat showsSource
Pinterest Pin title in feedsThe first 40 characters, depending on the device; 30 in Chinese, Japanese, Korean or ArabicPinterest ad specs
LinkedIn ad textAbout 150 charactersLinkedIn ad specifications
LinkedIn ad headlineAbout 70 charactersLinkedIn ad specifications
Facebook Feed ad text50 to 150 characters recommendedMeta ads guide
Facebook Feed ad headline27 characters recommendedMeta ads guide
YouTube hashtagsUp to 3 shown next to the titleYouTube hashtag policy
Threads text attachmentHidden until the reader opens itMeta's announcement

Instagram, TikTok and Threads do not publish where their feeds cut a caption. Assume one or two lines on a phone and put the point there.

How to Write One Post That Fits Every Character Limit

Most people write one caption and then trim it network by network. Working the other way, from the tightest limit up, saves the rewrite.

  1. Step 1

    Write the Core in 300 Graphemes

    Start with the Bluesky version: what changed, why it matters, and nothing else. If it fits in 300, it fits everywhere as an opening line, and it is the part every reader sees before the cut.

  2. Step 2

    Expand to 500 for Threads and Mastodon

    Add one detail or one example. Keep one link, and count it at full length for Threads and at 23 for Mastodon. On Threads, trim emoji first if you post from a tool.

  3. Step 3

    Expand Again for Instagram, LinkedIn and Facebook

    These take a short list, a question for comments, and up to 5 hashtags on Instagram. Keep the first line unchanged so the post still opens with the core.

  4. Step 4

    Split the Long Version on Telegram

    If the Telegram text runs past 1,024 characters, send it as a message and keep the image caption short, or post the image and the text one after the other.

  5. Step 5

    Write Titles Separately

    YouTube and Pinterest titles are search text with their own caps, 100 characters each, and only the first 40 of a Pin title may show. Write them as a phrase someone would type, not as a cut down caption.

  6. Step 6

    Check Before It Goes Out

    Count the tightest version against its network's rule, not your editor's counter. Or let a tool do it: Spreadcast writes one caption per network, sized to that network's limit, and shows you by how many characters a caption is over a network's limit. Plans and prices start at $0.

One App Update Written to Four Character Limits

A worked example. Daylog is a made up habit tracker shipping version 4.2, with Lock Screen logging as the new feature. Each version starts from the same core sentence and grows only as far as the network allows. The lengths are counted the strictest way each network counts, and none of the versions uses an emoji, so graphemes, characters and bytes all match.

One App Update Written to Four Character Limits
Network and limitThe postLengthRoom left
Bluesky, 300 graphemesDaylog 4.2 is out. You can now log a habit from the Lock Screen with one tap, without opening the app. If you track water, meds or workouts, that is a few seconds back every time.179, with the App Store link in a preview card121
Threads and Mastodon, 500Daylog 4.2 is out, and the most requested feature is in it: you can now log a habit from the Lock Screen with one tap, without opening the app. If you track water, meds or workouts several times a day, that is a few seconds back every time, and fewer streaks lost to "I will log it later." Update from the App Store and add the widget to your Lock Screen. #ios360, plus 23 for a link on Mastodon140 on Threads, 117 on Mastodon
Instagram, 2,200 and 5 hashtagsLog a habit without opening the app. Daylog 4.2 adds Lock Screen logging: one tap on the widget and today counts. It was the most requested feature of the year, and it is built for the habits you repeat all day, like water, meds and short workouts. Update from the App Store, then add the Daylog widget to your Lock Screen and pick the habits to show. Which habit would you put there first? #habittracker #productivity #iphonetips #selfcare #healthyhabits455, with exactly 5 hashtags1,745
LinkedIn, 3,000We shipped the feature Daylog users asked for most this year: logging a habit straight from the Lock Screen. In version 4.2, one tap on the widget records today's water, meds or workout without opening the app. We built it after reading support emails from people who lost streaks because logging took too many steps. The fix was to remove the steps. If you build habit features, how do you keep logging this fast? #productdesign #ios #habits4422,558

Counted October 28, 2026 with Unicode grapheme segmentation. None of the versions comes close to its limit, which is the point: the limits are ceilings, and the post that gets read is usually a fraction of them.

How to Count Characters the Way Each Network Does

The counter in a text editor counts one way. If a post keeps failing on one network, count it the way that network does. Any browser can do all three counts: open the developer console on a blank page, put your text in a variable called text, and run the line for the count you need.

  1. Step 1

    Graphemes for Bluesky and Mastodon

    Run [...new Intl.Segmenter().segment(text)].length to get the number of graphemes, which is what Bluesky and Mastodon count. For Mastodon, replace every link with 23 characters first and drop the domain from each mention.

  2. Step 2

    UTF16 Units for TikTok's API

    Run text.length. JavaScript strings are measured in UTF16 units, which is the unit TikTok's posting API uses for captions, titles and descriptions. Most emoji count as 2, some as 4 or more.

  3. Step 3

    Bytes for Threads Emoji and YouTube Descriptions

    Run new TextEncoder().encode(text).length to get UTF8 bytes. That is the number to check for a YouTube description sent through the API, and for the emoji in a Threads post sent through its developer interface.

  4. Step 4

    Plain Characters Everywhere Else

    Instagram, LinkedIn, Pinterest, Facebook, Telegram and Discord publish their limits in characters without saying more. For plain text without emoji, every method above gives the same number, so the counter in your editor is good enough.

  5. Step 5

    Test One Draft Before a Campaign

    If a campaign leans on emoji, long links or non Latin scripts, post one draft to each network, or save it as a draft in a scheduler, before writing the other twenty. A rejected draft costs a minute; a rejected campaign costs a day.

Six Character Limit Mistakes That Make a Post Fail

Each one comes straight from the rules above, and each one makes a post fail rather than just look long.

  • A Long Telegram Caption Under a Photo

    The message limit is 4,096 but the caption limit is 1,024. A channel post that fits as text fails as soon as a picture is attached.

  • Thirty Hashtags on Instagram

    The developer reference still says 30, the app now says 5. A caption built to the old number is refused.

  • Emoji in a Scheduled Threads Post

    Through the developer interface, each emoji counts by its bytes. Ten emoji can add 30 or more to the count without changing what the post looks like.

  • Assuming Every Mastodon Server Is 500

    A post written on a server with a higher limit cannot be posted from one with the default. Check your own server's counter.

  • Counting YouTube Descriptions in Characters

    YouTube Help gives 5,000 characters; the API counts 5,000 bytes. A long description with accents or emoji can pass in one and fail in the other.

  • A Sixth Link on Threads

    Since December 22, 2025, Threads refuses posts with more than 5 links through its developer interface. A link list in one post now has to become a text attachment or several posts.

What Changed in Social Media Character Limits in 2025 and 2026

Threads got longer and stricter at once. In September 2025 Meta added text attachments of up to 10,000 characters on text posts, the first time Threads allowed more than 500 characters in one post. Three months later, from December 22, 2025, the developer interface started refusing posts with more than 5 links.

Instagram cut hashtags to 5 per post in the app. Its developer reference was not updated, so the 30 hashtag figure lives on in tools and in older guides.

YouTube launched title testing for creators with access to advanced features in December 2025: up to three titles per video, with the winner chosen by watch time. The 100 character title limit did not change, but there is now a direct way to find out which 100 work.

Bluesky's post schema still says 300 graphemes and 3,000 bytes. What many guides miss is how little room a link takes in the official app, which posts a shortened link in place of the full URL: in our test a 61 character App Store link cost 30 graphemes.

Mastodon's documented defaults are still 500 characters for a post and 30 for a display name, but the servers people actually use report their own numbers. mastodon.social reports a 40 character display name and a 10,000 character alt text cap, both above the documented defaults, and infosec.exchange allows 11,000 characters per post.

How to Post to Every Network Without Counting Characters

Here is what posting one product update to eleven networks looks like by hand. You write the long version for LinkedIn, cut it to 2,200 for Instagram and strip it to 5 hashtags, cut it again to 500 for Threads and Mastodon, again to 300 for Bluesky, check the Telegram caption against 1,024, write a separate title for YouTube and Pinterest, and then make an image for each. That is an hour of trimming for one announcement, every time you ship.

Spreadcast is marketing automation for social media, built first for App Store apps. Paste your App Store link at the start page and it builds a brand kit from the listing: icon, colors and screenshots in an iPhone frame. Businesses without an app start from a website or a short description. When a new version goes live or the app hits a ratings milestone, Spreadcast designs the post, writes a caption for each network sized to that network's limit, and publishes it, on full autopilot or after one tap of approval.

The after picture: one draft, eleven captions, each within its limit, with the image designed in your brand. Instagram gets 3 to 5 hashtags, Threads at most one topic tag, Bluesky a version under 230 characters, Telegram a channel post under 900 so it sits under the picture, and YouTube and Pinterest a separate title under 100. Nothing goes out until you approve it, if you want it that way. It publishes to Instagram, Facebook, Threads, LinkedIn, Pinterest, TikTok, YouTube, Bluesky, Mastodon, Telegram and Discord.

It also works from the AI tools you may already use. Through the Spreadcast MCP server, Claude, ChatGPT and other MCP clients can write captions per network, design posts and carousels, and schedule them. Free makes 3 posts to download with a small Spreadcast mark. Pro is $29 a month for clean posts with no cap, publishing to 10 social accounts and autopilot; a $19 Post Pack covers 10 posts designed and published, with no subscription. The details are on the pricing page.

Related Guides and Tools

For the pictures that go with these captions, the social media image sizes guide has every size in pixels. For writing the captions themselves, see the social media caption generator, and for App Store fields such as the subtitle and keywords, the App Store character counter. If you are planning a month of posts, the social media content calendar and how to automate social media posts are the next steps.

For measuring what the posts do once they are out, see the engagement rate calculator and the guide to social media KPIs. If your updates are app releases, the app update announcement examples show how other apps fit a release into a short post.

Questions

Frequently Asked Questions

What is the character limit on Threads?

500 characters per post, and the same for each reply. You can attach up to 10,000 more characters of text to a text only post, per Meta's Threads documentation. Through the developer interface, emoji count as their UTF8 bytes and a post can hold 5 links at most.

What is the Bluesky character limit?

300 graphemes per post, with a 3,000 byte cap behind it, per Bluesky's post schema. A grapheme is one visible character, so an emoji counts as one. The bio is 256 graphemes and the display name 64.

Does the Bluesky character limit include spaces?

Yes. Every space, line break and punctuation mark is one grapheme and counts toward the 300. Links are the exception in the official app, which shortens them to the domain and the start of the path before counting.

What is the Instagram caption character limit?

2,200 characters, with up to 5 hashtags in the app and 20 mentions. The developer reference still lists 30 hashtags, but Instagram's help page says a caption with more than 5 will not post. The bio is 150 characters.

What is the LinkedIn post character limit?

3,000 characters for a post from a profile or a Page, per LinkedIn Help. LinkedIn's ad guidance says text past about 150 characters gets cut off, so put the point in the first two lines.

What is the YouTube title character limit?

100 characters for a video or a Short. The description can be 5,000 characters, which the YouTube Data API counts as 5,000 bytes, and tags share 500 characters in total.

What is the Telegram caption limit?

1,024 characters for a photo, video or album caption sent through the Bot API. A text message can be 4,096. Premium users can write captions up to 4,096 in Telegram's own apps.

What is the Discord message character limit?

2,000 characters, or 4,000 with Nitro. Embeds have their own limits: a 4,096 character description, a 256 character title and 6,000 characters across all embeds in one message.

What is the Mastodon character limit?

500 characters by default, but each server sets its own. Every link counts as 23 characters, and only the username part of a mention counts. Some large servers allow 2,000 or more.

Which social media has the highest character limit?

Of the standard limits, Threads allows the most with its 10,000 character text attachment, followed by YouTube descriptions at 5,000 and Telegram messages at 4,096. Facebook publishes no limit for ordinary posts, and a few Mastodon servers set their own, such as 11,000 on infosec.exchange.

Sources

Where These Facts Come From

Every outside number, rule and price on this page links to the page it was taken from.

  1. Bluesky post record schemaBluesky on GitHub
  2. Bluesky profile record schemaBluesky on GitHub
  3. Bluesky app constants, alt text and message limitsBluesky on GitHub
  4. Bluesky app link shortening functionBluesky on GitHub
  5. Threads posts guideMeta for Developers
  6. Threads publishing referenceMeta for Developers
  7. Threads text attachmentsMeta for Developers
  8. Attach text to your Threads postsMeta Newsroom
  9. Start a new thread on ThreadsInstagram Help Center
  10. Instagram publishing reference, caption and alt textMeta for Developers
  11. Use hashtags on InstagramInstagram Help Center
  12. Add a bio to your Instagram profileInstagram Help Center
  13. Image ad specs for Facebook Feed, text recommendationsMeta Ads Guide
  14. Guidelines for creating a custom usernameFacebook Help Center
  15. Create and publish posts on LinkedInLinkedIn Help
  16. Single image ads advertising specificationsLinkedIn Marketing Solutions Help
  17. Review Pin specsPinterest Help
  18. Create Pin, API referencePinterest Developers
  19. Review ad specs, character countsPinterest Business Help
  20. Content Posting API, direct post referenceTikTok for Developers
  21. Content Posting API, photo post referenceTikTok for Developers
  22. Changing your usernameTikTok Support
  23. Changing your nicknameTikTok Support
  24. Changing account bioTikTok Support
  25. Edit video settings, title and description limitsYouTube Help
  26. YouTube Data API, videos resourceGoogle for Developers
  27. YouTube Data API, channels resourceGoogle for Developers
  28. YouTube hashtag policiesYouTube Help
  29. A/B test titles and thumbnailsYouTube Help
  30. Posting to your profileMastodon documentation
  31. Setting up your profileMastodon documentation
  32. Instance methods and configurationMastodon documentation
  33. Status length validatorMastodon on GitHub
  34. Live server settings of mastodon.socialmastodon.social
  35. Live server settings of hachyderm.iohachyderm.io
  36. Live server settings of infosec.exchangeinfosec.exchange
  37. Live server settings of fosstodon.orgfosstodon.org
  38. Telegram Bot APITelegram
  39. Client configuration, Premium limitsTelegram
  40. Telegram FAQ, usernamesTelegram
  41. 700 million users and Telegram PremiumTelegram
  42. Message resource and embed limitsDiscord Developer Portal
  43. Channel resourceDiscord Developer Portal
  44. User resource, username rulesDiscord Developer Portal
  45. Guild resource, server nameDiscord Developer Portal
  46. What are Nitro and Nitro BasicDiscord Support
  47. Unicode text segmentation, grapheme clustersUnicode Consortium
  48. Video: A/B testing on YouTubeYouTube Creators
  49. Video: every posting feature in MastodonGargron
  50. Video: title A/B testing launchCreator Insider

Researched and written by Spreadcast. Last checked on October 28, 2026.

Still on autopilot

One Caption per Network, Each One Within Its Limit

Spreadcast designs the post in your brand and writes a caption sized for each of 11 networks, from Bluesky's 300 to LinkedIn's 3,000. Paste your App Store link or website to start.

Free to start · No credit card · No manual posting