The .cr2 format

A .cr2 file is one of the ones people send over when nothing on their machine will open it. CR2 was retired with the EOS R generation; newer Canon bodies write CR3, which needs a current decoder.

Inside the header

A little-endian TIFF header (II*) followed by Canon-private IFD tags; the raw mosaic sits in a private data block referenced by tag.

Because the container is TIFF, `exiftool` reads CR2 natively — the maker notes, not the extension, are what identify the camera model.

Spotting a renamed file

Read 4 bytes and you know: 49 49 2A 00. A mismatch means the .cr2 file was renamed, which is the most common thing we see.

A file that was moved through a cloud sync or an email gateway often survives intact and only the name is damaged. Read the header before you believe the name.

Programs that open it

Installed options: Canon Digital Photo Professional, Adobe Camera Raw / Lightroom, Capture One, Darktable, RawTherapee, IrfanView (RawPlugin). None of them have to be the program that made the file: Universal Viewer reads it and writes nothing back.

When you have to convert

The targets people actually ask for are .jpg, .png, .dng, .tif. Each one has its own page with the settings that matter: cr2 → jpg, cr2 → png, cr2 → dng, cr2 → tif

Asked often

Can I convert .cr2 without the original program?

For the targets listed above, yes. The container survives; what is lost is whatever the target format cannot hold.

What opens .cr2 if I do not have Canon?

Canon Digital Photo Professional, Adobe Camera Raw / Lightroom, Capture One. If nothing installed reads it, the viewer above does.

How do I know a .cr2 file is real?

Identify it before you open it — 49 49 2A 00 at offset 0. That single look answers most of the questions we get about .cr2.

Checked 2026-10-05 — M. Halvorsen.

Notes from the file library

Files of this kind are catalogued with the family named in the table above. The family groups them by what a file carries, not by the application that wrote it, which is why two extensions from the same application can sit in different families.

Two things decide whether a file can be opened on a machine that never had the application that made it: the header, which says what the container is, and the structure behind it, which says whether the contents can be read at all. The conversion guides listed on the page cover the targets that come up most often.

Format pages are rebuilt with each release of the toolset, and the review line at the bottom of the page is when an editor last checked the entry against a file. If a page disagrees with a file you have, send the first sixteen bytes and the build number to the support address and the entry is corrected in the next build.