Inside Discord's Gif System: How Tenor Integration and File Limits Actually Function
Creating reaction images for text channels involves different technical limits than preparing profile assets. Discord enforces strict dimension checks and file ceilings on avatars, banner artwork, and custom animated emotes.
For custom server emotes, the maximum allowable file size is 256KB. Dimension requirements are equally unforgiving: the platform recommends a native 128x128 pixel canvas, scaling the asset down to 32x32 pixels inside live chat threads. If your exported loop clocks in at 258KB, Discord's upload modal will outright reject the file. Getting a high-action animation under this ceiling demands heavy lossy GIF compression. Applying a lossy compression factor between 30 and 60 inside Ezgif removes unseen noise from the color tables, shaving vital kilobytes off the payload while keeping the core emote recognizable.
Discord avatar dimensions require similar precision. The official client renders profile icons inside an 80x80 circle, though Discord recommends uploading a 1:1 square canvas at 128x128 or 256x256 pixels to ensure crisp rendering on high-DPI screens. Animated profile avatars are restricted to 10MB, a ceiling shared with standard chat uploads. For server banners, dimensions widen out to a 16:9 ratio, typically 960x540 pixels. Because wide canvases generate substantial data per frame, keeping banner animations brief, under 2.5 seconds, is essential to prevent micro-stuttering whenever community members open your profile card.