Convert RAW to JPG

Drop in RAW files from almost any camera. They are demosaiced and encoded on this device — a card full of 30 MB files never has to go anywhere.

Options

All processing runs in your browser. No file leaves this device.

This page accepts the RAW formats of every major manufacturer: Canon CR2 and CR3, Nikon NEF and NRW, Sony ARW and SR2, Adobe and Apple DNG, Fujifilm RAF, Olympus and OM System ORF, Panasonic RW2, Pentax PEF, Samsung SRW, Leica RWL, Phase One IIQ, Hasselblad 3FR, Epson ERF, Minolta MRW and GoPro GPR. If you know which format you have, the dedicated page for it goes into the specifics of that camera family.

A RAW file is not a picture yet. It is the unprocessed reading from a sensor whose pixels each sit under a single colour filter, so two of the three colour channels are missing at every location and have to be reconstructed. That reconstruction — demosaicing — is why RAW files need a converter at all, and why two converters can produce visibly different results from the same file.

The in-camera JPEG you may be comparing against went through the manufacturer's own tone curve, sharpening and noise reduction, all tuned to their house look. This converter does not attempt to imitate any of that. It maps the linear data to a neutral, correctly exposed starting point. If you want a specific look, the tone and colour tools on this site operate on the same pipeline and let you set it deliberately.

What happens on conversion: LibRaw demosaics the sensor mosaic with adaptive homogeneity-directed interpolation, applies the white balance your camera recorded at capture, and hands back 16-bit linear data. That linear buffer is then encoded to sRGB — the gamma encoding every display expects, applied correctly rather than approximated. Because the whole path stays in floating point until the final encode, there is no intermediate 8-bit step to quantise away highlight detail.

Your files never leave this device. The decoder runs as WebAssembly inside this page, so there is no upload step and no server that could retain a copy. With RAW this is not just a privacy point — it is why the tool is usable at all, since uploading a card full of 30 MB files over a home connection would take longer than the shoot did.

Common questions

Which cameras are supported?
Decoding is handled by LibRaw, which covers well over a thousand camera models across every major brand. In practice, if darktable or RawTherapee opens your file, this will too. Very recently released bodies are the usual exception — support for a new sensor arrives in LibRaw some months after the camera ships.
Why does my photo look flatter than the camera preview?
The preview embedded in a RAW file is a JPEG the camera rendered with its own tone curve, sharpening and saturation. This converter starts from the sensor data and applies no manufacturer tone curve at all. Brightness is normal — the gamma encoding is done properly — but contrast is lower than a camera render. Flatter is the honest starting point; it holds more headroom for editing than a contrastier render would.
Are my RAW files uploaded to a server?
No. Decoding and encoding both run in your browser via WebAssembly. Nothing is transmitted. You can verify it in the Network tab of your devtools during a batch, or by disconnecting from the internet once the page has loaded — the tool keeps working.
How many files can I convert at once?
There is no limit in the tool. RAW files are large, and each one is decoded to a full floating-point buffer, so memory is the real constraint. Batches of a few dozen are comfortable on a typical laptop; for a whole card, work through it in groups rather than dropping a thousand files at once.

This converter is part of a full editing pipeline — tone, colour, lens correction and batch export all run the same way, without uploading.

Open the full pipeline