용량 한도에 맞추는 법

8분 읽기 · 마지막 갱신 2026-08-09

요약. 손으로 먼저 싸우지 마세요. 움직이는 파일은 한도를 넘으면 스스로 품질이나 초당 프레임을 낮춰 맞춘 뒤 무엇을 낮췄는지 알려 줍니다. 그래도 넘칠 때 줄이는 순서는 ① 프레임 수(초당 프레임 × 길이) ② 색 수와 계조 ③ 길이 ④ 캐릭터가 차지하는 면적입니다. 멈춘 PNG만은 자동 맞춤이 없으므로 그림 자체로 맞춰야 합니다.

용량이 넘쳤을 때 가장 먼저 할 일은 규격 검증을 한 번 눌러 보는 것입니다. 검증은 화면의 미리보기가 아니라 실제 규격 그대로 렌더해 바이트 수를 재고, 한도를 넘은 움직이는 컷은 자동으로 품질이나 초당 프레임을 낮춰 다시 만들어 봅니다. 대개는 여기서 끝납니다. 손으로 줄이는 건 자동 맞춤이 실패한 다음 이야기입니다.

규격별 한도

규격개당 한도프레임·길이형식
움직이는 24컷
(360×360)
움직이는 3종 650KB
멈춘 21종 2MB
24프레임 이내 WEBP + PNG
투명 배경
멈춘 32컷
(360×360)
150KB PNG
투명 배경
애니 스티커
(270×270)
300KB 5~20프레임
반복 포함 4초 이내
APNG(확장자 .png)
투명 배경
대형 애니
(740×640)
1MB 100프레임
3초 이내
GIF
투명 배경
서버 이모지
(128×128)
256KB GIF 또는 PNG
투명 배경

규격 수치는 접수처가 바꿀 수 있습니다. 제안 직전에는 각 접수처의 공식 안내를 다시 확인하세요. 규격을 나란히 비교하려면 이모티콘 규격 한눈에를 보세요.

자동 맞춤이 하는 일

움직이는 컷을 내보낼 때, 결과가 한도를 넘으면 그대로 실패로 두지 않고 단계를 낮춰 다시 시도합니다. 형식마다 낮추는 축이 다릅니다.

WEBP — 인코딩 품질을 낮춘다

품질 0.90에서 시작해 0.850.750.650.550.45까지 여섯 단계를 내려가며, 한도 안에 들어오는 첫 품질에서 멈춥니다. 그림을 다시 그리는 게 아니라 인코딩만 다시 하므로 빠르고, 프레임 수와 동작은 그대로입니다. 결과 리포트에는 용량 자동 맞춤: 품질 0.9→0.65처럼 남습니다. 손실 압축이라 여유가 넓은 편이고, 실제로 24프레임 이내만 지키면 대부분 이 단계에서 통과합니다.

APNG — 초당 프레임과 길이를 낮춘다

APNG는 무손실 PNG를 그대로 묶은 형식이라 품질을 낮출 축이 없습니다. 대신 네 단계로 다시 렌더합니다. 원본 설정 → 10fps·1.2초 → 8fps·1.2초 → 6fps·1초 순서입니다. 이 과정에서 최소 프레임 수(5장)에 못 미치게 되는 후보는 아예 건너뜁니다. 낮춰서 맞춘 경우 용량 자동 맞춤: 12fps→8fps처럼 알려 줍니다. 조각이 많은 캐릭터가 300KB를 쉽게 넘기기 때문에 기본값부터 10fps·1.2초(12프레임)로 낮게 잡혀 있습니다.

멈춘 PNG — 자동 맞춤이 없다

정지 컷은 무손실 PNG로 저장되고 품질 축이 없습니다. 멈춘 32컷의 150KB를 넘겼다면 그림 자체를 고쳐야 합니다. 아래 "줄이는 순서"의 2·4번이 여기에 해당합니다.

가장 낮은 단계로도 한도를 못 맞추면 자동 맞춤은 포기하고 파일을 그대로 내보냅니다. 그러면 검증이 용량 720KB > 허용 650KB처럼 실패 행으로 잡아 줍니다. 조용히 넘어가는 일은 없습니다.

상한의 85%를 넘으면 경고가 붙는다

통과했더라도 움직이는 파일이 한도의 85%를 넘으면 용량이 상한의 85%를 넘음 — fps나 길이를 줄이는 것을 권장이라는 경고가 붙습니다. 실패는 아니지만 흘려보내지 마세요. 이 경고는 두 가지를 뜻합니다. 첫째, 자동 맞춤이 이미 여력을 거의 다 썼다는 것. 둘째, 접수처 규격이나 인코딩 환경이 조금만 달라져도 바로 탈락 사정권이라는 것입니다. 650KB 규격이라면 553KB가 그 경계입니다.

그래도 안 맞을 때 — 줄이는 순서

① 프레임 수를 줄인다

가장 효과가 큽니다. 실제 프레임 수는 초당 프레임 × 길이이고, 이 도구의 인코더들은 프레임을 통째로 저장합니다. GIF는 프레임마다 화면 전체를, APNG는 프레임마다 PNG 한 장을, WEBP는 프레임마다 정지 WebP 한 장을 담습니다. 즉 용량은 프레임 수에 거의 비례합니다. 12fps·1.5초(18장)를 10fps·1.2초(12장)로 바꾸면 그것만으로 3분의 1이 빠집니다.

고를 수 있는 초당 프레임은 8·10·12·15·20·24, 길이는 0.5·0.8·1·1.5·2·3·4초입니다. 인스펙터에 프레임 18 (허용 5~20)처럼 현재 장 수가 실시간으로 뜨고, 규격을 벗어나면 숫자가 붉게 변합니다. 렌더를 돌리기 전에 여기서 먼저 잡으세요.

② 색 수와 계조를 줄인다

한 장의 무게를 결정하는 것은 색입니다. 특히 GIF는 팔레트가 최대 255색 + 투명 한 칸이라, 부드러운 계조는 재현도 제대로 안 되면서 용량만 먹습니다. 그라디언트로 칠한 큰 면, 에어브러시로 넓게 뿌린 그림자·볼터치가 대표적인 범인입니다. 단색 면이 많을수록 파일은 작아집니다.

③ 길이를 줄인다

①과 같은 축이지만 인상에 주는 손해가 다릅니다. 이모티콘은 반복 재생되기 때문에 1초와 2초의 체감 차이는 생각보다 작습니다. 동작이 한 바퀴 도는 데 필요한 최소 길이만 남기고 잘라 보세요. 초당 프레임을 낮추면 동작이 뚝뚝 끊기지만, 길이를 줄이면 동작은 그대로고 반복이 빨라질 뿐입니다.

④ 캐릭터가 차지하는 면적을 줄인다

투명 배경이라 캐릭터 밖은 거의 공짜입니다. 반대로 화면을 꽉 채운 캐릭터는 매 프레임 칠할 픽셀이 그만큼 많습니다. 캐릭터 크기를 조금만 줄여도 전 프레임에서 동시에 이득을 봅니다. 멈춘 컷의 150KB가 안 맞을 때 특히 잘 듣는 방법입니다.

용량이 커지는 진짜 원인

규격별 요령

참고. 렌더 한 번에 뽑는 프레임은 60장을 넘지 않습니다. 24fps·4초처럼 극단적인 조합을 골라도 60장에서 끊깁니다. 실제로는 그 전에 규격의 프레임 한도(24·20·100)가 먼저 걸리므로 부딪힐 일은 드뭅니다.

이어서 읽기