Prepare 100x100 static, animated or video emoji, upload them with Telegram's official @Stickers bot, publish a shareable pack, and use it in chats, groups and channels.
To create a custom emoji pack, prepare your images at exactly 100x100 pixels, open Telegram's official @Stickers bot, start a new emoji pack, upload each emoji and match it to a standard emoji, then give the pack a short name. Telegram publishes it at a link anyone can open to add it. Creating a pack is open to everyone, but using custom emoji freely in messages is a Telegram Premium feature, with some exceptions for boosted groups.
This guide covers file formats, the upload steps, design tips for a tiny canvas, who can use your emoji where, and how to fix the errors people hit most.
Custom emoji are small images that sit inside text, like ordinary emoji, instead of being sent as a separate picture. You can put one in the middle of a sentence, in a channel post, in a reaction, or next to your name as an emoji status.
They differ from stickers in three ways:
If you want large images to send on their own, see our guide to creating a sticker pack. This article is only about emoji packs.
Telegram accepts three formats, and one pack must use just one of them:
Static emoji are by far the easiest to make. Choose animated or video only if motion really adds something.
This is the part people most often get wrong, so it is worth being precise.
Telegram's help pages say everyone can create new custom emoji. You do not need Premium to upload a pack through @Stickers.
Using custom emoji in your own messages, from any pack, anywhere, is a Telegram Premium feature. Users without Premium still see custom emoji that others send. They can add packs to their collection but cannot type them freely in every chat.
The rules around Premium and boosts change from time to time. Before you make a pack for a specific audience, check what they will actually be able to do with it. For a broader comparison, see Telegram Premium vs free.
A pack that people actually use starts with what they will use it for, not with the art.
Most packs do one of four jobs:
Mixing jobs is fine, but knowing the main one tells you what to draw first and how to match standard emoji.
Begin with the emoji you are sure people will use, often eight to fifteen. You can add more later without changing the link. A small, consistent pack beats a large one where half the emoji never get used.
An illustrative example. A local news channel designs a red "breaking" dot, a blue "explainer" dot, a calendar mark for events and a pin for locations. Each is linked to a similar standard emoji. Admins start each post with one marker, so readers can see the type of post before reading a word.
Remember that some people switch off autoplaying animations, for example with Telegram's power saving options. Animated emoji should still make sense as a still frame.
Gather these before you open the bot. It makes the upload a ten-minute job instead of an afternoon.
Getting the files right is most of the work. The bot rejects anything that does not match the format.
Telegram's documentation for custom emoji states that a static image must be exactly 100x100 pixels, in PNG or WEBP format.
Telegram's documentation for video emoji asks for exactly 100x100 pixels, no longer than three seconds, VP9 codec in a WEBM container, and no audio track. Telegram's encoding guide also gives a small maximum file size for emoji. Check that page before you export, because a clip that is slightly too large is the most common rejection.
TGS files are vector animations exported from a Lottie-compatible workflow. Telegram's animated stickers page describes the requirements and an export plugin for this. It is the most demanding route. Use it if you already work with vector animation, because a TGS emoji stays sharp at any screen density and is very small.
A custom emoji appears at the size of text. Detail that looks lovely at 512 pixels becomes noise at that size.
Telegram supports emoji packs whose emoji are recoloured to fit the context, for example matching the text colour in a message or the accent colour when used as a status. This suits simple one-colour icons, such as a logo mark. If you want this, design in a single flat colour. The bot or the pack settings let you mark the pack this way. The exact option name varies, so read the bot's prompts carefully.
If you commission the pack, a clear brief saves rounds of corrections. Include:
Before uploading, put each finished emoji through this quick test on a phone:
@Stickers is Telegram's official bot for creating sticker and emoji packs. It also offers a built-in Mini App for creating and managing packs. Telegram has described this app as a way to create stickers and emoji, manage packs and see usage statistics. Depending on your app version, you may be offered the app, the classic chat commands, or both.
Make sure you open the real bot. Check that the username is exactly @Stickers, because copycat bots with similar names exist.
The pack's link uses Telegram's emoji-pack address, with your short name at the end. Anyone who opens it can preview the pack and add it.
The bot needs the original file. How you send one depends on the app.
Developers can also create custom emoji packs through the Bot API. A bot calls the method for creating a new sticker set and sets the sticker type to custom emoji. Packs created this way have names that end with the bot's username, and the bot must have a user who will own the pack. This suits apps that let users build packs automatically. For most people, @Stickers is simpler. Our guide to creating a bot with BotFather covers the first step if you want to try.
Open the pack's link and add it. It now appears in your emoji panel in a section for custom emoji.
With Premium, open the emoji panel in any chat, switch to your custom packs, and tap an emoji to insert it into your message. Telegram also suggests custom emoji when you type a standard emoji that you linked to them, which is why the matching step matters.
Admins with Premium can include custom emoji in posts. With enough boosts, you can also set custom reactions so readers react with your emoji. See setting up channel reactions for how reactions work in general.
A Premium user can set any custom emoji as their status next to their name. A channel can set one once it reaches the required boost level. Using your brand's emoji as a status is a quiet way to make it familiar.
A published pack sits unused unless people see it in action.
The @Stickers Mini App is described by Telegram as showing usage statistics for your packs. Where your version offers this, it tells you which emoji people actually use, which helps decide what to draw next.
Emoji packs are public, and Telegram can remove packs that break its rules or that are reported for infringement.
You can change a pack after publishing. Changes show up for everyone who added it.
You can also delete the whole pack. People who added it lose it, and emoji from it in old messages may stop displaying as intended. Prefer removing individual emoji over deleting a pack people use.
The link's address is fixed for good. If you need a new address, create a new pack and point people to it.
An illustrative example. A cycling news channel makes a pack of twelve static emoji: its logo in one colour, a bike, a helmet, a trophy and a few reactions. The logo is designed as a single flat shape so it can be an adaptive emoji. The admin, who has Premium, uses the logo in post headers. Once the channel reaches the right boost level, the bike and trophy become custom reactions. Readers start using them in comments, and the pack link is posted in the channel description.
A gaming group makes a pack of its members' running jokes as video emoji. Each clip is under three seconds and loops cleanly. The group's members boost it to the level needed for a group emoji pack, and everyone, Premium or not, can now use the pack in that group.
A handmade candle shop creates emoji for each product line and a "new arrival" badge. It uses them in its broadcast channel to mark product types at a glance. It does not expect customers to use them, so it does not worry about who has Premium.
The file is not exactly 100x100 pixels. Re-export at that size. Check that your editor did not add a border or round the size.
Check that you opened @Stickers and not a lookalike. Send the start command again, or cancel the current step with the bot's cancel command and begin again. If the bot's Mini App will not load, update Telegram and try the chat commands instead, or the other way round. Busy periods can also slow replies, so wait a minute before resending, or you may add the same emoji twice.
You sent a compressed image. Send it as a file or document so the exact pixels arrive.
Usually the file is too large, too long, or has an audio track. Shorten the clip, remove audio, reduce the frame rate or quality, and confirm the codec is VP9 in WEBM.
They were scaled up from a smaller drawing, or exported with heavy compression. Draw larger, scale down once, and export at good quality.
You probably do not have Premium, and the chat is not a group whose group pack is your pack. Creating a pack does not unlock using it everywhere.
Check the short name for typos. Names are exact. If you deleted the pack, the link no longer works.
Report the pack through Telegram. Our guide on how to report on Telegram explains the options. Keep your original files as proof of authorship.
No. Telegram's help pages say anyone can create custom emoji. Premium is needed to use custom emoji freely in your own messages.
Exactly 100x100 pixels, for static images and video emoji. Static images must be PNG or WEBP. Video emoji must be WEBM with VP9, no audio and no longer than three seconds.
You can reuse the artwork, but you have to export it again at 100x100 pixels and create a new emoji pack. Sticker packs and emoji packs are separate.
They can see them in messages. In a group that has set your pack as its group emoji pack, members can use it there. Elsewhere, typing custom emoji needs Premium.
Share the link the bot gives you when you publish. Anyone who opens it can preview and add the pack.
You can change the title, add or remove emoji, or delete the pack. The short name in the link cannot be changed.
A custom emoji pack is a set of 100x100 images that work like text characters. Prepare files in one format, static PNG or WEBP, TGS animation, or WEBM video, then upload them through Telegram's official @Stickers bot, match each one to a standard emoji, and publish with a short name. Anyone can create a pack, but using custom emoji freely needs Premium, while boosted groups can share one pack with all members. Design bold, simple shapes that read at text size, and test them on both light and dark themes.
Ownership confirmed through our claim process — not an endorsement of their content.
Founder of Telegram.
The official Telegram on Telegram. Much recursion. Very Telegram. Wow.
Telegram Premium – a subscription that unlocks dozens of exclusive features.
Binance Official English Group Binance Official Chinese Group Binance English Announcements Binance Chinese Announcements
is a modern crypto news and research platform covering the latest developments across digital assets, markets, regulation, and blockchain technology.
Technical analysis & high-probability trade setups. Price action, market structure, risk control.
BlackBlock Markets exists to observe how capital moves before it becomes obvious.
This channel focuses exclusively on what shapes global finance. Macroeconomics, markets, liquidity, central banks.
Clear long & short signals for BTC, ETH & liquid altcoins. AI-backed analysis, real-time execution.