An animated sticker weighs less than a regular picture and still looks like a cartoon. Here is how that works, what Telegram's rules are and why half of the usual design habits do not apply.
Three kinds of stickers
Telegram accepts stickers in three forms:
- Static. A PNG or WEBP image.
- Animated. Vector animation in the TGS format. The smoothest and lightest stickers are made this way.
- Video. A short WEBM clip without sound. It fits when the animation is hard to build from vectors: a photo, live footage, complex effects.
Custom emoji in Telegram use the same formats, they are just shown inside a line of text, next to the letters.
What TGS is
TGS is based on Lottie, an open vector animation format. Inside there are no frames, only a description of shapes and how they move: a point here, half a second later over there. The app draws every frame on screen itself, so the sticker stays sharp on any phone.
A .tgs file is Lottie JSON compressed with gzip. Unpack it with any archiver and you get a plain text file. That is where the light weight comes from: according to Telegram, a detailed TGS animation takes less than 30 KB.
The official way to make one: draw in a vector editor, animate in Adobe After Effects and export with the Bodymovin-TG plugin, a version of Bodymovin that Telegram adapted for its format.
Telegram's requirements
| Parameter | TGS | WEBM video |
|---|---|---|
| Size | 512 × 512 canvas, objects stay inside it | One side exactly 512, the other 512 or less |
| Length | Up to 3 seconds | Up to 3 seconds |
| Frames | Exactly 60 per second | Up to 30 per second |
| Weight | Up to 64 KB | Up to 256 KB |
| Loop | Must loop | Looping recommended |
| Other | Only allowed After Effects features | VP9 codec, no sound |
Static stickers follow the same size rule: one side exactly 512 pixels. Static and video emoji are exactly 100 × 100 pixels.
What TGS does not allow
The app has to draw hundreds of stickers in a chat quickly, so Telegram bans everything that is heavy to compute on a phone:
- expressions and auto-bezier
- masks and layer effects
- images, solids and text layers
- 3D layers
- merge paths and star shapes
- gradient strokes
- repeaters
- time stretch and time remapping
- auto-orient
What this means for design
The rules look technical, but they decide the whole style of a sticker. This is what we take into account from the start:
- Vector only. The character is drawn with shapes. A photo or texture cannot go into TGS, it can only be redrawn.
- Text becomes shapes. Text layers are banned, so lettering is turned into outlines before animation.
- A 3-second story. In that time you show one emotion and return to the starting pose, so the loop is invisible.
- A weight budget. 64 KB runs out fast. Extra points in paths and extra keyframes have to go, or the file will not pass.
- An emoji reads at letter size. A sticker is seen large, an emoji sits in a line next to letters. It needs a simple silhouette and large details.
Emoji and Telegram Premium
Telegram has supported custom emoji since version 8.9, released in August 2022. Any user can create a set. Adding sets and using them in messages is for Telegram Premium subscribers.
Emoji have a useful option: if you send the /adaptive command to the bot while creating a set, the emoji change colour to match where they are used. One set then looks right in both the light and the dark theme.
Sets are created through the @Stickers bot and mini app or with the sticker editor built into Telegram.
How to check a file
We made a free TGS check that runs in the browser. Drop a file and it shows the animation, canvas size, length, frame rate and weight, and marks what Telegram will not accept. The file is not sent anywhere. The tool’s interface is in Russian for now, the checks read the same in any language.
Source of the requirements: Telegram's official documentation, core.telegram.org/stickers. Checked on 27 September 2026. Telegram may change the rules, check the current version before uploading a set.