Compress an Image for Discord Emoji: A 256 KB Guide

Updated September 30, 2026

If a custom emoji upload is too large, make a smaller copy before trying again. The TinyTools Discord image compressor accepts static PNG, JPG, and WebP inputs and can produce a transparent PNG or white-background JPEG within a selected size target. Its sticker preset uses a different output format, so choose the preset for the asset you actually need.

Compress a static image

Emoji and stickers have different requirements

Discord's custom emoji help specifies files under 256 KB. Its emoji guide recommends 128×128 pixels while allowing other dimensions. The TinyTools emoji preset now produces an exact 128×128 image.

For static stickers, Discord documents PNG, an exact 320×320 image, and a maximum 512 KB file size. See Discord's sticker upload guide. These are asset-upload requirements; attaching an ordinary image to a chat message is a separate workflow.

Make an emoji with the current tool

  1. Open the compressor and use Select an image to choose a static PNG, JPG, or WebP.
  2. Click Emoji ≤ 256 KB. Under Output format, Auto chooses PNG for PNG/WebP inputs and JPEG for JPG inputs. You can explicitly choose either format.
  3. Choose Fit whole image or Center crop to square under Emoji framing. Adjust Quality preference for JPEG, then click Compress Image.
  4. Read the resulting size and dimensions. Inspect the preview, particularly text, outlines, and any area that was transparent.
  5. Click Download compressed image, then use Server Settings → Emoji → Upload Emoji in Discord if you have permission to add emoji.

The preset calculates 256 × 1024 bytes internally. Aim below the boundary rather than relying on a rounded file-size display. A successful compression result meets the tool's selected byte target; it does not verify Discord permissions, available slots, or the final upload.

What happens to the image?

The emoji preset creates a 128×128 canvas. Fit whole image keeps the full source in view, with padding if its aspect ratio is not square. Center crop fills the square and crops overflow around the center. PNG preserves transparency where present; JPEG fills transparent areas with white. It does not automatically remove a solid background.

Use the center-crop option for a quick square crop. If the subject is away from the center, crop it in an image editor first. For a face or reaction icon, remove distracting space so the subject stays readable at a small display size. Check the result visually instead of judging only the byte count.

Choose PNG when transparency matters. The JPEG option deliberately uses a white background. Inspect the selected format and preview before downloading. Keep your editable source so you can make a different crop or export later.

Use the sticker preset for a separate sticker export

Choose Sticker ≤ 512 KB and compress again. This mode fits the source proportionally inside a transparent 320×320 PNG canvas. A non-square source has transparent space around it instead of being stretched. Transparency already in the source can be retained; the tool does not remove a solid background for you.

Typing a custom target switches to custom image mode, even if you previously chose Sticker. Custom mode uses your selected PNG/JPEG format, preserves the original aspect ratio, and can shrink dimensions to meet the byte target; it no longer forces 128×128 or 320×320. Check that the result actually says PNG and 320×320 before downloading a sticker. Upload it through the server's sticker settings, not the emoji section.

Troubleshoot the result

Animated emoji need a different workflow

This version does not optimize animated GIFs or preserve an animation's frames. Use a dedicated animation editor or optimizer, then verify the resulting motion and file size. Do not use a static preview as evidence that an animated asset survived conversion.

For an event announcement to go with your server artwork, see the Discord countdown guide.