Telegram has two kinds of moving stickers. Animated stickers are small vector animations in Telegram's TGS format, made in an animation tool and exported as Lottie data. Video stickers are short WEBM videos encoded with the VP9 codec. Both must be at most three seconds long and fit Telegram's size rules, and you upload them into a sticker pack that anyone can then add.
Video stickers are the easier route for most people, because you can make them from any short clip. Animated stickers look sharper and stay tiny, but need vector animation skills. This guide covers both, from planning to upload, and the reasons Telegram most often rejects a file.
The three sticker types at a glance
Telegram sticker packs can hold three formats. Knowing which you are making decides every step after.
- Static stickers. A still PNG or WEBP image. The simplest kind, covered in our guide to creating a sticker pack.
- Animated stickers (TGS). A vector animation. Telegram stores it as a compressed Lottie file, which describes shapes and movement mathematically rather than as pixels. That keeps files very small and lets the sticker look crisp at any size.
- Video stickers (WEBM). A short video file, encoded with the VP9 codec, usually with a transparent background. Anything you can film, draw frame by frame or cut from a clip can become one.
Telegram's developer documentation says a single sticker set can now mix static, animated and video stickers. Older sets were limited to one format, so if you see advice saying you must keep formats apart, it may be out of date.
Which should you make?
Choose video stickers if:
- You are starting from footage, a GIF, a screen recording or frame-by-frame drawings.
- You want photographic or painterly looks that vectors cannot do.
- You do not use vector animation software.
Choose animated (TGS) stickers if:
- You draw in vector shapes and know an animation tool that exports Lottie.
- You want the sharpest result at every size with the smallest file.
- You are making a large, consistent character pack.
The technical rules
Telegram checks every file when you upload it. If any rule is broken, the upload is refused. These rules come from Telegram's own sticker documentation. Telegram can change them, so check its sticker pages if an upload fails for a reason not listed here.
Video sticker rules
- Format: a WEBM file encoded with the VP9 codec.
- Size in pixels: one side exactly 512 pixels, the other 512 or less. A square 512 by 512 is the common choice.
- Length: no more than 3 seconds.
- Frame rate: up to 30 frames per second.
- File size: no more than 256 KB.
- Audio: none. The file must have no audio track at all, not even a silent one.
- Looping: recommended. The sticker plays on repeat, so a clean loop looks far better.
- Transparency: supported. Use a format with an alpha channel to get a cut-out sticker instead of a box.
Animated (TGS) sticker rules
- Format: a TGS file, which is a compressed Lottie animation exported from an animation tool.
- Canvas: 512 by 512 pixels.
- Length: no more than 3 seconds, and the animation should loop.
- Frame rate: Telegram's animated sticker guide asks for 60 frames per second; its import documentation accepts a range up to 60.
- File size: no more than 64 KB after export.
- Allowed features: shapes, fills, strokes, transforms and similar vector features. Telegram's guide lists features that are not allowed, including expressions, masks, layer effects, text layers, 3D layers, time remapping, and raster images embedded in the file. Lettering has to be converted to plain shapes first.
Custom emoji
Telegram's custom emoji use the same formats at a smaller size. A video emoji must be exactly 100 by 100 pixels. If you plan to make emoji as well, see our guide to creating a custom emoji pack.
Designing stickers people actually use
A sticker is seen small, in a busy chat, for a second or two. Design for that, not for a full-screen preview.
Readable at small size
- Use bold shapes and thick outlines. Fine lines disappear at chat size. A clear outline also separates the sticker from any chat background.
- Exaggerate the expression. Eyes, mouth and pose carry the meaning. Subtle expressions read as blank.
- Fill the canvas sensibly. A tiny figure in the middle of a large empty canvas looks lost; a figure touching every edge looks cramped. Leave a small margin.
- Keep lettering short and large. One or two words at most, and only if the sticker needs them. Remember that people in other countries may use the pack.
Built around reactions
The stickers that get sent most are answers to everyday messages. A useful starting list covers yes, no, thanks, laughing, love, sad, surprised, angry, thinking, waving hello and goodbye, celebrating and "on my way". Each one should be recognisable without reading any text. If your pack is themed, express these same reactions through your character or topic.
Motion that helps, not distracts
- One action per sticker. A nod, a jump, a heart popping. Several actions in three seconds read as noise.
- Anticipation and settle. A small wind-up before a movement and a small settle after it look natural and make the loop easier.
- Calm loops. A sticker loops for as long as it is on screen. Fast flashing or strobing is tiring to look at and can be uncomfortable for some people. Avoid it.
Consistent as a set
Use the same character proportions, outline thickness, colour palette and canvas framing across the pack. A pack that looks like it came from one hand is more likely to be added and kept.
Before you start
- Plan the pack. Decide on a style, a character or theme, and a list of moods or reactions. A pack of ten good stickers beats thirty rushed ones.
- Use your own work or work you have permission for. Characters, logos and clips from films or shows belong to their owners. Telegram can remove packs that infringe copyright.
- Set up a test chat. Your Saved Messages chat is perfect for checking how a sticker looks and loops before you publish.
- Pick a short name. Every pack has a link name. Have a couple of choices ready in case your first is taken.
- Keep your source files. Save the original project or video, not only the final export. You will need it to fix and compress.
How to make a video sticker
Step 1: Choose or create the clip
Start with footage or animation that tells its story in under three seconds. Good stickers have one clear action: a wave, a nod, a thumbs-up, a jump. Long scenes do not work at sticker size.
Sources that work well:
- A short clip of yourself or a pet against a plain background.
- Frame-by-frame drawings exported as a video.
- A screen recording of an animation you made.
- A GIF you made yourself, converted to video.
Step 2: Remove the background
Stickers look best as cut-outs. You have two choices:
- Film or draw on a plain background and remove it with a video editor's keying or background removal tool.
- Draw on a transparent canvas from the start, if your animation tool allows it.
The final export must keep the transparency. That means exporting to a format that stores an alpha channel. If you export without one, the background turns into a solid box.
Step 3: Trim and loop
- Cut the clip to three seconds or less. Shorter is easier to compress.
- Make the last frame lead back into the first. A small pause at the start and end, with the subject in the same pose, hides the jump.
- Watch it loop several times. Telegram will repeat it endlessly.
Step 4: Resize to 512 pixels
- Scale the clip so the longer side is exactly 512 pixels.
- Keep the other side at 512 or less. A square canvas is simplest.
- Leave a little empty space around the subject, so it is not cut off at the edges.
Step 5: Export as WEBM with VP9
Use a video editor, an animation tool or a conversion tool that can export WEBM with the VP9 codec and an alpha channel. Telegram publishes an encoding guide for this on its developer site. In words, the settings you want are:
- Container WEBM, codec VP9.
- A pixel format that includes an alpha channel, so transparency survives.
- No audio track.
- 30 frames per second or fewer.
- A target bitrate low enough to come in under 256 KB.
Step 6: Check the file size and compress
If the file is over 256 KB, reduce it in this order:
- Lower the bitrate. This is usually the biggest saving.
- Shorten the clip. Two seconds instead of three takes a third off.
- Reduce the frame rate. Animation drawn at a lower rate often looks fine at 24 or even lower.
- Simplify the image. Fewer fine details, less noise and fewer colour gradients compress better. Grainy footage is the hardest to fit.
- Shrink the subject's motion. Large movements across the whole frame change more pixels per frame and cost more space.
Export again after each change and check the size.
Another route: drawn frame by frame
If you draw rather than film, you can make a video sticker without any footage.
- In a drawing app that supports animation or layers, set a 512 by 512 canvas with a transparent background.
- Draw the key poses first, such as the start, the peak of the movement and the end, then fill in the frames between them.
- Use a modest frame rate. Hand-drawn animation often looks right at 12 frames per second, with each drawing held for two frames of a 24-frame timeline. Fewer unique frames also means a smaller file.
- Export the frames as a video with transparency, or as an image sequence that your converter can turn into WEBM with VP9 and an alpha channel.
- Continue from Step 6 above to check size and compress.
Flat colours and clean lines suit this route well. They compress far better than painted textures, so you can keep more frames inside the size limit.
Worked example: a waving cat sticker
This is an illustration of the process, not a fixed recipe.
Maya films her cat raising a paw against a white wall. She cuts the clip to two seconds, removes the white background with her editor's keying tool, and adjusts it so the paw starts and ends down. She scales it to 512 by 512 and exports WEBM with VP9 and transparency at 30 frames per second. The file is too big, so she lowers the frame rate to 24 and the bitrate, and exports again. It now fits under the size limit. She sends it to her Saved Messages to watch the loop, notices a flicker at the edges of the fur, softens the edge in the editor, and exports a final version.
How to make an animated (TGS) sticker
Step 1: Set up the project
- In your animation tool, create a 512 by 512 canvas.
- Set the frame rate to 60, as Telegram's guide asks.
- Set the length to three seconds or less.
- Telegram's animated sticker guide uses Adobe After Effects with an export plugin that writes Telegram-compatible Lottie files. Other vector animation tools can export Lottie too, but check that they produce files within Telegram's rules.
Step 2: Draw with vector shapes
- Build the character from shapes, paths and strokes, not from imported images. Raster images are not allowed in TGS stickers.
- Keep the shape count sensible. Each shape and keyframe adds size.
- Avoid features Telegram does not support, such as masks, layer effects, expressions and 3D layers. Rebuild those effects using plain shapes and transforms.
Step 3: Animate a clean loop
- Animate with position, scale, rotation, opacity and path changes.
- Make the last frame match the first.
- Use easing for natural motion, but avoid hundreds of keyframes where a few will do.
Step 4: Export and check the size
- Export with the Telegram-compatible Lottie exporter to a TGS file.
- Check the file is 64 KB or less.
- If it is too big, remove hidden layers, merge shapes, cut keyframes and simplify paths.
Step 5: Preview it
Preview the animation in a Lottie player before uploading. If it looks different from your project, an unsupported feature was probably dropped during export.
Worked example: a bouncing logo mark
This is an illustration only.
Sam animates his project's round mascot in a vector tool: a squash, a bounce and a blink, two seconds long. The first export is 90 KB and is refused. He finds an unused layer of hidden shapes, deletes it, and reduces the blink from many keyframes to three. The next export is under 64 KB and uploads.
How to upload your stickers to a pack
Telegram has two ways to manage sticker packs: the in-app sticker editor and Telegram's official @Stickers bot. Telegram's developer documentation now recommends the in-app editor for editing, and says the @Stickers bot's functions can still be reached through text commands.
U
Using the bot@StickersOPEN
The bot walks you through the process step by step, and its prompts tell you which command to use for each format.
- Open a chat with @Stickers. Make sure it is the official bot; the handle is exactly that.
- Start it. It lists the current commands. There are separate commands to start a new static, animated or video pack.
- Choose the command for your format and give the pack a title.
- Send your first sticker file as a file, not as a photo or video, so Telegram does not convert it.
- Send one or more emoji that match the sticker. These decide when Telegram suggests it.
- Repeat for each sticker.
- When you are done, follow the bot's prompt to publish the pack.
- Choose a pack icon if the bot asks, or skip it.
- Choose the short name for the pack's link. If it is taken, try another.
The bot then gives you a link to add the pack. Share it with friends, or post it in your channel.
Using the in-app editor
Recent versions of Telegram include a sticker editor. It is designed mainly for making stickers from photos, with tools to cut out a subject and add an outline, and it lets you add stickers to your own packs and reorder or remove them. For finished animated or video files, the bot route remains the straightforward option.
Adding emoji and keywords
Each sticker is linked to emoji, and Telegram suggests the sticker when someone types that emoji. Pick emoji people would actually type for that feeling. A laughing sticker linked only to an obscure emoji will rarely be suggested.
Editing a pack later
You can add stickers, remove them, change their emoji and reorder them after publishing, using the bot or the editor. People who added the pack see the changes automatically.
For developers: creating packs through a bot
If you are building a sticker maker, a brand tool or a bot that generates stickers, Telegram's Bot API can create and edit packs without the @Stickers bot. The process, described in words, looks like this.
- Create a bot with @BotFather if you do not have one. The pack will be linked to it.
- Upload each sticker file with the Bot API's sticker upload method, naming the user who will own the pack and the file's format: static, animated or video. Telegram returns a file identifier you reuse in the next step.
- Create the set with the method for creating a new sticker set. You pass the owner's user identifier, a title, a short name and the first stickers, each with its format and its emoji. The short name for a bot-created pack must end with an underscore, the word by, another underscore and the bot's username, so Telegram can tell which bot made it.
- Add more stickers with the method for adding a sticker to a set, up to Telegram's per-pack limit.
- Manage the set with the methods for changing a sticker's emoji or keywords, changing its position, deleting it, and setting the pack's thumbnail.
A few points save debugging time:
- The owner must be a real Telegram user who has started a chat with your bot. The pack belongs to them as well as to the bot.
- Since mixed-format packs were introduced, the format is set per sticker rather than per pack. Older tutorials that pass a format for the whole set describe the earlier model.
- Every file still has to meet the same size, length and codec rules as a manual upload. The API returns an error naming the problem if it does not.
- Treat users' uploads with care. If your bot accepts images or videos from the public, you are responsible for not publishing infringing or abusive content under your bot's name.
Our guide to creating a bot with BotFather covers getting a bot token and keeping it secret.
Testing before you share
- Send each sticker to your Saved Messages.
- Watch the loop several times. Look for a jump between the last and first frame.
- View it in both light and dark chat themes. A dark outline vanishes on a dark background; a white edge left from background removal stands out.
- Check it on a phone and on a computer if you can.
- Send it in a chat with a friend to see the size in context.
Sharing and using your pack
- Share the link. The pack's link opens a preview with an add button.
- Post it in your channel. A sticker pack in your channel's style gives subscribers something to share, which spreads your name in other chats. Our guide to growing a Telegram channel covers how this fits a wider plan.
- Use it for reactions. Stickers are quick replies in groups and comments.
To learn how others find, add and organise packs, see finding, adding and managing sticker packs.
When Telegram rejects your file
Each rejection has a likely cause. Read the bot's message carefully; it often names the rule.
File too large
How to recognise it: the upload is refused with a size message.
- For video, lower the bitrate, shorten the clip, lower the frame rate or simplify the image.
- For TGS, remove hidden layers, merge shapes and cut keyframes.
- Export again and check the size before uploading.
Wrong dimensions
How to recognise it: the message mentions size in pixels.
- For video, make one side exactly 512 pixels and the other 512 or less.
- For TGS, use a 512 by 512 canvas.
- Check your export settings did not add padding or round the size.
Too long
How to recognise it: the message mentions duration.
- Trim to three seconds or less. Exporters can add a frame or two at the end, so aim slightly under.
Video has audio
How to recognise it: the file looks right but is refused.
- Export with audio disabled. A silent audio track still counts as audio.
Wrong codec or no transparency
How to recognise it: the bot does not accept the file as a video sticker, or the sticker shows a black or white box.
- Export WEBM with VP9, not another codec.
- Choose a pixel format with an alpha channel. Users have reported files without one being refused, and without alpha there is no transparency anyway.
TGS refused or looks wrong
How to recognise it: the bot refuses the file, or the sticker animates differently from your project.
- Remove unsupported features: expressions, masks, effects, 3D layers, embedded images.
- Use Telegram's own sticker exporter or one known to follow Telegram's rules.
- Check the frame rate and canvas size.
Sent as a photo or video instead of a file
How to recognise it: the bot treats your upload as an ordinary media message.
- Send the sticker as a file or document. On phones, use the attachment menu's file option instead of the gallery.
What to do next
Once your first pack is live, a few next steps make it more useful.
- Watch which stickers people send back to you. The ones friends use most tell you what to make more of.
- Add a matching emoji pack if you have the art. Custom emoji appear inside messages and reactions, and reuse the same files at a smaller size.
- Update rather than replace. Adding new stickers to the same pack keeps everyone who already added it, while a new pack starts from zero.
Common mistakes
- Making stickers too long. Three seconds is the hard limit; most good stickers say what they need in one or two.
- Forgetting the loop. A visible jump every few seconds looks broken.
- Losing transparency on export. Without an alpha channel, the sticker sits in a box.
- Leaving a silent audio track. It still causes a refusal.
- Using copyrighted characters. Packs that infringe can be removed. Make your own art.
- Ignoring dark mode. Test on both themes; edges that look fine on white can look rough on black.
- Linking stickers to unhelpful emoji. Choose the emoji people actually type for that mood.
- Not keeping source files. Without them, every fix means starting over.
FAQ
Do I need Telegram Premium to make animated or video stickers?
No. Anyone can create and share sticker packs. Premium adds some extras for using stickers and emoji, which you can check on the Premium page inside Telegram.
Can I turn a GIF into a Telegram sticker?
Yes, if it is yours or you have permission. Convert it to WEBM with VP9, resize so one side is 512 pixels, trim to three seconds, remove audio and compress under 256 KB.
Why is my video sticker showing a black background?
The export lost its transparency. Export WEBM with VP9 using a pixel format that includes an alpha channel.
Can I mix animated, video and static stickers in one pack?
Telegram's developer documentation says sticker sets can now contain a mix of static, animated and video stickers. If your tool or the bot refuses, follow its current prompts, since behaviour can differ between tools.
How many stickers can a pack have?
Telegram sets a maximum per pack and can change it. The bot or editor tells you if you reach it. Most good packs are far smaller than the limit anyway.
Can I delete a sticker pack?
Yes. The @Stickers bot and the in-app tools let you remove stickers or delete a pack you created.
Summary
Make video stickers from short clips: cut out the background, trim to three seconds, loop it, resize so one side is 512 pixels, export WEBM with VP9 and an alpha channel, remove audio and compress under 256 KB. Make animated TGS stickers in a vector tool on a 512 by 512 canvas at 60 frames per second, avoid unsupported effects, and export under 64 KB. Upload through the official @Stickers bot, sending each file as a file and linking it to fitting emoji, then test in both themes before sharing. Use your own art, keep your source files, and read the bot's refusal messages: they usually name the rule you broke. If you want to bring stickers from another app instead, see moving Telegram stickers to WhatsApp for how packs translate between apps.