GIF to APNG converter
Drop a GIF and get an animated PNG that keeps full 8-bit transparency, so no background colour is needed. You choose the width and whether it loops forever or a set number of times, and you see the GIF's size next to the APNG's. Everything happens in your browser and nothing is uploaded.
Free · no sign-up · runs in your browser
GIF only · up to 25 MB · nothing is uploaded
Drop a GIF here
Your animated PNG will play here.
How to use it
Drop your GIF
Drop a .gif file onto the box or click to choose one. Files up to 25 MB, 300 frames and 30 seconds of playing time are accepted.
Choose the width
Keep the original size or pick a smaller width. A line under the width shows the output size. The picture is scaled with the browser's own smoothing.
Set the loop
Leave Loop forever ticked, or untick it and enter how many times the animation plays. Transparency needs no setting, because the PNG format stores it as it is.
Convert and download
Press Convert to APNG. The result plays next to your GIF with both file sizes, and Download saves it as a .png file.
Examples made with this tool
These APNG files were made from GIFs we already use on this site, with the same PNG encoder and APNG writer the tool runs in your browser, so the sizes are what you get. After writing each file our script reads it back with this site's own APNG reader and checks that every frame, every timing and the loop count match.
Original
APNGA 16-frame GIF at its original 480 by 270. One frame is identical to the one before it, so it is not stored again and its time is added to the previous frame. The APNG is larger than the GIF, which is common.Settings usedAnimated PNG, 480 × 270 px, not present, loops forever.GIF 34 KB (480 × 270 px) → APNG 46 KB (480 × 270 px)
Original
APNGA transparent GIF with sparkles. The see-through areas stay see-through with no matte colour to match, and the APNG is about twice the size of the GIF.Settings usedAnimated PNG, 400 × 200 px, kept, loops forever.GIF 62 KB (400 × 200 px) → APNG 123 KB (400 × 200 px)
Original
APNGA sticker reduced to 160 px wide and set to play three times, which the file records as its loop count. Sixteen frames, all stored, and the transparency kept.Settings usedAnimated PNG, 160 × 160 px, kept, plays 3 times.GIF 356 KB (320 × 320 px) → APNG 380 KB (160 × 160 px)
Original
APNGA 57-frame banner. In a scroll almost every pixel changes from frame to frame, so each frame is stored in full and the APNG ends up bigger than the GIF.Settings usedAnimated PNG, 480 × 120 px, not present, loops forever.GIF 215 KB (480 × 120 px) → APNG 279 KB (480 × 120 px)
How the APNG is written
Each frame is drawn to a canvas and compared with the one before it. Only the rectangle that changed is encoded, with a PNG encoder written for this site (8-bit RGBA, the best of the five row filters chosen for each row, then zlib compression), and a frame that changes nothing is merged into the one before it. A small piece of code on this site then reads those PNG files and rebuilds them as one animated PNG.
That code writes the animation header with the frame count and loop count, a control chunk with each frame's size, position, delay and blend mode, then the image data of the first frame as normal PNG data and the later frames as frame data chunks. Sequence numbers and checksums are written for every chunk.
Why transparency is different from GIF
A GIF pixel is either fully see-through or fully solid. A PNG pixel carries an 8-bit alpha value, so it can be anything in between. That is why soft edges, shadows and glows can stay soft in an APNG, with no matte colour to match to the page.
The source is still a GIF, so a transparent GIF only has on-off transparency to begin with. The extra smoothness appears when you scale the picture down, because the browser blends the edge pixels as it resizes.
APNG or GIF: which to keep
APNG gives more colours and smoother edges than GIF, but it is not smaller. In our examples the APNG ranged from about the same size as the GIF to about twice its size. Keep the GIF where a GIF is required or where the file size matters most.
Use the APNG where the place you are putting it displays animated PNG and you want clean transparency. Open the finished file where it will be used, because support for animated PNG depends on the program that shows it.
Related tools
These browser tools help before or after you make the animated PNG.
- APNG to GIF: go the other way and turn an animated PNG into a GIF.
- GIF compressor: make a GIF smaller when you still need a GIF.
- GIF resizer: set an exact width and height before you convert.
When GIF to APNG helps
A sticker with soft edges
Keep shadows and anti-aliased edges that a GIF would harden into jagged ones.
An animation on a coloured page
A transparent APNG sits on any background without a matte colour to match.
An image slot that takes PNG
Some places accept PNG files and show them animated, while ignoring GIF settings.
A logo animation with exact colours
A PNG frame holds millions of colours, so brand colours need no palette squeeze.
A source file for later editing
Keep a lossless animated copy of the frames before further processing.
How this tool works and its limits
This is what the converter does with your file, and where it stops.
- Your file never leaves your device. The GIF is decoded and the APNG is written in your browser, with no upload and no account.
- GIFs up to 25 MB are accepted, and the GIF must fit the site limit of 300 frames and 30 seconds of playing time.
- The output is 8-bit RGBA, with full alpha. There is no palette mode, so the file can be larger than the GIF.
- The width can be the original or 1024, 640, 480 or 320 px when those are smaller than the GIF. The long side is capped at 1024 px.
- The loop count is forever, or from 1 to 100 plays. Frame delays are kept in milliseconds.
- The PNG frames are written by this site's own encoder, which runs the same code in every browser, and each file is checked by reading it back in our tests.
- We built and tested the tool in current Chrome, where the result plays in an image element and our own reader decodes it. Check the program where you will use the file.
Does your browser support this?
This list is checked against the browser you are using right now, by asking it directly. It is not a guess from the browser name.
- GIF files: checking
- Background encoding (Web Workers): checking
Questions, answered
How do I convert a GIF to an APNG?
Drop the GIF above, choose a width and a loop count, and press Convert to APNG. The animation plays next to your GIF with both file sizes, and Download saves it as a .png file.
Does the APNG keep transparency?
Yes, with full 8-bit alpha and no background colour. A transparent GIF only has on-off transparency, so you get the same shapes, and scaling down can add soft edges.
Why is the APNG bigger than my GIF?
A GIF is limited to 256 colours and compresses very small, while APNG stores full colour. In our examples the APNG was larger every time, which is why the page shows both sizes.
How many times will it play?
Forever by default. Untick Loop forever to set a number of plays from 1 to 100, which is written into the file as its loop count.
Is an APNG the same as a PNG?
It is a PNG file with extra chunks for the animation. Programs that do not know the extra chunks show the first frame, so check the place you will use it.
Is anything uploaded?
No. The conversion happens in your browser and the file stays on your device.



