Deepfake detection · AI image forensics · Content authenticity

Is this image or video real, or made by AI?

Ten independent forensic analyzers — neural classifiers, face and voice forensics, frequency, compression and diffusion-reconstruction analysis, plus cryptographic Content Credentials (C2PA) verification and invisible-watermark decoding — fused into one calibrated verdict, with every number behind it laid out for you.

Drop a video or image here or click to choose
mp4 · mov · mkv · webm · avi · jpg · png · webp — up to 20 MB · deleted right after analysis
Analyzing on the GPU
Warming up the models…
0s elapsed · typically 5–20s
10independent forensic analyzers
9neural models across image, face and voice
64recognized C2PA signing organizations
349labelled files used to calibrate the fusion
How we analyze
Ten analyzers, ten different ways a fake gives itself away

Each analyzer runs on our own GPU server, looks at a different layer of the file — pixels, faces, voice, frequency, compression, provenance — and reports two numbers: a score (0 = looks real, 1 = looks AI) and a confidence (how much it trusts its own answer for this file). An analyzer with nothing to go on abstains with confidence 0 instead of guessing.

01

Metadata & Provenance

Reads the file's paperwork before looking at a single pixel.

How it works

  • C2PA Content Credentials are verified cryptographically and fully offline: signature, certificate chain and manifest integrity.
  • The signer is matched against a local trust list of 64 organizations (Adobe, OpenAI, Google, Microsoft, Leica, Sony, Truepic…). A valid credential that declares AI generation is decisive.
  • EXIF, PNG text chunks, container tags and encoder strings are scanned for generator fingerprints (Stable Diffusion parameters, Midjourney, DALL·E, Sora, Runway, Pika, Kling…).
  • Absence of camera data, missing audio tracks and suspicious encoders nudge the score gently.
Fusion weight —hard-flag capable
02

Frame Classifier

Neural networks trained to tell real photographs from generated images.

How it works

  • Up to 32 frames are sampled across the clip (a single frame for stills) and scored by a vision transformer trained to separate photographs from generated images, ensembled with a second, independently trained detector.
  • Test-time augmentation (flips / crops) averages out single-view noise.
  • Per-frame P[AI] is aggregated (mean, p90, share of frames above 0.7); runs of hot frames become suspicious segments with timestamps.
  • A 6×6 (image) or 4×4 (video) patch grid is re-scored to build the heat map.
  • Confidence is halved below 400 px — resizing destroys the artifacts it looks for.
Fusion weight —strongest signal
03

Deepfake Face Analysis

Finds every face, then looks for the seams a face-swap leaves.

How it works

  • A face detector locates every face in each sampled frame; each crop is padded and normalised.
  • A dedicated face-manipulation classifier scores each face for blending boundaries, waxy skin, mismatched lighting and warped textures.
  • Scores are pooled per frame and across the clip; confidence grows with the number of faces seen.
  • No face → the analyzer abstains (confidence 0) rather than voting.
Fusion weight —abstains without faces
04

Spectral & Sensor-Noise Forensics

Listens for the faint electronic hiss a real camera sensor leaves behind.

How it works

  • A 2-D FFT of each frame gives the radial power spectrum; natural photos decay with a slope near −2…−3, generators are often over-smooth (steeper than −3.6).
  • Periodic high-frequency peaks (>6× the local median) are the fingerprint of decoder upsampling grids.
  • Block-wise residual noise is measured for level and uniformity — real sensors are noisy and uneven; synthesis is clean and uniform (heavy compression can mimic this, so weight is moderate).
  • Abstains below 400 px.
Fusion weight —8 frames averaged
05

Error Level Analysis (ELA)

Checks whether every region has lived the same compression life.

How it works

  • The image is re-saved as JPEG and the per-pixel residual against the original is measured in 16×16 blocks.
  • The hotspot ratio (99th-percentile block ÷ median block) is ≈2–4 for natural images; a pasted, inpainted or regenerated region with a different save history pushes it above 8.
  • Still images only — video frames share one codec history, so it abstains on video.
Fusion weight —images only
06

Temporal Consistency

Runs the frames like a flip-book and watches for physics that stutters.

How it works

  • Farnebäck dense optical flow between consecutive frames measures motion irregularity — generated video often jitters or morphs where real motion is smooth.
  • Texture flicker (frame-to-frame change in fine detail) catches the shimmer of frame-by-frame synthesis.
  • Reported for transparency; calibration on labelled data assigned it near-zero weight, so it informs the evidence log without moving the verdict.
Fusion weight —video only
07

Generalist Detector Panel

A second opinion from detectors trained for breadth, not for one generator.

How it works

  • One detector is trained on images from thousands of different generators, so it recognises models our primary classifier never saw.
  • A second adds coverage of the newest generation of image models.
  • Up to 16 frames are scored by both, averaged per frame, then aggregated (trimmed mean + p90).
  • Deliberately kept separate from the primary classifier so calibration can measure how much independent information it really adds.
Fusion weight —breadth coverage
08

Synthetic Voice Analysis

Listens to the sound track for text-to-speech and voice cloning.

How it works

  • ffmpeg decodes the first audio stream to 16 kHz mono PCM; the clip is cut into 4-second windows and silent windows are dropped.
  • Two anti-spoofing classifiers, trained on large corpora of genuine and synthesised speech, score each window for the spectral and prosodic signature of synthetic speech.
  • Windows are aggregated like frames, so a clip where only part of the voice was cloned still stands out.
  • Catches the growing class of attacks where real footage carries a fabricated voice. Abstains on silent clips and stills.
Fusion weight —video with sound
09

Diffusion Reconstruction

Pushes the picture back through Stable Diffusion's own image codec.

How it works

  • Latent-diffusion generators decode their pictures from an autoencoder's latent space — so passing such an image back through that autoencoder reproduces it almost perfectly.
  • We encode and decode through the autoencoders those generators use and measure the perceptual difference (LPIPS, layer 2), taking the closest match.
  • On our benchmark, generated images land near 0.020 and camera photos near 0.031.
  • Training-free (the AEROBLADE method). Soft by design: DALL·E and Midjourney use other decoders.
Fusion weight —training-free
10

Invisible Watermark

Reads the hidden mark Stable Diffusion pipelines stamp into every picture.

How it works

  • Stable Diffusion 1.x/2.x embeds the byte string StableDiffusionV1, and diffusers' SDXL pipelines a fixed 48-bit pattern, using an imperceptible DWT-DCT watermark.
  • We decode both layouts and compare bit for bit; a near-exact match is decisive — the odds of a random image matching are about 1 in 10 billion.
  • A match raises a hard flag that overrides every other signal, exactly like a verified AI Content Credential.
  • Absence proves nothing: most generators do not watermark, and resizing or recompression destroys the mark, so the analyzer abstains rather than voting.
Fusion weight —hard-flag capable
How we decide
One calibrated probability, four honest verdicts

We do not average opinions. Each analyzer's vote is centred (score − 0.5), scaled by its confidence, multiplied by a weight learned from labelled real and AI files, and passed through a logistic function. The result is a probability you can read literally.

The fusion rule
P(AI) = σ( b + Σi wi · (si − 0.5) · ci )
  • si — analyzer score, 0 (real) … 1 (AI)
  • ci — analyzer confidence; 0 means "abstained", so the term vanishes
  • wi — weight fitted by logistic regression on 349 labelled files
  • Hard flags — a verified AI Content Credential or an explicit generator signature overrides everything: the verdict becomes AI at ≥ 95 %
Calibration: loading…
When one analyzer overrules the average

Averaging is the wrong tool for a localised fake. A swapped face sits in otherwise genuine footage, so the whole-frame classifiers correctly report "real" — they were never looking for a face swap — and, carrying the heaviest weights, they would average the face detector into silence.

  • A confident specialist sets the verdict when it beats the weighted result, instead of being averaged away.
  • How far it may raise it depends on how often it is wrong on real media in our benchmark. The face and voice analyzers are capped just below the AI cut-off: they can say "Likely AI, look here", never "AI" alone.
  • Declaring "AI" outright needs corroboration — the second independent image classifier must agree, or the first must be near-certain.
  • Softer checks never escalate — compression, frequency, reconstruction and temporal analysis only ever act through their fitted weight.
Learned weights
AnalyzerWeight
loading…
Weights apply at full confidence; a low-confidence analyzer contributes proportionally less.
Verdict bands
RealP(AI) below 30 %No meaningful AI indicators.
Likely Real30 % – 50 %Leans genuine; anything mildly suspicious is highlighted.
Likely AI50 % – 80 %Balance of evidence points to AI; not a certainty.
AI≥ 80 % or hard flagStrong, usually multi-signal or signature-backed evidence.
What you get
A plain answer up top, the full forensics underneath

Every report is built in layers, so a first-time visitor and a forensic analyst both find what they need.

A

Verdict & meter

The band, the exact probability, and a Real ↔ AI meter with the band cut-offs marked. Media facts (resolution, codec, duration, analysis time) sit beneath.
B

Plain-language reasons

Every finding stated as an observable fact about your file — what was seen and why it matters — ranked by how much it moved the verdict, with anything uncertain flagged as a caution rather than buried.
C

Signal panel

Every analyzer in one table: score, confidence, learned weight and its signed contribution to the fused logit — with the fusion equation filled in with this file's numbers.
D

Evidence log

Each analyzer's raw findings and statistics (spectral slope, hotspot ratio, per-frame percentiles, models used, hard flags), the per-frame timeline for video, and a copyable JSON report.