Discord Emoji Maker

Turn any GIF, image or short clip into a Discord emoji or sticker at the right size - 128 x 128 under 256 KB, or 320 x 320 APNG under 512 KB. It makes Twitch emotes in all three sizes, Slack emoji and 7TV emotes too. Need other sizes? The GIF Resizer does any size, and Compress GIF slims down big ones.

How to Make a Discord Emoji from a GIF

  1. Pick a target. Choose a Discord Emoji (128 x 128, under 256 KB), Sticker (320 x 320, under 512 KB) or Message GIF (under 20 MB) - or a Twitch emote, Slack emoji or 7TV, BTTV or FFZ emote.
  2. Add your file. Drop a GIF, PNG, JPG, WebP or a short MP4 clip, browse for it, paste it with Ctrl+V, or paste a Tenor, GIPHY or X link.
  3. Make it square. Crop to the centre, fit it with transparent or coloured padding, or stretch it. The chat preview shows it at real chat sizes in light and dark mode.
  4. Download and upload. Press Make it, check the measured file size against the limit, download it with its clean name and upload it - on Discord under Server Settings, Emoji or Stickers.

No GIF handy? Grab an animated GIF sample and give it a spin.

Discord Emoji Size and Sticker Size

Discord checks the file size before anything else.

A file even a few bytes over the limit is refused, so the maker measures the real output instead of guessing.

UploadSizeFile limitFormatsShown in chat
Emoji128 x 128256 KBPNG, JPG, GIF, WebP22 px inline, 48 px jumbo
Animated emoji128 x 128256 KBGIFSame sizes, animated
Sticker320 x 320512 KBPNG, APNGabout 160 px
Message GIFany20 MB (free account)GIF, MP4 and moreup to about 400 px wide

Animated stickers should run 5 seconds or less. Longer animations are cut to their first 5 seconds here, so nothing gets refused.

Twitch Emote Size, Slack Emoji and 7TV Emotes

Every chat app has its own rules.

Pick the platform above and the maker sizes, squeezes and names the file for it - no guessing.

PlatformSizeFile limitFormatsFrames
Twitch emote112, 56 and 28 px (or one 112-4096 px square)1 MB, animated 512 KB per sizePNG, animated GIF60
Slack emojisquare, 128 x 128 is safeunder 128 KBJPG, PNG, GIF50
7TVup to 1000 x 1000, shown 32 px tall7 MBWebP, GIF, PNG, AVIF and more1000
BetterTTVshown 28 px tall, 112 px is idealunder 1 MBPNG, GIF, WebP-
FrankerFaceZresized to 32, 64 and 128 px-PNG, JPG, WebP, GIF, APNG-

Twitch emotes: one file or three

With auto-resize on, Twitch takes one square file and makes the smaller sizes itself.

Turn it off and you upload 112, 56 and 28 px yourself - better when fine details matter. You get both: a ZIP with all three and the single 112 px file. The preview shows each size at 1x, so you can spot lines that vanish at 28 px before your chat does.

Animated emotes are for Affiliates and Partners and may not flash more than 3 times a second. Flashing too fast? Slow it down with the GIF Speed Changer. Over 60 frames? The maker thins them out evenly, or trim the loop with the GIF Cutter first.

Codes and names

A Twitch code is your channel prefix plus a name, like prefixLove.

Slack names are lower case, BetterTTV codes need a capital, and 7TV is relaxed. The maker cleans the name for each one and uses it as the file name.

Limits as published on Twitch Help, Slack Help and the 7TV, BetterTTV and FrankerFaceZ upload pages, checked October 2026. FrankerFaceZ publishes no file size limit, so we keep its files under 1 MB.

How to Upload an Emoji or Sticker to Your Server

You need the Create Expressions permission, or be the server owner.

Emoji
  1. Open the server menu and choose Server Settings.
  2. Pick Emoji, then Upload Emoji.
  3. Choose the file. Its name becomes the emoji name, so keep the one we gave it.
Sticker
  1. On desktop or the web app, open Server Settings.
  2. Pick Stickers, then Upload Sticker.
  3. Choose the APNG or PNG, add a name and a related emoji, and save.

Emoji and sticker slots by Boost level

Server levelBoostsStatic emojisAnimated emojisStickers
No level050505
Level 1210010015
Level 2715015030
Level 31425025060

Limits as published by Discord in its emoji guide and Custom Stickers FAQ, checked October 2026. Discord changes them now and then.

Tips for Emojis That Look Great

Think small

Most people see your emoji at 22 pixels.

Faces, bold shapes and thick outlines read best. Crop tight with the GIF Cropper before you start.

Keep loops short

Every frame costs bytes against the 256 KB cap.

One to three seconds is plenty. Trim long GIFs with the GIF Cutter, or change the pace with the GIF Speed Changer.

Use transparency

Transparent edges blend into both light and dark mode.

A solid white box looks odd on dark themes - try the GIF Background Remover first.

Name it well

People type the name to find it, so short and obvious wins.

Use underscores between words, like happy_cat. Names are 2 to 32 characters.

Where to Get the GIF

Found the perfect reaction on Tenor or GIPHY?

Paste its link above, or save it with the Tenor downloader or the GIPHY downloader and send it straight here.

X stores GIFs as short videos, so an X link loads the clip and you pick the part you want. Starting from your own video? MP4 to GIF gives you more control over long clips.

Want text on it? Add a caption with Add Text to GIF, then bring the result back here.

Frequently Asked Questions

Make it 128 x 128 pixels and keep the file under 256 KB. Discord shows emojis at about 22 px inside a sentence and 48 px when the message is only emojis, so a square 128 px image stays sharp at both sizes.

Pick Emoji, drop your GIF (or paste a Tenor, GIPHY or X link) and press Make it. The tool crops it to a square, sizes it to 128 x 128 and squeezes it under 256 KB while keeping the animation. Then download it and add it under Server Settings, Emoji.

Animated emojis share the same 256 KB limit as still ones, and every frame costs bytes. The maker tries lossy compression and fewer colours first, then drops every second frame if you allow it - the running time stays the same.

Still over? Shorten the loop with the GIF Cutter and try again.

Server stickers must be exactly 320 x 320 pixels and under 512 KB, as PNG or APNG (animated PNG). Keep animations to 5 seconds or less. The Sticker option makes the APNG for you, plus a GIF copy.

Twitch wants square emotes in three sizes: 112 x 112, 56 x 56 and 28 x 28 pixels. Static emotes are PNG up to 1 MB. Animated emotes are GIF, 60 frames at most and 512 KB per size - or one square GIF up to 1 MB if you let Twitch auto-resize it.

Pick Twitch emote above and you get all three sizes in a ZIP plus the single 112 px file.

Slack takes square JPG, PNG or GIF images under 128 KB, and GIFs can have up to 50 frames - 128 x 128 is the safe size. 7TV accepts files up to 7 MB and 1000 x 1000 pixels and shows them 32 px tall. BetterTTV wants PNG, GIF or WebP under 1 MB and shows them 28 px tall, while FrankerFaceZ resizes to 32, 64 and 128 px.

The 7TV, BTTV, FFZ option makes an animated WebP with a GIF copy. Need a different WebP? Try GIF to Animated WebP.

Discord emoji names are 2 to 32 letters, numbers and underscores. Slack wants lower-case letters, numbers, dashes and underscores. Twitch codes are your channel prefix plus letters and numbers (prefix + Love = prefixLove), and BetterTTV codes need 4 to 25 letters and numbers with a capital.

The maker cleans the name for the platform you pick and uses it as the file name, so the upload form fills it in for you.

Anyone who can manage the server can upload animated emojis. Using animated emojis in chat, and using any custom emoji outside its own server, needs Discord Nitro. Stickers from the server work for everyone in that server.

Guides & Tutorials

All 14 guides
Comparison PNG vs JPG: Which Image Format Should You Actually Use? Read the guide Optimization How to Reduce Image File Size Without Losing Quality Read the guide Guide Complete ICO File Guide: Understanding, Opening & Converting Icon Files Read the guide