Document Forensic Check

Find out whether a document was AI-generated or edited.

Plica inspects PDFs and images at the object level — container structure, embedded pixels, and metadata — and returns one verdict with the reasons behind it. Not a black-box score.

No cryptographic content credentials in a file? Then pixel and metadata findings are forensic review signals — strong grounds for suspicion, not mathematical proof. We say which is which.
How it works

Several layers. One verdict.

No single layer catches every fake. Plica checks the document from several sides and merges the signals into one outcome — with the reason codes that produced it.

LAYER 01
Container physics
Structural analysis of the PDF or image: compression anomalies, incremental edits, third-party software traces in metadata, OCR-vs-text-layer conflicts.
PDF metadata · incremental updates · OCR comparison · XObject structure · math & logic
LAYER 02
Pixel & GAN forensics
Intrinsic analysis of the embedded raster: GAN fingerprint clusters, moiré, quantization traces, and visual artifacts left by generative processing.
GAN fingerprint · intrinsic forensics · moiré · quantization
LAYER 03
Metadata & provenance
EXIF and container fingerprints: camera anchors present or stripped, sterile profiles, cloned metadata, and scanner-pipeline signatures.
EXIF validation · sterile profile · scan-pipeline detection · clone signals
LAYER 04
Content credentials
When present, C2PA and SynthID credentials are read as cryptographic signals. When absent, we say so plainly — and fall back to forensic review signals, not false certainty.
C2PA · SynthID · content credentials
The verdict

Three outcomes, not a mystery number.

Every file lands in one of three zones, with the reason codes that put it there. Suspicious files route to human review instead of silent auto-clearance.

🟢 Authentic
No anomalies found across the layers. Verdict and reason codes recorded.
🟡 Review / HITL
Ambiguous or conflicting signals — for example a clean scan container with an elevated embedded-pixel reading. Routed to human review, not auto-rejected.
🔴 AI-generated / Manipulated
Strong synthetic or manipulation signals — GAN clusters, monitor screenshots, cloned EXIF. Flagged for rejection or escalation.
What you get back

Machine-readable, built for your workflow.

Risk tags
Flat, machine-readable tags (GAN_EMBEDDED, METADATA_STERILE, LAYER_CONFLICT_EMBEDDED…) your agent or webhook can act on directly.
Policy actions
Typed enforcement: approve, route to review, reject, request re-submission from source device. One enforceable outcome per file.
Analyst report
Human-readable breakdown — which signals fired and where — for the compliance officer or the dispute that comes later.
What we don't claim

Honest about the boundary.

Without cryptographic content credentials in a given file, pixel-level and metadata findings are heuristic review signals — not proof of authenticity or synthesis. We label which is which, every time.

A forensic verdict is one component of an investigation, not a substitute for qualified examination or legal advice. When a file is degraded — recompressed, passed through messengers — we say the signal is weak rather than guess.

Plica is an independent layer. It plugs into your KYC stack and works alongside Sumsub, Onfido, Veriff — it does not replace them.

Check a document now.

Free trial API · image + PDF · no integration required to start

Try the API — free →