Initializing... drag & drop files here
Supports: NEF
APNG is animated PNG — 24-bit colour, 8-bit alpha, and a frame sequence, all inside a file that any PNG decoder can still open. This tool develops your Nikon raw file into a picture and writes it into that container, which makes it a good fit for a bracketed sequence, a time-lapse pulled off a card, or a before/after pair you want to loop on a web page without a video player.
One thing to know before you start, because it surprises people: a single NEF does not produce an animation. With one image there is nothing to animate, so the assembler collapses the duplicated frame and you get a plain static PNG — a valid file, just without the animation control chunk that makes it an APNG. Upload two or more images and you get a real animation. If a static image was what you wanted all along, NEF to PNG is the direct route.
.nef files onto the page or click "+ Add Files", and upload two or more if you want animation. NEF is one of the two raw formats with a dedicated preview path, so thumbnails normally appear before you convert. Frame order follows filename order — the sequence numbers straight off a Nikon card already sort correctly..apng, or take the set as a ZIP. Files upload over an encrypted connection, are developed and assembled on our servers, and are deleted automatically after a few hours. No sign-up, no watermark.This is a deliberately short panel. Only three groups of controls apply to an APNG output from raw stills, and it is worth knowing which ones are absent so you are not looking for them:
There is no colour-palette control, no image-quality percentage, no compression-level slider and no lossless toggle on this path. That is consistent with the format: APNG stores full 24-bit colour losslessly, so there is no quality dial to turn. The lever that changes file size here is Image resolution, and it is a big one — halving the height of a frame roughly quarters its pixel count.
| You upload | Combine? | Result |
|---|---|---|
One .nef |
Single animation | A static PNG. The duplicated frame is collapsed, so no animation control chunk is written — the file opens everywhere but does not move. |
Two or more .nef files |
Single animation (default) | A genuine APNG: frames in filename order, played at the framerate you set, looping. |
Two or more .nef files |
Individual files | One output per input, each of them a single static image. |
| A bracketed set (−2/0/+2 EV) | Single animation | A looping exposure comparison; set 1–2 FPS so each frame is readable. |
| A time-lapse card dump | Single animation | Motion. Set 10–25 FPS and reduce the resolution — full-size raw frames make an enormous file. |
| Property | APNG | GIF |
|---|---|---|
| Colours | Full 24-bit — no banding on skies, skin or gradients | 256 per frame, so photographs need dithering and still band |
| Transparency | 8-bit alpha (not applicable to NEF, which has no alpha) | 1-bit — a pixel is either fully opaque or fully clear |
| Compression | Lossless | Lossless within a 256-colour palette, which is itself a heavy loss on a photograph |
| File size on photographic frames | Larger than GIF at the same dimensions | Smaller, but only because it threw the colours away |
| Browser support | Chrome 59+, Firefox 3+, Safari 8+, Edge 79+ | Universal, including email clients |
| Fallback when unsupported | The static default image is displayed — guaranteed by the PNG specification | Not applicable |
| Best for | Photographic sequences, gradients, anything where colour fidelity matters | Email, ancient clients, small simple graphics |
Because there is nothing to animate. An APNG is a sequence of frames, and one photograph is one frame; when the assembler is handed a single image and asked to build an animation, the duplicated frame is collapsed and the animation control chunk is never written. What you get is a valid, lossless, full-colour PNG carrying an .apng extension. That is a reasonable outcome — it opens in everything — but if you specifically want motion you need at least two source images. Upload the whole bracket, the whole time-lapse, or the before-and-after pair together in one go.
Filename order. Nikon writes sequentially numbered files (DSC_0001.NEF, DSC_0002.NEF and so on), so a card dump already sorts into shooting order without you doing anything. If you have renamed the files, or merged sets from two bodies, check that the names still sort the way you want before uploading — renaming with a zero-padded numeric prefix is the reliable fix, because img10 sorts before img2 in a plain text sort. There is no drag-to-reorder step, so the filenames are the only control you have over sequence.
Different jobs entirely. For an exposure bracket, a focus-stack preview, or a before/after comparison, the viewer needs time to read each frame — 1 FPS (Slideshow) or 2 FPS is right, and anything above about 5 FPS turns a comparison into a flicker. For a time-lapse you want the opposite: 10 FPS (the default) reads as motion, 25 FPS is smooth, and 50 FPS is available if your interval was short enough to support it. Remember that the framerate does not change the file size — the number of frames and their pixel dimensions do.
Because APNG is lossless and you fed it full-resolution raw frames. A 45-megapixel Nikon frame is around 8000 pixels wide; twenty of those stored losslessly is a very large file no matter how the encoder is configured, and there is no quality slider on this page to trade fidelity for size, because the format does not have one. The lever that works is Image resolution. Pick a height preset — 720p or 480p is plenty for a web loop — and the width follows the source aspect automatically. If you need a genuinely small file and can accept a 256-colour palette, NEF to GIF will be far smaller for the same sequence.
In browsers, yes: Chrome 59+, Firefox 3+, Safari 8+ and Edge 79+ all animate APNG, which covers the overwhelming majority of current traffic. Outside browsers it is more mixed — many desktop image viewers, most email clients and a lot of social platforms treat an .apng as a still. That is by design rather than a failure: the PNG specification requires a decoder that does not understand the animation chunks to ignore them and display the static default image, so your file never breaks, it just stops moving. Plan for the fallback frame to be a good one, since it is the first frame.
There is none to preserve. A Nikon raw file records what the sensor saw, and a sensor has no concept of an alpha channel, so every NEF is fully opaque. APNG itself supports 8-bit alpha and this pipeline does preserve transparency on alpha-capable image outputs — it just never comes into play from a raw source. If you need a cut-out with a transparent background, do the masking in an image editor and bring the result back as PNG frames.
A NEF is not a picture yet — it holds 12- or 14-bit mosaiced sensor readings, based on the TIFF/EP structure, with no display rendering baked in. Getting from that to a viewable frame requires demosaicing the colour filter array, applying a white balance, running a tone curve over the linear sensor response, and mapping into a display colour space. Every converter makes those calls slightly differently, and Nikon's own software additionally applies the Picture Control profile that was set on the camera, which a general-purpose converter does not have access to. Expect a flatter, more neutral rendering. If frame-to-frame consistency across a time-lapse matters more than absolute look, that neutral rendering is actually an advantage — it will not chase changing light the way an auto profile can.
PNG, and it is not close. For one image the two produce the same thing — a lossless full-colour still — but .png is the extension every piece of software, every CMS and every email client expects, whereas .apng will confuse a share of them for no benefit. Use NEF to PNG for single stills, NEF to JPG when file size matters more than lossless fidelity, and reserve this page for actual sequences of two or more frames. The full set of Nikon raw outputs is listed on the NEF converter hub.
They upload over an encrypted connection, are developed and assembled into the animation on our servers, and are deleted automatically after a few hours. There is no sign-up, no watermark, and files are never shared or made public. The practical thing to plan around is transfer time rather than processing: raw files run roughly two to six times the size of a JPEG of the same shot, so a fifty-frame time-lapse is a substantial upload. If the sequence is long, converting in batches is usually less frustrating than one very large transfer.