Telegram text formatting: post preview
Write text with Telegram markup and see right away how it will look in a channel. The counter works like Telegram: 4,096 characters for a text post and 1,024 for a photo or video caption. Everything runs in the browser; the text is not sent anywhere.
**bold**__italic__~~strike~~||spoiler||`code`[text](https://…)145 / 4,096 characters
Pre-orders for the new collection are open. The first 100 orders get free shipping.
See the catalog
Telegram markup
| What | How to write it |
|---|---|
| Bold | **text** |
| Italic | __text__ |
| Strikethrough | ~~text~~ |
| Spoiler | ||text|| |
| Monospace | `text` |
| Link | [text](https://…) |
In the Telegram app the same is done from the selected-text menu, and in bots via parse_mode MarkdownV2 or HTML. This editor shows the look; it does not send the post.
Questions and answers
How many characters can a Telegram post have?
4,096 characters in a text message and 1,024 in a caption under a photo, video or file. Spaces and emoji count; markup (asterisks, underscores) does not, because Telegram stores it apart from the text.
How do I make bold text or a spoiler in Telegram?
In the app, select the text and pick Bold or Spoiler from the menu. In this editor and in bots (MarkdownV2), bold is **text**, spoiler is ||text||, italic is __text__ and strikethrough is ~~text~~.
What is the difference between Markdown and HTML in Telegram bots?
Two ways to pass the same formatting via parse_mode: MarkdownV2 (asterisks and underscores) and HTML (tags b, i, tg-spoiler, a). The result in the chat is identical; HTML is easier to escape.
Why is the link in the preview not clickable?
The preview shows how the post looks; it does not send it. Links are disabled on purpose so nobody opens a foreign address by accident.
Does the editor send my text anywhere?
No. The markup parser and the counter run in the browser; nothing is sent to the server.