Turn your GIF into a 320 × 320 animated APNG. Keep every frame and its declared timing, choose the framing, then compare the animation before downloading.
Free · No account · Your GIF is processed on this device
Make an animated sticker
GIF → APNG
Up to 5 seconds and 120 frames. A download appears only when the finished file is at most 512,000 bytes.
The converter is loading. If the controls remain unavailable, reload the page or try an updated browser.
Preview only; this does not add a background to your file.
Source GIF
Animated sticker
Open Discord’s sticker upload window to preview the downloaded animation before publishing.
Conversion runs locally in a disposable browser worker. We do not upload your GIF or record its name or contents. The page loads ordinary font and analytics services. Privacy details.
From GIF to animated APNG
Keep the motion
The converter reads the full GIF timeline, including partial frames and restore-background or restore-previous instructions. It composes each frame before resizing, and keeps the frame count, declared delays and playback count.
Choose what fits
Fit preserves the whole canvas with transparent padding. Fill crops the center to cover the square. Existing transparency is retained, but a solid background stays solid. Scaling can soften detail and create partially transparent edge pixels.
Check the finished file
APNG encoding is lossless for the resized frames; resizing itself resamples pixels. The converter does not reduce colors, remove frames or speed up the animation to reach the size limit. If it cannot fit, no oversized download is offered.
The animation example is original geometric test artwork, not a customer result. It contains three frames and runs for 0.24 seconds per cycle.
Preview the APNG in Discord
1 · Download and inspect
Review the animation, transparent edges and framing here. Download the APNG with its .png extension. The result shows its actual bytes, dimensions, frame count, cycle duration and playback setting.
2 · Open the sticker uploader
In a server where you have Create Expressions permission and an available sticker slot, open Server Settings → Stickers → Upload Sticker. Choose the downloaded file. Preview it against the uploader’s light and dark backgrounds.
3 · Check before publishing
Confirm the animation plays and the crop looks right. Add the name, related emoji and any other information Discord requests. Publish only when you are ready. A normal chat attachment is not the right place to validate APNG playback.
Requirements checked October 23, 2026: Discord’s sticker API requirements specify 320 × 320, at most 512 KiB and a maximum animated length of 5 seconds. Our 512,000-byte limit is slightly stricter than 512 KiB (524,288 bytes). See also Discord’s creator preview guide and custom sticker permissions and availability. Discord applies its own current format, content and server rules; passing local checks does not guarantee acceptance.
When an animation cannot be converted
The file is still too large
Detailed or noisy frames can exceed the APNG byte budget even when the GIF is small. Shorten the source or simplify its artwork in your editor. This tool stops instead of silently throwing away frames or colors.
The timeline needs editing
Use a GIF no longer than 5 seconds with 2–120 frames. Zero, missing or 10 ms frame delays are rejected because players can interpret them differently. Export explicit delays of at least 20 ms; the converter will not guess a new speed.
The input is damaged or too demanding
Truncated GIFs, invalid image data and unsupported extensions are rejected. The size, pixel and frame limits protect your browser. Processing stops after 45 seconds; you can cancel or choose a replacement at any time.
Animated sticker questions
Does Discord require APNG instead of GIF?
No. Discord’s current sticker API supports several formats, including GIF and APNG. This tool is for people who want an APNG export with square framing and measured limits. It does not claim that every GIF needs conversion.
Why does an animated PNG download as .png?
APNG is a PNG file with animation chunks. The .png extension is expected for this export; renaming a GIF to PNG would not convert its contents. The converter actually encodes each resized frame into an APNG. You can inspect an exported file with the emote file checker.
Will transparency and colors stay the same?
Transparent areas remain transparent. Fit may add transparent padding; Fill may crop the artwork. Resizing resamples the source, while APNG encoding retains the resulting color and alpha bytes without palette reduction. It cannot restore colors a GIF already discarded or remove a solid background.
Does it keep the GIF’s loop count?
Yes. A GIF without a loop extension plays once; an infinite loop stays infinite. A finite GIF repeat count is converted into the equivalent APNG total number of plays. For example, two repeats after the initial play become three total plays. The result reports the playback setting separately from one cycle’s duration.
The converter checks for module workers, OffscreenCanvas and CompressionStream. Use an updated browser with those features enabled. If processing cannot start, you will see an error. Keep this tab open until conversion finishes; changing the source or framing discards the old output.
Do my files leave my device?
No GIF or APNG bytes are sent to an image-processing server. Conversion happens in this browser tab. Ordinary site analytics records only fixed tool-action and framing labels, without file names, file contents or preview URLs. Font and analytics services may make their own normal page requests.