Initializing... drag & drop files here
Supports: APNG, PNG
An animated PNG stores every frame losslessly, which is exactly why a detailed loop balloons to several megabytes while the same clip as H.264 lands in the low hundreds of kilobytes. Add the fact that most social platforms, messengers, and video editors refuse an .apng upload outright, and MP4 becomes the obvious destination. Upload your APNG here and every frame is re-encoded in order, at the source's own timing, into an MP4 that plays on any phone, browser, or editor. The one real trade-off is alpha: MP4 has no transparency channel, so see-through areas are composited onto the Background Color you pick (white unless you change it).
.apng onto the page or use the upload button. Ordinary .png files are accepted too, and you can queue several at once.| Property | APNG (input) | MP4 (output) |
|---|---|---|
| Standard | PNG Specification, Third Edition (W3C Recommendation, 24 June 2025) | ISO/IEC 14496-14 container, usually carrying H.264 video |
| Compression | Lossless | Lossy, but visually near-identical at the default preset |
| Alpha transparency | Full 8-bit alpha | None — flattened onto the Background Color |
| Colour depth | Up to 16 bits per channel | 8-bit 4:2:0 for standard H.264 |
| Frame timing | Per-frame delays stored in the file | Carried over from those delays |
| Audio | Not supported by the format | Silent — an APNG has no audio to bring |
| Built-in loop flag | Yes (num_plays in the animation control chunk) |
No native loop flag |
| Native browser support | 95.9% of users; Chrome 59+, Firefox 3+, Safari 8+, Edge 79+ | Effectively universal |
| Accepted by social apps | Rarely | Almost always |
The Video Codec dropdown lists everything the MP4 container legally accepts on this page. H.264 is the safe pick; the rest are there when you have a specific reason.
| Codec | What it is | Pick it when |
|---|---|---|
| H.264 | The MP4 workhorse, hardware-decoded nearly everywhere | You want the file to just play — phones, browsers, editors, social uploads |
| H.265 | Roughly the same quality at a lower bitrate than H.264 | Size matters more than compatibility, and you control the player |
| AV1 | Royalty-free modern codec, very efficient, slower to encode | Modern browsers only, and you want the smallest web file |
| VP9 | Google's pre-AV1 codec, efficient on flat graphics | Chrome/Firefox/Edge delivery where H.264 licensing is a concern |
| MPEG-4 / Xvid | 2000s-era ASP codecs | An old set-top box, camera, or media player needs them |
| MPEG-1 / MPEG-2 | Pre-H.264 broadcast and disc codecs | You are feeding a legacy MPEG workflow — usually better served by APNG to MPG |
Some, in principle: APNG is lossless and H.264 is not. In practice, at the default "Very High (Recommended)" preset the difference is invisible on typical animation. Where it shows first is on hard-edged vector graphics, large flat colour fields, and small text, which H.264's 4:2:0 chroma subsampling can soften slightly. If that matters, raise the Quality Preset to Highest, or convert to APNG to WebP instead, which keeps an alpha channel and stays sharp on flat art.
MP4 has no alpha channel, so transparency cannot survive the conversion. Before the frames are encoded, each one is composited onto a solid colour — whatever the Background Color dropdown is set to, white by default — so semi-transparent edges blend into that colour rather than turning into a hard fringe. Set it to match the page, app, or timeline the video will sit on. If you genuinely need transparency, stay on APNG or use a WebP output instead.
APNG carries a play count inside the file, so a browser repeats it automatically. MP4 has no equivalent flag — looping is the player's job. On the web, add loop (plus autoplay muted playsinline for mobile) to your <video> tag. In a social post the platform's own player usually loops short clips for you. Nothing is missing from the file; there is simply nowhere in MP4 to record the instruction.
It depends entirely on how compressible the source frames are. Running the same alpha-flatten and x264 CRF 18 chain this converter uses at 1080p, we measured a 3-second, 25 fps detailed APNG of 3.32 MB producing an 814 KB MP4 — about a 4x reduction. A flat-colour 1080p loop of the same length compresses well as APNG to begin with (262 KB), so the MP4 came out at 154 KB. The rule of thumb: the busier and more photographic the animation, the bigger the win from converting.
Yes. An animated APNG is read as a video-like source, not as one still image, so the per-frame delays stored in the file drive the output's timing. That is why there is no "how long should each image show" control on this page — it only appears for still-image sources, which have no timing of their own. A 25 fps APNG comes out as a 25 fps MP4 of the same duration.
No. An APNG cannot store sound, so there is nothing to carry across and the output is silent. If you need audio on the clip, add it afterwards in a video editor, or mux the MP4 with a separate audio file. The Audio Codec dropdown on this page applies to sources that actually have an audio stream.
Yes — queue them and they are converted with the same settings, each producing its own MP4. There is no "stitch these into one video" mode for animated sources: that control exists only for still images, because an APNG already defines its own sequence and timing. To join several finished clips into one, convert first and then merge the MP4s.
Your file travels over a TLS-encrypted connection, is converted on our servers, and is deleted automatically after a few hours. There is no sign-up, no watermark, and files are never shared or made public. The only practical limit on a very large APNG is upload time, not anything on your end.
MP4 for the smallest file and the widest playback, accepting the loss of transparency. APNG to GIF when you need one self-looping file that drops into any chat window or wiki, and you can live with a 256-colour palette. APNG to WebP when you want small size and a real alpha channel for the web — the closest thing to a lossless-feeling replacement for APNG itself.