🖼️ Image tools

Emoji resizer

Resize an image for Discord, Slack or Twitch. Download square PNGs or an eight-image ZIP locally.

🗓️ Last updated 2026.11.02 ⏱️ Time required About 5 seconds 🔒 Processed only in the browser · No upload Translation updated: 2026-11-02

emote · emoji · badge

Image → platform-size PNG

One image, one preset. Convert instantly.

Waiting

PNG, JPG, WebP, GIF, BMP, AVIF · up to 20 MiB · drag, drop or paste (Ctrl+V) · GIF: first frame only

Upload an image and choose a platform to convert it.
Original
Before upload
Advanced settings
Platform
Fit
Sizes, upload location and references
Specification128×128 · PNG · 256 KiB preset reference
Where to uploadDiscord server settings › Emoji › Upload Emoji; permissions and slots depend on the server.
Animated imagesThis tool exports static PNGs. Check Discord for animated emoji permissions and current upload limits.
Upload an image and choose a platform to convert it.
Output Square RGBA PNG · actual pixel size · platform and dimensions in the filename
Downscaling Reduce large images in stages before drawing the final size
Processing location Local browser canvas · no image upload or storage

QUICK ANSWER

Emoji and badge size reference (source snapshot: 2026-09-17)

Static output; animated-upload rules require a separate check
Quick answer · Discord emoji 128×128 PNG · 256 KiB maximum reference · transparent background Slack recommends square images under 128KB without fixing a pixel size; this tool uses 128×128. Twitch presets produce 28/56/112 emotes or 18/36/72 badges.
Platform · purposeDimensionsFormat · byte referenceAnimated imagesSource
Discord custom emoji 128×128 PNG · 256 KiB reference This tool exports static PNGs. Check Discord for animated emoji permissions and current upload limits. Discord reference
Slack custom emoji 128×128 PNG · 128 KiB tool reference; Slack recommends under 128KB Slack accepts GIFs with up to 50 frames; this tool exports a static PNG. Slack reference
Twitch emotes (3 sizes) 28×28(1x) · 56×56(2x) · 112×112(4x) PNG · 1 MiB preset reference This preset creates static PNGs. Animated emotes need a separate editor and Twitch upload checks. Twitch reference
Twitch subscriber badges (3 sizes) 18×18(1x) · 36×36(2x) · 72×72(4x) PNG · 25 KiB preset reference Static PNG badges; keep the background transparent. Twitch reference

These presets retain the source snapshot dated 2026-09-17. Discord, Slack and Twitch can change their upload requirements. Check the linked help and the actual uploader before submitting files.

Emoji resizing guide: choose a preset instead of memorizing sizes

A Discord server emoji, a Slack workspace emoji and a Twitch emote or subscriber badge use different output sizes. The Discord preset makes a 128×128 PNG; Slack also uses 128×128 here as a practical choice, rather than a required pixel dimension. Twitch emotes use the three preset sizes 28, 56 and 112, while badges use 18, 36 and 72. Upload one original, pick a destination and inspect the resulting cards. The three-platform pack creates eight PNGs with distinct platform filenames, even where two outputs share the same pixel size. Its byte labels compare outputs against stored reference values; they do not certify that an account has permission to upload or that artwork will pass review.

Images are drawn on a canvas in your current browser and are not sent to Toolvil. Large originals are reduced in stages before the final draw, which helps retain clear edges at tiny sizes. Fit inside keeps the whole image and leaves padding; Fill square crops the center without stretching the original. The padding slider leaves 0-25% around each edge. Choose a transparent, white or custom background, remembering that a white background does not remove an existing background from a photograph. Each result has an actual-size preview and an enlarged view so you can inspect small details before downloading. Open Detailed settings for these options; choosing a preset alone is enough for a normal conversion.

When this tool is needed

  • A Discord or Slack upload reports an image-size problem and you need a square PNG to try again
  • An artist supplied one large original and you need the three sizes for Twitch emotes or badges
  • One character will be used on Discord, Slack and Twitch, so you want all eight PNGs in one ZIP
  • Another destination requires a square PNG with a custom size between 16 and 512 pixels

Before you start

  • If the destination needs transparency, start with a background-free PNG. Twitch badges require a transparent background in the stored reference. A JPG keeps its original background.
  • Prefer an original larger than the target. Fit inside leaves space around a wide image; Fill square crops its sides. Check the preview rather than enlarging tiny artwork blindly.
  • Animated GIF and WebP inputs become a static PNG from the first frame. Export animations separately in an editor and check the destination’s current rules.

How to use

  1. Select an image, drop a file or paste it with Ctrl+V. PNG, JPG, WebP, GIF, BMP and AVIF inputs up to 20 MiB are supported.
  2. Choose Discord, Slack, Twitch emotes, Twitch badges, Custom or the three-platform pack. The output updates automatically. Custom opens its size field.
  3. Open Detailed settings if needed. Use Fit inside to keep all the artwork or Fill square to crop the center. Adjust padding and background while watching the preview.
  4. Inspect actual-size and enlarged previews and the byte reference on each card. Keep transparency where required and check the real uploader’s additional conditions.
  5. Select Download PNG for one output or Download ZIP for several. Individual cards also have a PNG button. Filenames include the platform and dimensions; the nearby download button uses the same output.
InputOne PNG, JPG, WebP, GIF, BMP or AVIF, up to 20 MiB; drop and paste supported; animated GIF/WebP uses the first frame
PresetsDiscord 128 · Slack 128 · Twitch emotes 28/56/112 · Twitch badges 18/36/72 · Custom 16-512 · three-platform ZIP with 8 PNGs
Fit and backgroundFit inside / center crop; padding 0-25%; transparent, white or custom background
Downscaling methodRepeated half-size stages until close to the target, then a high-quality final draw; small originals are enlarged
Byte referenceCompare PNG bytes with preset reference values: within / near (over 90%) / over / no preset limit (Custom)
Output and downloadSquare RGBA PNG; filename includes original, platform and dimensions; one PNG or a store-only ZIP for several; local browser processing

Platform details and upload locations

Discord’s developer reference describes a 128×128 emoji image and a maximum size of 256 KiB, with JPEG, PNG, GIF, WebP and AVIF accepted. This tool chooses static PNG to retain transparency. Server permissions and available slots are separate from image dimensions. Slack’s help recommends square images under 128KB with transparent backgrounds but does not prescribe 128×128; that is this tool’s practical output choice. Slack also notes a 50-frame limit for GIFs, while this converter produces a static image. Use the emoji uploader inside your destination account to confirm current permissions and requirements.

The stored Twitch reference uses 28×28, 56×56 and 112×112 PNGs for manual emote upload and 18×18, 36×36 and 72×72 PNGs for subscriber badges. The presets retain reference byte values of 1 MiB for emotes and 25 KiB for badges, with transparent backgrounds for badges. Twitch may offer different automatic-upload paths or change requirements. These presets are a sizing aid based on the stated snapshot, not a current account-eligibility or approval check. Consult the linked Twitch help and the actual Creator Dashboard before uploading.

Understanding byte checks and upload rejection

PNG size depends on dimensions and image complexity. An uncompressed RGBA image is roughly 66,000 bytes at 128×128, 50,000 at 112×112 and 21,000 at 72×72. Current built-in presets have reference limits above these bounds, so ordinary outputs normally have ample room. A green result is therefore a byte comparison, not proof that the platform will accept the image. Transparency, format, account permissions and content review are separate checks. The tool shows binary KiB and MiB (1 KiB = 1,024 bytes); source pages may use KB or MB differently. Simpler shapes can reduce file size, but filling an image with white is unsuitable when transparency is required. Use background removal or pixel-art tools when they suit the design, then inspect the tiny actual-size preview again.

Preset policy values retain the source snapshot dated 2026-09-17 and can change. Use the linked current help if an upload is rejected. This tool does not guarantee copyright, content-review or account approval.

Calculation basis and sources

Calculation scope
Convert one image to square PNGs for Discord, Slack and Twitch and compare output bytes with preset reference values. Only static PNGs are produced.
Calculation method
Fit inside or center crop, with 0-25% padding. Reduce large images in half-size stages, then draw the final size. Encode browser PNGs and compare bytes with preset reference values; over 90% is near the reference limit.
Limits and disclaimer
Platform policy snapshot: 2026-09-17. Requirements can change, and content-review or account approval is not guaranteed.
Personal information processing
Images are processed on a local browser canvas without being sent to or stored by Toolvil. Downloaded PNG and ZIP files stay on your device.

🗓️ Source snapshot reviewed 2026-09-17 · 🔁 Next scheduled review 2027-03-17

FAQ

What size does Discord custom emoji use?

Discord’s developer reference specifies a 128×128 emoji image with a maximum size of 256 KiB (262,144 bytes). This preset makes a static PNG with transparency and compares its bytes against that reference. The file is usually far smaller than the limit, but server permissions, available slots and content rules remain separate. Check the Discord uploader for the current requirements.

Does Slack require a 128×128 emoji?

No fixed pixel size is stated in the cited Slack help. It recommends square images under 128KB with transparent backgrounds. This tool chooses 128×128 PNG and uses a stored 128 KiB byte reference, which is guidance rather than a guarantee of acceptance. Slack also accepts GIFs up to 50 frames; this tool exports a static first-frame PNG.

Which Twitch badge sizes are included?

The Twitch badge preset creates 18×18, 36×36 and 72×72 PNGs and uses the stored 25 KiB reference. Keep the background transparent and inspect the smallest preview for legibility. You can download each PNG separately or all three in a ZIP. The source snapshot is dated 2026-09-17, so verify Twitch’s current help and your account’s upload screen before submitting.

What is inside the three-platform ZIP?

It contains eight static PNGs: Discord 128×128, Slack 128×128, Twitch emotes 28×28/56×56/112×112 and Twitch badges 18×18/36×36/72×72. Two 128×128 images may have identical pixels but use different platform filenames. Each card retains its own reference limit. Custom size is a separate preset and is not added to this pack.

Can I keep animation or remove a photo background?

Animated GIF and WebP inputs produce a static PNG of the first frame; animation is not retained. Use an animation editor for moving emotes. A transparent PNG keeps transparency, while a JPG keeps its original background. Fit inside leaves transparent space around the image; it does not erase existing background pixels. Use a background-removal tool first if needed, or choose a white or custom fill when the destination allows it.