PopEmote

Twitch emote size guide

Twitch Emote Sizes — The Spec, Without the Folklore

This page exists because most Twitch emote size guides online still repeat numbers from 2018, or quote third-party tool limits as if they were Twitch's rules. Here's the current spec, organized by what matters during export and upload. Just need to resize a file? The Twitch emote resizer handles it in under 30 seconds.

The two Twitch upload modes

Auto-resize mode (single upload)

Upload one square image between 112×112 and 4096×4096 pixels at up to 1MB. Twitch downscales it to the three display sizes server-side. Fastest path if your design works at all sizes.

Manual mode (three uploads)

Upload three separate files at 28×28, 56×56, and 112×112. Use this when you want per-size control — for example, simplifying detail in your 28×28 so it reads in chat.

Static Twitch emote size and file spec

About the static PNG file size question

This trips a lot of people up because Twitch's own help pages quote different numbers in different places — you'll see 25KB, 100KB, 256KB, and 1MB referenced across various guides. Three things are consistent across every source:

  1. 1. Auto-resize mode (single image upload) is reliably 1MB.
  2. 2. Manual mode static PNG uploads target 100KB per file based on Twitch's manual subscriber emote guidance.
  3. 3. Most static emotes are well under 100KB anyway, because PNG-24 at 112×112 with a small palette does not get big.

The pre-flight check uses 100KB as the target ceiling for manual mode static PNGs. Stay under that and you avoid the whole question.

Animated Twitch emote sizes and limits

GIF compression is hard to do right. The Twitch emote resizer for GIF handles the frame optimization and color quantization needed to hit these limits.

Sub badge sizes (different from Twitch emote sizes)

The three sub badge sizes — 18×18, 36×36, 72×72

Sub badges aren't emotes. They sit next to usernames in chat, so they're smaller and have less room to work with. Same design principles apply but readability at 18×18 is the goal — everything else is secondary. PNG only, no animation, manual upload only (no auto-resize option).

Cheermote sizes

Cheermotes (the Bit emotes) use the same 28/56/112 sizes as emotes but are animated GIFs only, with separate states for each Bit tier. Partner-only feature.

How to actually hit these specs

Shortest path: drop your source into the Twitch emote resizer on the home page. It generates all three sizes, runs the pre-flight check against the spec on this page, and gives you a ZIP ready for upload.

Chat preview

How it reads in chat

Twitch-like preview, not affiliated with Twitch.

28×28 focus
nyx_streams:Original cat-hoodie streamer waving emotewelcome lads
mod_42:Original white-haired gamer hype laugh emotehuge laugh
random_viewer:Original surprised fast motion streamer emotelurking with tea

Pre-flight check

Check common upload issues before download

No acceptance promises. Just concrete checks for dimensions, file size, animation rules, transparency, and whether the tiny version still reads in chat.

pass
01

Twitch sizes

Generates 28×28, 56×56, and 112×112 outputs for manual upload.

pass
02

File checks

Checks type, square ratio, and static PNG size targets.

pass
03

Output format

Keeps static outputs as PNG and animated outputs as GIF.

info
04

GIF checks

Flags frame count, timing, and manual-mode size risks for animated emotes.

warning
05

Motion safety

Warns when an animation looks too flashy for Twitch's accessibility rule.

pass
06

Chat preview

Shows whether the 28×28 version still reads in a Twitch-like chat row.

warning
07

Alpha edge

Flags fuzzy transparent edges that can look dirty at 28×28.

info
08

Solid background

Detects white-box or solid-color backgrounds before you export.

info
09

No image upload

Current image resizing happens locally in your browser.

Common Twitch emote size mistakes

Designing only at 112×112 and skipping the 28×28 test

A common mistake — your design looks great at full size and becomes mush at 28×28. Always design with the 28 in mind first.

Forgetting the manual-mode 512KB GIF ceiling

Easy to miss — people resize the animated emote correctly and still hit a file-size warning. The GIF emote resizer flags this before you download.

Anti-aliased transparency edges

Another frequent cause — half-transparent pixels around your emote's edge look fine at 112×112 and like dirt at 28×28. Either build with hard edges or let the resizer's auto-clean handle it.

FAQ — Twitch emote size

What's the minimum Twitch emote size?

28×28 pixels. That's the smallest required size, and the one viewers actually see in chat.

What's the maximum Twitch emote size in pixels?

112×112 for the display size. Auto-resize uploads can be up to 4096×4096 source, but Twitch downscales to 112×112 for display.

What are all the standard Twitch emote sizes?

The three standard Twitch emote sizes are 28×28, 56×56, and 112×112 pixels. Sub badges use 18×18, 36×36, 72×72 — different from emotes. Cheermotes share emote sizes (28/56/112) but are animated only.

What's the maximum Twitch emote file size?

Static PNG: 1MB in auto-resize mode, target ≤ 100KB per file in manual mode. Animated GIF: 1MB in auto-resize mode, ≤ 512KB per file in manual mode.

How heavy can emotes on Twitch be?

This depends on the upload mode. In auto-resize mode (single image upload), the cap is 1MB whether the emote is static PNG or animated GIF. In manual mode (three separate files), static PNGs target ≤ 100KB each and animated GIFs cap at 512KB each. Files over those targets can run into uploader or quality issues.

Does Twitch require all three emote sizes?

Only in manual mode. In auto-resize mode you upload one image and Twitch generates the smaller sizes for you.

What size are Twitch sub badges?

18×18, 36×36, and 72×72 pixels. Different from Twitch emote sizes, manual upload only.

Can I use the same image for an emote and a sub badge?

Technically yes, but they render at different sizes (18×18 vs 28×28) and the optical balance is different. Most streamers design them separately.

Why do some old guides say the GIF limit is 100KB?

Older Twitch guidelines and some emote-creation marketplaces recommend 100KB as a conservative target for animated emotes because it leaves file-size margin and loads fast. The working cap used here is higher — 512KB per file in manual mode — but staying under 100KB is fine if your animation is simple. Don't confuse a recommended target with a working ceiling.

Related Twitch emote resources