How to use the image forensics tool

The digital image forensics tool performs Error Level Analysis (ELA) by comparing an image to a recompressed version and visualizing the differences; areas with higher error levels can sometimes indicate edits, compositing, or differing compression histories in visual content. It is designed for investigative and OSINT workflows to get a quick, visual indication of potential manipulation to support deeper analysis.

To use the tool:
1) Load Image A. Upload a file or paste an image URL and select Load from URL.
2) Add Image B if you have a second version to compare, such as an original post and a repost.
3) Set the ELA parameters. The defaults are ELA Scale 15 and JPEG Quality 95. Raise the scale when the ELA image is too dark to read.
4) Select Run / Refresh Analysis.
5) Review the Original, ELA, Edges, Brightness, Metadata and Summary tabs. Drag the overlay slider to compare the original against its ELA image.
6) Use the reverse image search buttons for Google, Bing, Yandex or TinEye to find earlier copies of the image.
7) Record what you see in Investigator Notes, then export the ELA PNG or the PDF report for the case file.
Platform
This is just the beginning. There's more to uncover.
Discover our Platform.

What is error level analysis (ELA)?

Error level analysis (ELA) is an image forensics technique that detects manipulated images by measuring JPEG compression error. ELA stands for error level analysis. It works by resaving the image at a known quality, then subtracting the resaved copy from the original. The result is an ELA image in which brightness shows how much each area changed.

An untouched photo tends to change evenly. A pasted or retouched region often changes at a different rate, because it was compressed a different number of times than the pixels around it.

How to read ELA images

To read ELA images, compare like with like. Similar edges should show similar brightness in the ELA image, similar textures should look alike and flat surfaces should be uniformly dark. An object that glows brighter than comparable objects in the same frame deserves a closer look.

Turn on the grid overlay as well. JPEG compresses an image in 8 by 8 pixel blocks. An edit usually raises the error level of every block it touches. The FotoForensics ELA tutorial documents these rules with worked examples.

ELA images mislead when the source file is weak. A photo that has been resaved many times turns almost black. A native PNG has no JPEG compression history to measure. Find the highest quality copy of the image before you draw a conclusion.

Frequently asked questions

What is an ELA image?

An ELA image is the picture that error level analysis produces. ELA stands for error level analysis. The ELA image is a difference map made by resaving a photo at a known JPEG quality and subtracting the copy from the original. Bright areas changed more during the resave and dark areas changed less.

How can you tell if an image has been manipulated?

You can tell if an image has been manipulated by looking for regions whose error level does not match similar regions in the same image. Then check the metadata for editing software, compare the image against earlier copies found through reverse image search and look for inconsistent lighting, shadows and edges. No single test is conclusive.

Is the image forensics tool free?

Yes. The ShadowDragon Image Forensics tool is a free online image forensics tool. It needs no account or download. Uploaded files are processed locally in your browser.

Which image formats work with error level analysis?

Error level analysis works best on JPEG images, ideally the original camera file. A native PNG or GIF has no JPEG compression history to measure. A photo that has been resized or resaved many times shows very little contrast in its ELA image.

Does the tool upload my image to a server?

No. The ShadowDragon Image Forensics tool analyzes uploaded files locally in your browser, so the photo is not sent to a server. Images loaded by URL are fetched by your browser. Metadata is read from uploaded files only.