Fake Detector

AI image & video analysis for newsrooms

v0.3 · DPG Media

Drop an image or video here or click to browse

JPEG PNG WebP max 20 MB MP4 MOV WebM max 200 MB
Analysing — may take up to 30 seconds for video

Fake Detector combines seven independent forensic signals to assess whether an image or video was created by an AI generator. No single signal is conclusive — the tool combines all available evidence and reports a weighted score. The result should be treated as forensic input, not a final verdict. Editorial judgement is always required.

Detection pipeline — how an image is analysed
1
Content Credentials check (C2PA) FAST EXIT
The very first check. C2PA (Coalition for Content Provenance and Authenticity) is an open standard supported by Adobe, Google, Microsoft, Sony, and others. Cameras, phones, and AI generators that support C2PA embed a cryptographically signed record directly into the file — stating who created it, with what device or software, and when.

If the file contains a valid C2PA signature that confirms AI generation (e.g. from OpenAI Sora, Adobe Firefly, Google Imagen), the pipeline stops immediately and reports AI-generated with high confidence. If the signature confirms camera capture or a verified human creator, it reports Real. If there is no C2PA signature — which is the case for most files today — the pipeline continues to Stage 2.

This check runs on both images (JPEG, PNG, WebP) and videos (MP4, MOV, WebM). OpenAI's Sora, for example, embeds C2PA credentials in every video it generates — allowing instant, cryptographic identification without running any ML models.
2
Full pipeline — 7 forensic signals
When no C2PA signature is present, all seven detectors run in parallel on the image. Their scores are combined using a weighted ensemble. Signals with strong track records (AI classifier at 55%, frequency analysis at 18%) carry more weight than supporting signals. If any single strong signal fires above a confidence threshold, the ensemble score is floored upward to prevent dilution by weaker signals.
AI Classifier Models
55%
Frequency & Noise Patterns
18%
Camera Noise Fingerprint (PRNU)
12%
File Metadata (EXIF)
10%
Spectral Watermark (SynthID)
5%
Invisible Watermark Detected or not — instant flag, no score
Known Fakes Database Match or no match — instant flag, no score
3
AI-assisted analysis & reporting
After the forensic pipeline completes, the image and its detection results are sent to Claude (Anthropic) for contextual analysis. Claude Vision examines the image and returns a structured scene description — WHO, WHAT, WHERE, WHEN, WHY — using the same five journalistic questions that form the basis of verification work. It also produces a plain-language explanation of why the verdict was reached, referencing the specific signals that fired.

When the verdict is AI-generated or Likely AI, an editorial disclaimer is automatically added: "Do not publish without disclosure." The full report — including scene context, verdict, signals, and flags — can be exported as a PDF for documentation and editorial sign-off.

Only the image and anonymised detection results are sent to the Claude API. No identifying user information is transmitted.
Image detectors
🧠 AI Classifier Models Primary
A Vision Transformer (ViT) fine-tuned to distinguish AI-generated images from real photographs. Benchmarked against four alternatives on our 217-image test set — selected for its 94% accuracy and 0% false positive rate. Covers diffusion models (Stable Diffusion, Midjourney, DALL-E 3, Flux) and GAN-based generators (StyleGAN, StyleGAN2).
Weight: 55% of total score. Strongest single signal. Re-evaluated regularly against new models.
📊 Frequency & Noise Patterns Primary
Analyses the DCT/FFT frequency spectrum of the image. AI generators produce characteristic patterns in high-frequency noise — a kind of spectral fingerprint — that differs systematically from the organic noise produced by a camera sensor. This signal is difficult to remove without visibly degrading image quality.
Weight: 18%. Especially effective after JPEG compression.
📷 Camera Noise Fingerprint Supporting
Photo Response Non-Uniformity (PRNU): every camera sensor has a unique, repeatable noise pattern caused by microscopic manufacturing differences. Real photos retain this fingerprint; AI-generated images do not — they have random or synthetic noise with no consistent sensor signature.
Weight: 12%. Most reliable when a reference camera is known.
🗂️ File Metadata (EXIF / IPTC) Supporting
Reads embedded metadata. Strong evidence of AI generation: software tags naming an AI tool (Stable Diffusion, Midjourney, Firefly, etc.), or exact pixel dimensions that match AI generator defaults (1024×1024, 1024×1792, etc.) combined with no camera data. Strong evidence of real photo: presence of camera make, model, lens, aperture, ISO, and shutter speed fields.

Also reads IPTC press/agency fields (credit line, copyright, byline) embedded by photo agencies and government photo offices. When a press credit is detected — e.g. "The White House", "AFP", "Getty Images" — the score is adjusted downward and missing camera EXIF fields are treated as normal (press photos are routinely stripped of sensor data by distribution systems).
Weight: 10%. Conclusive only when AI software tag is present.
🌊 Spectral Watermark (SynthID) Tie-break
Google DeepMind's SynthID embeds an imperceptible watermark into the frequency domain of images generated by Imagen and Gemini. This detector looks for SynthID-compatible patterns that survive resizing and moderate compression.
Weight: 5%. Specific to Google AI tools; low false-positive rate.
🔖 Invisible Watermark Tie-break
Checks for other invisible watermark patterns embedded by AI generators. Several platforms (e.g. Stable Diffusion XL, Midjourney) optionally embed low-amplitude watermarks that are detectable even after moderate image editing.
Acts as a tie-breaker; not weighted in the main score.
🗄️ Known Fakes Database Tie-break
Compares the image against a local database of previously identified AI-generated and manipulated images using perceptual hashing (pHash). A match — even after cropping, resizing, or re-compression — returns an immediate positive result with a link to the original fact-check. The database is updated daily from Google Fact Check Tools, AFP, Snopes, PolitiFact, and the Database for Known Fakes (DBKF) by Ontotext — which aggregates 22,000+ ClaimReviews from 35+ fact-checkers worldwide.
Effective only for images already in the database. Coverage grows with each daily update.
🤝 Community Database Automatic
Every image analysed with sufficient confidence is automatically added to the local community database. A perceptual hash of the image — not the image itself — is stored alongside the verdict. Future uploads of the same image (even after cropping or re-compression) will instantly return the stored verdict without re-running the full pipeline. No images or personal data are stored or shared.
Grows automatically over time as more images are analysed.
Video detectors
🔐 Content Credentials (C2PA) Fast exit
Checked first, before any ML processing. Reads the cryptographic provenance record embedded in the video container. Sora, Kling, and other generators that support C2PA embed a signed record naming the tool, the action (e.g. created via text-to-video), and the signing certificate (e.g. OpenAI · Truepic Lens CLI in Sora). If found, the pipeline stops immediately — no frame analysis needed.
Supported formats: MP4, MOV, WebM. Instant result when credentials are present.
🎞️ Frame-by-frame AI Classification Primary
Samples frames at regular intervals and runs the same AI classifier models used for still images on each frame. The per-frame scores are aggregated into an overall video score and displayed on the timeline.
Temporal Flicker Supporting
Measures frame-to-frame consistency. AI video generators (Sora, Runway, Pika) often produce subtle flickering in textures, hair, and background detail because each frame is generated semi-independently. Real camera footage is optically consistent between adjacent frames.
📡 PRNU Consistency Supporting
Checks whether the camera sensor noise fingerprint (PRNU) remains stable across frames. In a real recording from one camera, the sensor fingerprint is constant. In AI video, each frame lacks a consistent fingerprint.
🔬 Diffusion Reconstruction Error (DIRE) Tie-break
Encodes and decodes each frame through a diffusion model VAE (Variational Autoencoder). AI-generated frames tend to reconstruct with lower error than real photographs, because they already lie within the generator's learned distribution. Used for video frames where it is more reliable than on stills.
📋 Video File Metadata Tie-break
Reads container metadata (MP4/MOV/WebM headers). Checks for software tags from AI video tools, missing camera sensor data, and codec configurations typical of AI-generated video exports.
How the score is interpreted
🤖
AI-generated
Score ≥ 0.80
High confidence — multiple strong signals fired
⚠️
Likely AI
Score 0.60–0.79
Probable AI origin — verify before publication
🔎
Uncertain
Score 0.40–0.59
Inconclusive — manual review required
Likely Real
Score < 0.40
No significant evidence of AI generation found
Limitations & honest caveats
  • No detector is perfect. This tool is a forensic aid — it raises or lowers suspicion, it does not deliver legal proof.
  • Heavily compressed, downscaled, or screenshot images reduce accuracy significantly. EXIF and watermark signals are usually destroyed by screenshots.
  • AI generators evolve rapidly. Models trained on older generators (StyleGAN, early SD) may not detect the latest ones (Sora, GPT-4o image gen, Flux).
  • The absence of EXIF data alone is not suspicious — most images shared on social media have EXIF stripped by the platform.
  • A real photo that has been digitally manipulated (deepfake face swap, inpainting) may score lower than a fully AI-generated image.
  • Some generators deliberately remove watermarks or mimic camera metadata. Adversarial techniques can fool individual signals.
  • C2PA adoption is still growing. Most images today have no C2PA signature regardless of origin.
  • Sora (OpenAI) reliably embeds C2PA credentials in generated videos, but still images exported from Sora currently carry no C2PA data. The ML pipeline handles these, but scores may be lower than for video.