SPEC + FREE TOOL

Twitch sub badge size + resizer

72×72, 36×36 and 18×18 — the three sizes every Twitch sub badge needs, the 25KB cap, and a free tool that makes all three from one image.

Updated July 20267 min read
The short version

A Twitch sub badge needs three square sizes — 72×72, 36×36 and 18×18 pixels — each a transparent PNG under 25KB. Upload all three together for each tenure milestone.

The part that surprises people coming from the emote spec: those three sizes aren't three different places badges show up. They're one spot— beside a subscriber's name — rendered at three pixel densities for different screens.

Already have the art? Skip straight to the free resizer below ↓

Emote shown at 72 by 72 pixels
72px
Dashboard preview & subscribe-page perks
4x
Emote shown at 36 by 36 pixels
36px
Retina rendering of the same badge
2x
Emote shown at 18 by 18 pixels
18px
Next to the name, every message
1x

Shown at true size. Unlike an emote, a badge isn't three different places — it's the same spot beside a name, exported at three pixel densities.

Start here

Free badge resizer

Drop in one badge image. Crop or fit, then download all three required sizes — 72, 36 and 18px — transparent, checked against the 25KB cap, one at a time or all three as a zip.

  • Crop and reposition, or keep the whole image with transparent padding
  • A stepped, high-quality downscale, so 18px doesn't turn to mush
  • Every size checked against Twitch's 25KB cap, not just the pixel dimensions
  • A real chat mock, so you see the exact badge before you upload it
The specs

The three sizes, and the file rules

Three sizes, one format, one tight file cap. This is the whole technical requirement — everything after it is design.

Twitch sub badge sizes
SizeDensityWhat it's for
72 × 724xDashboard badge picker, subscribe-page perks preview
36 × 362xHigher-density rendering of the same chat badge
18 × 181xThe default — next to the name, on every single message
File rules
RuleValueIf you get it wrong
FormatPNG, static onlyNo animated badges — that's emote-only on Twitch
Max file size25KB per image, all three sizesUpload is rejected
BackgroundTransparentA coloured box sits next to every name that has it
ShapeSquareA rectangle isn't accepted
UploadAll three sizes together, per milestoneTwitch won't derive the smaller two for you
Detail costs you twice

A busy design doesn't just turn to mush at 18px — fussy line work and lots of colours also compress worse, which is how a badge quietly blows the 25KB cap too.

Flat colour and a couple of big shapes fix both problems with the same decision.

The part that surprises people

One spot, three densities — not three places

An emote earns three sizes because it shows up in three different UI surfaces. A badge earns three sizes because screens have different pixel densities — it's the same few pixels beside a name, every time.

Where it actually lives

Beside the name

Chat and the viewer list, every message, for as long as someone's subscribed. The 18×18 file is what renders there on a standard screen; 36×36 is the same spot on a retina display.

Where the 72px art goes

Two extra places

The badge grid in your Creator Dashboard, and the perks preview on your channel's subscribe page — where a potential subscriber sees what they'd unlock, badge flair included on Tier 2 and 3, before they commit.

Design at 18px, check at 18px
It's tempting to judge a badge from the 72px art in your Dashboard, where it looks its best. Nearly every real view happens at 18px, next to a name, in a fast-moving chat. If it doesn't read there, the bigger version doesn't matter.
Before you upload

Design for 18 pixels first

The same rule as an emote, applied to a much smaller canvas: a thick outline, one clear shape, and nothing fine enough to disappear.

The 18px test
reads
Thick outline, one shape
kiraStreamsLETS GO
modBottosame
Thick outline, one shape

A crown and one gem, drawn bold. Still a crown at 18px.

mush
Hairline outline, pale colours
smolDogLETS GO
modBottosame
Hairline outline, pale colours

Nothing anchors the shape, so it fades into the chat background.

mush
Crest with fussy detail
gamer_47LETS GO
modBottosame
Crest with fussy detail

Gems, ribbons and filigree collapse into a smudge this small.

The squint test, for badges
Shrink your badge to 18px on screen and lean back. If you can't tell what it is from across the room, neither can someone glancing at a name in a chat that's moving fast.
Before you design twelve

Milestones, and the sub badge ladder

Twitch ties badge art to tenure, not to a badge count you pick freely — so the real design job is a ladder, not a single icon.

Twitch fills in default badges at 1, 3, 6, 12 and 24 months. Affiliates and Partners can replace those and add custom art at further milestones — multi-year tenure earns Partners even more slots — and Tier 2 and Tier 3 subscribers can carry entirely separate art per milestone, if you want the badge to escalate with the tier as well as the tenure.

The easiest version that still looks intentional: one motif, one accent that gets richer per milestone — a plain outline at 1 month, a gem added at 3, gold trim by 12. Chat learns the pattern fast, and it reads as a system instead of six unrelated icons.

This is what the Sub Badge Ladder is for
Designing a whole milestone ladder by hand is the part that actually takes time — one motif, escalating consistently across five-plus tiers, all reading at 18px. That's the job for On Air Kit's Sub Badge Ladder tool, designing the whole set in one style rather than one icon at a time. It isn't live yet; the resizer above works today on art you already have.
Same sizes, different ladder

Sub badges vs. bit badges

Easy to conflate, because the file spec is identical. What unlocks each one isn't.

Two badge types, one crop
Sub badgeBit (cheer) badge
Sizes72 · 36 · 18px72 · 36 · 18px
File cap25KB each25KB each
Unlocked byConsecutive months subscribedCumulative bits cheered
Resets onUnsubscribingNever — bits accumulate for good

One practical upshot: the same badge art and the same resizer output work for either. The design decision — one motif, escalating art per tier — is identical too. Only the milestone ladder underneath it is different.

Two more Bits products, neither one a badge

Bits Tier Emotes and custom Cheermotes

Bits Tier Emotes and custom Cheermotes live in the same dashboard as bit badges. Neither one is a badge. Both use emote sizes, 112, 56 and 28 pixels, not the badge sizes above.

Unlocked by cheering more

Bits Tier Emotes

Regular emotes tied to how many bits a viewer has cheered, total. The first three slots open on their own at 1,000, 5,000 and 10,000 bits. Same rules as any subscriber emote: a 112×112 PNG, a 1MB cap, uploaded from Viewer Rewards → Emotes.

Partners only, five fixed tiers

Custom Cheermotes

This replaces the bit icon a viewer clicks to cheer, not anything shown beside a name. Twitch fixes five tiers at 1, 100, 1,000, 5,000 and 10,000 bits, and every tier needs an image before it turns on. The files are animated GIFs, not static PNGs.

Bits Tier Emotes vs. custom Cheermotes
Bits Tier EmotesCustom Cheermotes
Sizes112 · 56 · 28px112 · 56 · 28px
FormatStatic PNGAnimated GIF
File cap1MB1MB for one GIF, or 512KB per size in manual mode
Who can make oneAffiliates and PartnersPartners only
Goes liveAfter Twitch's usual emote review, unless your channel already has instant uploadImmediately, no review queue
Partner only, for the full Cheermote
Affiliates can turn on Bits Tier Emotes and the standard bit badges. A complete custom Cheermote set, all five tiers, is a Partner benefit. Affiliates don't get this one yet.
No review queue, once it's live
Once every tier is uploaded, a custom Cheermote goes live right away. Twitch says so directly: it can only appear in your own channel, so it skips the emote review queue entirely. Bits Tier Emotes don't get that shortcut. They're regular emotes, so they still go through the regular review, unless your channel already qualifies for instant upload.
Five minutes, once the files are right

Upload to Twitch

No review queue here, unlike emotes — so this is also the last check before it's live.

  1. 1
    Open the Creator Dashboard

    From your avatar menu on twitch.tv, then Viewer Rewards → Sub Badges in the left sidebar.

  2. 2
    Pick the milestone

    Choose which tenure tier this art belongs to — 1 month, 3, 6, and so on — or the bits threshold for a cheer badge.

  3. 3
    Upload all three sizes

    72×72, 36×36 and 18×18, together. Unlike emotes, there's no single-upload shortcut — Twitch wants all three files.

  4. 4
    Check the small preview

    Twitch shows the badge at its real chat size before you save. If you can't tell what it is there, fix it now.

  5. 5
    Save, and it's live

    Sub badges skip the review queue emotes go through — once it uploads cleanly, subscribers at that milestone see it immediately.

Not Affiliate yet?
Sub badges need Affiliate or Partner status, the same as subscriber emotes. The emote guide's FAQ covers what unlocks it and what you can run before then →
Straight answers

Questions people actually ask

Three square sizes — 72×72, 36×36 and 18×18 pixels — each a transparent PNG under 25KB. Upload all three together for each milestone; unlike emotes, Twitch doesn't generate the smaller two for you from one upload.

Keep going

Fixed the sizing.
Still need the art?

The resizer above works on badge art you already have, right now, for free. The Sub Badge Ladder — a tool that designs a whole milestone ladder in one style — is next up, and isn't live yet. The Emote Set Maker runs on the same style system, so a look you start there carries straight over once badges ship.