Telegram character limit: 4,096 per message, 1,024 per caption, and what Premium changes
The Telegram character limit is 4,096 per message and 1,024 per media caption, or 4,096 with Premium. A sourced table of the limits and how to fit long posts.
Telegram channels & groupsBy Dariusz KrasinskiPublished 11 min read
In short
- A Telegram text message holds up to 4,096 characters; the caption on a photo, video or file holds 1,024, or 4,096 with Premium.
- A post that fits as a text message can be too long once you attach a picture, because the text becomes a caption: send the picture first and the text after it.
- Telegram counts characters after formatting is applied, so formatting marks don’t count, but some emoji count as more than one.
The Telegram character limit is 4,096 characters for a text message and 1,024 for the caption on a photo, video or file, rising to 4,096 with Telegram Premium. Premium users also get a Rich Text Editor that sends up to 32,768 characters in one message. Bios, names, polls and stories have their own, shorter limits.
What is the Telegram character limit?
The Telegram character limit depends on the field: 4,096 characters for a text message, 1,024 for a media caption (4,096 with Premium) and as little as 32 for a username, while Premium’s Rich Text Editor sends up to 32,768. The table below collects each limit from Telegram’s own documentation, as of 11 October 2026. Where Telegram publishes no figure, the table says so, and community figures are marked as such.
| Field | Free account | With Premium | Where Telegram says so |
|---|---|---|---|
| Text message | 4,096 characters | No Premium figure published; 8,192 per a community list, unconfirmed by Telegram | Bot API: sendMessage |
| Rich text message | Not available | 32,768 characters, in the Rich Text Editor | Telegram blog, 14 July 2026 |
| Media caption | 1,024 characters | 4,096 characters | Client configuration |
| Story caption | 200 characters | 2,048 characters | Client configuration |
| Bio | 70 characters | 140 characters | Client configuration |
| Quote in a reply | 1,024 characters | 1,024 characters | Client configuration |
| Username | 5 to 32 characters: a–z, 0–9 and underscores | Same | account.updateUsername |
| Channel or group name | 1 to 128 characters | Same | TDLib: setChatTitle and Bot API: setChatTitle |
| Channel or group description | Up to 255 characters | Same | TDLib: setChatDescription and Bot API: setChatDescription |
| Poll | Question up to 255 characters (300 when a bot sends it); up to 12 options of up to 100 each | Same | TDLib: inputMessagePoll and Bot API: sendPoll |
| First and last name | First name 1 to 64 characters; last name up to 64 | Same | TDLib: setName |
| File size | 2 GB per file | 4 GB per file | Telegram FAQ |
Two other limits often get mixed up with these, and neither is about length. How fast an account may send is covered in which Telegram rate limits are published, and how many messages a chat can hold in its scheduled list is covered in Telegram’s scheduled message limits.
How many characters can one Telegram message have?
One Telegram text message can hold 4,096 characters. Telegram’s Bot API puts it as “1-4096 characters after entities parsing”, and Telegram’s official TDLib library uses 4,096 as its default (OptionManager.cpp). For personal accounts, Telegram’s servers send the figure to each app in a setting called message_length_max, and the documentation for user accounts prints no fixed number.
The Telegram post character limit for channels follows the same rules, because a channel post is a message: 4,096 characters for a text post, and 1,024 for a post with a photo or video, or 4,096 when the account that posts it has Premium.
Bots work to the same figures: 4,096 characters for an ordinary message and “0-1024 characters after entities parsing” for a caption. Since Bot API 10.1 on 11 June 2026, bots can also send rich messages of up to 32,768 characters, covered further down.
How Telegram counts characters
Three details decide whether a long text fits:
- Formatting doesn’t count. The limit applies “after entities parsing”, so the symbols or HTML tags that make text bold are removed before the count, and in the Bot API a hidden link’s address is stored with the formatting (the entity’s
urlfield), not in the text. - Length is measured in code points. Telegram’s configuration reference describes
message_length_maxas the “Maximum length of messages (length in utf8 codepoints)”, and captions the same way. A letter or a simple emoji is one code point. An emoji with a skin tone, or one such as the red heart that carries an emoji-style selector, uses two. A country flag is a pair of regional indicator characters, and some emoji are several characters joined with zero-width joiners (Unicode Technical Standard #51), so those use two or more. - Counters can disagree. A counter built on JavaScript’s string length counts UTF-16 code units, in which most emoji take two, so it reads higher than Telegram does for emoji-heavy text. Telegram uses UTF-16 units for the positions of formatting inside a message (message entities), but its length limits are in code points.
What is the Telegram character limit with an image?
With an image, the Telegram character limit is the caption limit: 1,024 characters, or 4,096 if the sending account has Premium. The text you send with a photo, video or file is its caption, not a separate message, so a 3,000-character post that fits in a text message is too long as a caption on an account without Premium.
Both figures are in Telegram’s client configuration: caption_length_limit_default is 1,024 and caption_length_limit_premium is 4,096, each described as “the maximum UTF-8 length of media captions”. Telegram’s 2022 Premium announcement said only that Premium “allows adding more characters to media captions”, without giving a number.
If a post with a picture is too long, there are three ways to fix it:
- Shorten the caption to 1,024 characters and move the detail into a follow-up message.
- Send the picture first, then the text as an ordinary message, which takes up to 4,096 characters.
- Post from a Premium account, where a caption can run to 4,096 characters.
Does Telegram Premium remove the character limit?
No: Telegram Premium raises several limits but removes none of them. According to Telegram’s client configuration, its FAQ and its blog, Premium changes these:
- Media captions go from 1,024 to 4,096 characters.
- Bios go from 70 to 140 characters.
- Story captions go from 200 to 2,048 characters.
- Files go from 2 GB to 4 GB each.
- The Rich Text Editor, Premium-only for now, sends up to 32,768 characters in one message.
Ordinary text messages are the open question. Telegram’s documentation gives 4,096 and no Premium figure. A community-maintained list, Telegram Limits, gives Premium accounts 8,192, and the open-source Telegram Desktop app does read a separate Premium message length from Telegram’s servers, falling back to 8,192 when none arrives (data_premium_limits.cpp). Telegram hasn’t announced that figure, so treat it as unconfirmed and write to 4,096 when a text has to work from any account.
Premium limits also end with the subscription. For a longer bio, the Premium FAQ says “The first 70 characters will remain visible on your profile – the rest will be hidden until you resubscribe.”
When does the 32,768-character limit apply?
The 32,768-character limit applies only to rich messages: structured posts with headings, lists, tables and inline media, which bots can send and Premium users can write in the Rich Text Editor.
Bots came first. Telegram’s 11 June 2026 update let them send up to 32,768 characters in one message, “with a merciful Show More button after the first 8,000 or so”, and the Bot API added rich messages in version 10.1 the same day. On 14 July 2026 the Rich Text Editor brought the same length to people, and Telegram says the editor “is currently available to Telegram Premium users only.”
The Bot API lists the other limits on a rich message:
- Up to 32,768 characters of text, including custom emoji alternative text and formula source.
- Up to 500 blocks, counting nested blocks, list items and table rows.
- Up to 16 levels of nested formatting and blocks.
- Up to 50 media attachments in total.
- Up to 20 columns in a table.
Ordinary messages kept their limits: the Bot API still gives 4,096 characters for text and 1,024 for a caption.
Can you send a 2 GB file in Telegram?
Yes: any Telegram account can send files of up to 2 GB each, and a Premium account up to 4 GB, according to Telegram’s FAQ.
The developer documentation expresses this as a number of upload parts. The client configuration allows 4,000 parts for a free account and 8,000 for Premium, at up to 524,288 bytes a part, which works out at 2,097,152,000 and 4,194,304,000 bytes. Telegram’s Premium launch post adds that every user can download the larger files, whether or not they subscribe.
Bots have much smaller limits on Telegram’s hosted Bot API: a file a bot uploads directly can be up to 50 MB, or 10 MB for a photo, and up to 2,000 MB with a self-hosted Bot API server.
What happens when a Telegram message is too long?
When a request goes over a limit, Telegram’s API refuses it with an error rather than cutting the text. These are the errors it lists on messages.sendMessage, messages.sendMedia and account.updateProfile:
| Error | What Telegram says | What to do |
|---|---|---|
MESSAGE_TOO_LONG | “The provided message is too long.” | Cut the text to 4,096 characters or split it into several messages. |
MEDIA_CAPTION_TOO_LONG | “The caption is too long.” | Shorten the caption to the sending account’s limit, or send the text as its own message. |
ENTITIES_TOO_LONG | “You provided too many styled message entities.” | Use fewer styled pieces, such as bold, italics and links, in one message; Telegram doesn’t publish the cap. |
ABOUT_TOO_LONG | “About string too long.” | Trim the bio to 70 characters, or 140 with Premium. |
Telegram Desktop, for one, doesn’t show you an error for a long text: its source code cuts the text into several messages at the account’s limit and sends them one after another. A bot or a tool that calls the API directly gets the error instead, unless it splits the text itself. If a message fails for a reason that isn’t length, see why a Telegram message won’t send.
How do you fit long text into Telegram?
You fit long text into Telegram by moving it out of the caption, splitting it into parts or linking to a fuller version, all within the normal limits:
Put the picture first
Post the image or video with a one-line caption, then the full text as its own message, which takes 4,096 characters instead of 1,024.
Split at natural breaks
Break a long text into parts at paragraph ends and number them, such as 1/3, 2/3 and 3/3, so readers know more is coming. Keep each part under 4,096 characters.
Link to the long version
For an article, a changelog or terms, post a short summary with a link to the full text on your website.
Use the Rich Text Editor
With Premium, write the post in the Rich Text Editor, which sends up to 32,768 characters with headings, lists and tables in one message.
How do character limits work in scheduling and forwarding tools?
Which limits a scheduling tool gets depends on how it posts. A tool that posts through a bot works to the Bot API’s limits, 4,096 characters for an ordinary text message and 1,024 for a caption (a bot can also send a rich message of up to 32,768), because the bot is the sender and your own Premium doesn’t raise them. A tool that posts from your own account gets that account’s limits: 4,096 for text, and 1,024 or 4,096 for a caption depending on whether the account has Premium.
Dripl sends from the Telegram user accounts you connect, not through a bot, so each account’s own limits apply.
Dripl’s message box shows a running count out of 4,096 and won’t take more text than that, and saved message templates are capped at 4,096 characters too. If longer text gets into the box another way, Dripl shows “Telegram allows up to 4,096 characters.” and won’t save the message until it’s shorter. The count is the browser’s, in UTF-16 units, so it errs on the high side when the text has emoji.
When a message carries a file attachment, Dripl sends the text as the file’s caption, so an account without Premium can send up to 1,024 characters with it. Dripl doesn’t check the caption limit or know whether an account has Premium: Telegram refuses a caption that is too long, and the failure shows on the Errors page as MEDIA_CAPTION_TOO_LONG. A resend with the same text fails again. Duplicate the message instead, but the copy keeps the text and not the file: attach the file again and cut the text to 1,024 characters, or schedule the file with a short caption and the rest of the text as a second message. A repeating message carries the same text and file into its next occurrence, so edit that one too.
A scheduled message in Dripl carries one file of up to 1 MB, so Telegram’s 2 GB and 4 GB file limits don’t come into play there.
In forwarding, Dripl builds each copy from the source post’s plain text, so bold, italics and text links aren’t kept. Forward only posts you own or have permission to share: a copy goes out as a new message, with no “Forwarded from” label. Text that a rule adds before or after a media caption counts toward the caption limit of the account that forwards it. So does a source caption longer than 1,024 characters, which a Premium account can post: an account without Premium can’t send that copy, even when the rule adds nothing. A copy that goes over is logged as failed, and retrying it from the log sends the text only, without the media.
Scheduler
Send one-off and recurring messages to Telegram contacts, groups and channels at the time and in the timezone you choose, with templates and attachments.
Messages not sending
Telegram message not sending? Tell an outage from an account problem, read the error Telegram returns, and fix permission, forwarding and paid-message blocks.
Sources
- Telegram Bot API (Bot API 10.3, 24 August 2026) · checked
- Telegram API: client configuration · checked
- Telegram API: config constructor (message_length_max) · checked
- TDLib documentation: inputMessagePoll · checked
- TDLib documentation: setName · checked
- TDLib documentation: setChatTitle · checked
- TDLib documentation: setChatDescription · checked
- Telegram blog: Rich Text Editor, Communities, Ephemeral Messages in Groups (14 July 2026) · checked
- Telegram blog: Smartwatch Apps, Rich Text for Bots and more (11 June 2026) · checked
- Telegram blog: 700 Million Users and Telegram Premium (19 June 2022) · checked
- Telegram Premium FAQ · checked
- Telegram FAQ · checked
- Telegram API: messages.sendMessage · checked
- Telegram API: messages.sendMedia · checked
- Telegram API: account.updateUsername · checked
- Telegram API: account.updateProfile · checked
- Telegram API: styled text with message entities · checked
- TDLib source: OptionManager.cpp (default length options) · checked
- TDLib API scheme: premiumFeatureRichMessages · checked
- Telegram Desktop source: data_premium_limits.cpp · checked
- Telegram Desktop source: apiwrap.cpp (sending long text) · checked
- Unicode Technical Standard #51: Unicode Emoji · checked
- MDN: String length (UTF-16 code units) · checked
- Telegram Limits (community-maintained list, not Telegram) · checked
How the guides are researched and updated: editorial standards.
FAQ
Questions, answered
Can’t find it? Contact support
Do emoji count as more than one character on Telegram?
Some do. Telegram measures message length in Unicode code points. A simple emoji counts as one; a country flag, or an emoji with a skin tone or an emoji-style selector (as on the red heart), counts as two; emoji joined with zero-width joiners count as several. Counters built on JavaScript’s string length count UTF-16 units instead, showing most emoji as two, so they read higher than Telegram does for emoji-heavy text.
Do bold text and links count toward Telegram’s character limit?
The formatting itself doesn’t. Telegram applies the limit after formatting is parsed, so the symbols or tags that make text bold or italic aren’t counted, and in the Bot API a hidden link’s address is stored with the formatting rather than in the text. The visible words still count, and a message with too many styled pieces can fail with ENTITIES_TOO_LONG.
What happens to a long Telegram bio when Premium ends?
Telegram’s Premium FAQ says the first 70 characters stay visible on your profile and the rest is hidden until you resubscribe. It describes the extra text as hidden, not deleted. If your bio runs past 70 characters, put what matters most, such as what you do or how to reach you, at the start.
Can I send more than 4,096 characters on Telegram without Premium?
Not in one message. Without Premium, split the text into numbered messages, send any picture first and the text after it, or post a summary that links to the full version. Telegram Desktop splits an over-long text into several messages for you. As of October 2026, the Rich Text Editor, which sends up to 32,768 characters, is for Premium users only.
What is the caption limit for Telegram Stories?
A story caption can be up to 200 characters on a free account and up to 2,048 with Premium, according to Telegram’s client configuration. That is a separate limit from the caption on a photo or video sent in a chat, which is 1,024 characters, or 4,096 with Premium.
How long can a Telegram channel name and description be?
A channel or group title can be 1 to 128 characters and a description up to 255. Telegram documents no Premium variant for either, and its TDLib documentation gives the same 1 to 128 and 0 to 255 for user accounts as the Bot API gives for bots. A personal bio is shorter: 70 characters, or 140 with Premium.