Best Image Format for Twitch Emotes and Sub Badges
PNG is the only practical format for Twitch emotes and subscriber badges. Twitch requires PNG uploads for all emote types, and the format's lossless compression and transparency support make it essential for small, detailed graphics that must look crisp at tiny display sizes. There is no viable alternative for this use case.
Twitch emotes appear in chat at just 28x28, 56x56, or 112x112 pixels depending on the viewer's display settings. At these tiny sizes, every pixel matters. The lossy compression artifacts from JPG would visibly degrade the fine details, text, and edges that make emotes recognizable. PNG preserves every pixel exactly as designed.
Here is what you need to know about creating emotes and badges that meet Twitch's requirements.
Why PNG Is Required for Twitch Emotes
Twitch explicitly requires PNG format for all emote uploads. Beyond the platform requirement, PNG is the technically correct choice because emotes need transparency. Emotes appear on the dark Twitch chat background and must have transparent backgrounds to blend seamlessly. Only PNG and WebP support transparency, and Twitch does not accept WebP.
PNG's lossless compression also preserves the hard edges, fine details, and text that define most emote designs. A 112x112 pixel emote has very limited space. JPG compression would blur the precise pixel-level details that make the emote readable at 28x28 display size.
Emote Size Requirements
Twitch requires you to upload emotes at multiple sizes. The platform uses different sizes depending on the viewer's chat display density setting.
- Small: 28x28 pixels. Used in compact chat mode and as the default display size.
- Medium: 56x56 pixels. Used in standard chat density.
- Large: 112x112 pixels. Used in expanded/comfortable chat density and emote menus.
- All three sizes must be uploaded as separate PNG files.
- Maximum file size: 1MB per emote image (easily achievable at these small dimensions).
- Background must be transparent (no solid background color).
Subscriber Badge Specifications
Subscriber loyalty badges follow similar requirements to emotes but appear next to the username in chat rather than as standalone images in the message. They are even smaller than emotes and must be instantly recognizable.
- Sizes: 18x18, 36x36, and 72x72 pixels.
- Format: PNG with transparent background.
- Maximum file size: 25KB per badge image.
- Badges must be visually distinct at 18x18 pixels. Use bold shapes and high contrast.
- Keep designs simple. Fine details are invisible at badge sizes.
Designing for Small Sizes
The biggest challenge with Twitch emotes is that they must be readable at 28x28 pixels. Most design decisions should be validated at this smallest display size.
Design at 112x112 pixels for the detail work, but constantly preview at 28x28. If the emote is not instantly recognizable at that size, simplify the design. Reduce colors, increase contrast, and remove fine details that disappear at small scales.
- Use thick outlines (2-3 pixels at 112x112 scale) around key shapes.
- Limit your palette to 3-5 distinct colors for maximum contrast.
- Avoid gradients. They become muddy at 28x28 pixels.
- If including text, limit it to 1-3 characters at a very bold weight.
- Test on both light and dark backgrounds since viewers may use custom chat themes.
Export and Upload Workflow
The standard workflow for creating Twitch emotes starts with designing at the largest size and scaling down, checking quality at each step.
Design your emote at 112x112 pixels in your preferred image editor. Export the 112x112 PNG, then scale down to 56x56 and 28x28, exporting each as a separate PNG file. Use nearest-neighbor scaling for pixel art emotes or bilinear/bicubic for illustrated emotes. After scaling, manually review each size and adjust any details that became unclear.
Frequently Asked Questions
Can I upload JPG emotes to Twitch?
No. Twitch requires PNG format for all emote uploads. JPG does not support transparency, which is required for emotes to display correctly on the chat background. Always export your emotes as PNG files.
What file size limit do Twitch emotes have?
Each emote image must be under 1MB. At 112x112 pixels with PNG format, most emotes are well under 50KB, so the file size limit is rarely an issue. Subscriber badges have a stricter 25KB limit.
Do I need to upload all three emote sizes?
Yes. Twitch requires all three sizes: 28x28, 56x56, and 112x112 pixels. Each must be uploaded as a separate PNG file. The platform uses different sizes based on each viewer's chat display density setting.
How do I make the background transparent for Twitch emotes?
Design your emote on a transparent layer in an image editor like Photoshop, GIMP, or Figma. Export as PNG, which preserves transparency. If you have an emote with a solid background, you can use image editing tools to remove the background and re-export as PNG.