Emote resizer

Every size Twitch, Discord or Slack asks for from one drawing, with transparency kept, made on this device.

Resizes art or animated GIFs into Twitch emotes, sub badges, Discord emoji and stickers or Slack emoji, within each size limit. It is free, needs no account and adds no watermark, and your files are not uploaded: everything runs in your browser on your device. The size limit is your device’s memory, and phones hold less; give the page a short while after one visit to save itself for offline use, and then it works offline.

Drop emote artworkor click to choose files. Batches welcome.
    Working…

    Done

    Your files are processed on this device and never sent to a server. Reload the page to clear everything from memory.

    How it works

    1. Drop one or more drawings, ideally square transparent PNGs at 500 px or larger.
    2. Pick the platform; empty transparent edges are trimmed so the art fills the square.
    3. Download the PNGs, one by one or as a zip, and upload them in the platform’s emote settings.

    In your browser, not on a server

    Your browser decodes each drawing (SVG, HEIC, AVIF and JPEG XL included) and, unless you untick it, finds the smallest box holding every visible pixel so the empty transparent margin is cropped away. The art is then scaled down in halving steps with high-quality smoothing, which keeps outlines cleaner than one big jump, fitted or cropped into each square, lightly sharpened at the smallest sizes with an unsharp mask, and saved as PNG by your browser. An animated GIF is decoded frame by frame with gifuct-js (MIT), each frame drawn into the square, and written back with gifenc (MIT), trying stronger colour reduction and fewer frames until it is under the limit.

    Compared with upload-based tools: Emote resizer sites upload commissioned artwork and unreleased sub badges to a server, and many add a watermark to the preview or cap how many you can do. Here the drawings never leave your device and every size is made in one go.

    Verify it yourself. Give the page a short while after one visit to save itself for offline use, then turn off Wi-Fi or switch to airplane mode and run the tool again. Or open your browser's developer tools (F12, or Cmd-Option-I on a Mac), pick the Network tab, and watch it while you convert. The panel above does the same count for you.

    Questions

    Which sizes do I get?

    Twitch emotes come out at 112, 56 and 28 pixels, sub badges at 72, 36 and 18, Discord emoji at 128, Discord stickers at 320 and Slack emoji at 128. Each is a transparent PNG, checked against the platform’s file size limit, and the result list says if one is over.

    Why does my emote look blurry at 28 pixels?

    At that size there are too few pixels for thin lines. The smallest sizes get a light sharpening pass here, but the real fix is in the art: thick outlines, one bold shape and little text. Twitch’s own guidance is to check that an emote still reads at 28 pixels before you submit it.

    Can I resize an animated GIF emote?

    Yes, for Twitch emotes, Discord emoji and Slack emoji. An animated GIF comes out as animated GIFs at each size, with compression stepped up and frames thinned only as far as needed to get under the limit, and Twitch’s 60 frame cap applied. Sub badges and Discord stickers cannot move, so a GIF becomes a still PNG there. For any other size, Resize GIF sets exact pixels and keeps the animation.

    What does trimming the edges do?

    Drawings are often exported with a wide transparent margin, which makes the finished emote look tiny in chat. Trimming crops those empty rows and columns first, so the art fills the square. Untick it if the margin is deliberate.

    Is my artwork uploaded?

    No. The image is decoded, trimmed, resized and saved as PNG on a canvas in your tab. Commissioned emotes and unreleased sub badges stay on your device, and the page works offline after one visit and a short wait.

    More image tools

    Popular conversions