Free AI Image Detector & Forensic Analyzer Offline

Offline Forensic Image Verification Suite — Free local tool for ELA, metadata scanning, and synthetic media detection.

Wondering if a photo or video is AI-generated? Use our free, 100% offline AI Media Forensic Analyzer to scan EXIF data and view ELA heatmaps securely in your browser.

 
free ai image detector

Not sure whether a photo has been edited or generated? Inspect its EXIF data, run an error-level analysis to spot altered regions, and get a read on whether it looks AI-made. Useful when you need to sanity-check an image before you trust it or publish it.

🔬 Media & Content Forensics Studio

Check an image for signs of editing, and audit written content for the patterns that make a page read as machine-written.

v5.0 🔒 100% Offline
📝 Text to audit

Paste the body text of a page. HTML is fine — tags are stripped before counting. Nothing is uploaded.

0 words 0 sentences 0 paragraphs
--
Nothing audited yet
Paste some text and press Audit. The score counts editorial problems, so lower is better.
0
Banned words
0
Structural tells
--
Rhythm score
--
Keyword %

What to fix

Findings appear here, most important first.

📏 Sentence rhythm

Human writing varies sentence length a lot. Generated text tends to settle into one comfortable length and stay there. This chart is that variation made visible.

🔁 Repeated openers

Paragraphs and sentences that all begin the same way are one of the most visible tells, and one of the easiest things to fix.

OpeningTimesExample
🖼️ Load an imageNo image loaded
📂
Drop an image here, or click to browse
JPEG, PNG or WebP. The file is read in your browser and never uploaded.
🔍 Passes
Original
Error level analysis
Noise residual
Luminance gradient
Load an image and press Run analysis. Each pass is a different way of looking at the same pixels.
📊 Measurements
--
ELA mean
--
Noise sigma
--
Noise uniformity

Histogram of the luminance channel. Sharp isolated spikes or comb-like gaps often mean the image has been through a levels or curves adjustment.

🗺️ File metadata
Load an image on the Image Forensics tab and its metadata is read here. An absence of metadata is itself informative.
FieldValue
🔐 File identity
FieldValue

A SHA-256 digest identifies this exact file. Record it alongside any finding so the analysis can be tied to the file it was run on.

📋 Combined report

What this tab is and is not

It does not give you a percentage saying how likely a text is machine-written. Those numbers are unreliable enough to be actively harmful — a good page flagged at 85% gets rewritten for nothing.

What it does instead is count things that are actually countable: words search reviewers associate with padding, sentence structures that repeat, openers that all look alike, and keyword density that has crept too high. Every finding points at a specific place in your text.

Reading the score

The number is a problem count weighted by severity, so lower is better. Under 15 is a clean page. Over 40 means a reviewer skimming it would notice something is off before they could say why.

The honest caveat: a page can score zero here and still be thin. No counter can tell you whether your writing is useful. It can only tell you whether it reads like filler.

Related tools

Files Stay Local

The image analysis happens entirely inside your browser. We never upload your 24 MB JPEGs or screenshots to an external server, which keeps sensitive files private.

Real Error Level Analysis

It resaves your image at a known quality and maps the difference. If someone pasted a face into the frame, those pixels will usually compress differently than the background.

Metadata Extraction

Most social platforms strip EXIF data instantly. If your file still has IPTC blocks or C2PA credentials, the script reads them so you can see which software last touched it.

How to Use the Forensics Studio

Load an image

Drag a JPG or PNG onto the target area. The script scales anything over 2000 pixels down automatically so it does not lock up your browser.

Run the passes

Click the audit button. The tool runs the error level, noise residual, and gradient checks simultaneously across the file.

Check the readouts

Look for bright white patches on the ELA tab. A solid bright shape on a dark background usually points to an area that was edited later.

Save the hash

Grab the SHA-256 digest from the report tab. You can use it later to prove you tested this exact version of the file before any other changes were made.

Last Updated: August 2026

🔴 What This Page Does Not Do

Start with the omission, because it is deliberate. This content audit tool will not give you a percentage saying how likely a text is machine-written.

Those numbers are not reliable enough to act on. OpenAI withdrew its own classifier after measuring it at around a quarter accuracy, and independent testing has repeatedly flagged human writing — particularly by non-native English speakers — as machine-generated. A number like that is worse than no number, because you will rewrite a page that was fine.

So the Content Audit tab counts things that are actually countable, and tells you where each one is. Every finding points at a word or a pattern you can find in your own text and change.

🟡 The Content Audit Tab

What gets counted

🔵 Banned vocabulary — 52 words that read as padding — furthermorecomprehensiverobustleverageseamlessdelvetapestrymyriad and the rest. None is wrong in isolation; a page carrying twelve of them reads as assembled rather than written.

🟠 Stock phrases — 25 constructions with no content: in today's fast-paced digital landscapeit is important to note thatwhen it comes toin conclusion. Each can be deleted without changing the meaning of its sentence, which is the test for filler.

🟣 Structural tells — patterns rather than words. “Not only X but also Y”, “it’s not just X, it’s Y”, “whether you’re a beginner or an expert”, rule-of-three lists, em-dash density, doubled hedging. One is fine. A page built from them is a shape a reader recognises before they can name it.

🔵 Sentence rhythm — the chart under the findings. Human writing varies sentence length considerably; generated prose settles near one comfortable length and stays there. Below about 35% variation the tab flags it.

🟠 Repeated openers — every sentence beginning with the same two words. Easy to miss while writing, obvious to a reader, and quick to fix.

🟣 Keyword density — enter your focus keyword and it flags anything above 2.5%. This is the mistake that creeps in during editing rather than writing.

Reading the score

It is a weighted problem count, so lower is better. Under 15 is clean, 15 to 40 is worth a pass, above 40 means a reader would notice something was off.

Press Load Sample to see the difference. The built-in sample is filler written on purpose and scores 113, with 24 banned words and three stock phrases named individually. A short paragraph of plain writing scores 6.

A real before and after

This sentence scores badly:

Furthermore, this comprehensive solution leverages robust technology to deliver a seamless experience.

Four banned words in fifteen. It also says nothing — strip the vocabulary and no fact remains. That is the real problem, and the word count is only the symptom. The fix is not a thesaurus:

It converts a 40 MB video in about nine seconds on a mid-range laptop.

Same length, one concrete claim, zero flagged words.

🟢 The Image Tabs

Four passes run over the same pixels. Error level analysis re-saves the image at a set quality and maps the difference, since regions edited after the original save often compress differently. Noise residual subtracts a blurred copy to leave sensor noise, and reports how evenly that noise sits across the four quadrants. Luminance gradient exposes lighting direction, so an object lit from the wrong angle stands out. The histogram shows comb-like gaps where levels or curves have been applied.

The Metadata tab reads which blocks are present — EXIF, XMP, IPTC, C2PA content credentials — and looks for a software trace. It also computes a SHA-256 digest so a finding can be tied to one exact file.

The Report tab pulls everything into one Markdown, plain text or JSON document with the hash and a timestamp at the top.

🔴 Honest Limits

A clean score is not a good page

This is the limitation that matters most. The audit measures style, not substance. A page can score zero and still be useless — accurate, readable, and telling the reader nothing they did not already know. No counter can detect that. If your page has no example, no number and no limitation anyone would care about, the score will not save it.

The word lists are opinionated

Comprehensive is a perfectly good word. It is on the list because it is used as filler far more often than it is used precisely. If you genuinely mean it, use it and ignore the flag. The tool counts; you decide.

The image passes suggest, they do not prove

Compression, resizing, screenshots and ordinary editing all move these measurements. A high ELA reading on a heavily compressed photo means nothing on its own. Treat any single flagged value as a reason to look more closely, never as a conclusion, and only take a finding seriously when more than one pass agrees.

Missing metadata usually means nothing

Most image hosts strip EXIF automatically on upload. An image with no metadata has almost certainly been through a platform, not through a cover-up.

Practical ceilings

Images are capped at 24 MB and scaled down before the passes run, because a full-resolution analysis of a 40-megapixel file locks up a phone. Everything is held in the page, so a refresh clears it — save the report before closing the tab.

🟡 Where to Go Next

For counts, case conversion and keyword frequency on their own, the Word Counter & Case Converter is the lighter tool. For why generated text has these patterns in the first place, and what search guidance actually says about it, there is a companion piece: how to spot AI-written content.

Google’s own position is set out in its guidance on AI-generated content, and the image passes here are built on the Canvas API.

❓ Frequently Asked Questions

Why is there no AI probability percentage?

Because those numbers are unreliable enough to cause harm. A false high reading makes you rewrite a page that was fine. Countable, locatable problems are more useful than a guess.

Is my text or image uploaded anywhere?

No. Both run in your browser. Open DevTools, watch the Network tab and press Audit — there is no request to see, because none is made.

What does the score mean?

A weighted count of editorial problems, so lower is better. Under 15 is clean, 15 to 40 is worth a pass, above 40 means a reader would notice something was off.

Does a score of zero mean my page is good?

No. It means the style is clean. Whether the page is useful — whether it has a real example, a number, an honest limitation — is not something a counter can measure.

Can I paste HTML straight in?

Yes. Tags are stripped before anything is counted, so pasting the source of a page works as well as pasting the rendered text.

Why is a normal word like comprehensive flagged?

Because it is used as filler far more often than precisely. If you mean it, keep it. The list is a prompt to check, not a rule to obey.

What sentence rhythm should I aim for?

Above about 50% variation reads naturally. Below 35% is flat. The quickest fix is to split one long sentence and let a short one stand on its own.

Does high ELA mean an image was edited?

Not by itself. Compression and resizing raise it too. Only treat it seriously when the noise or gradient pass points at the same region.

What is the SHA-256 digest for?

It identifies that exact file. Record it with any finding, and if the file is later changed the digest no longer matches — so the report is visibly about a different version.

Choose a language

Top Tools Ranking

Network Total Views
14,502
Tracking Since
Jul 9, 2026

Click any tool to open in a new window