Image
JPEG · PNG · WEBP
Two classifiers vote on whether the image was generated. If there are faces, we crop each one and run the same check. Camera physics and EXIF back things up when they can.
Veritas runs images, video, clips, and text through a handful of detectors and shows you what each one saw. When the signals agree, you get a clear answer. When they don’t, it says so honestly instead of guessing.
Upload an image, a video, a voice clip, or paste some text. You always get back the same thing: a score, a plain verdict, and the list of signals behind it.
JPEG · PNG · WEBP
Two classifiers vote on whether the image was generated. If there are faces, we crop each one and run the same check. Camera physics and EXIF back things up when they can.
MP4 · WebM · MOV
We sample frames along the timeline and run each one through the image pipeline. A separate pass watches for the frame-to-frame wobble face generators tend to leave behind.
WAV · MP3 · FLAC · OGG
A wav2vec2 classifier handles the main call. Whisper features give a second read. Pitch, silence, and energy patterns flag what TTS and voice clones flatten.
any UTF-8 paragraph
RoBERTa says whether it reads machine-written. GPT-2 measures how surprising the language is. Burstiness, rhythm, and LLM word tics round it out.
A verdict is the agreement between independent checks. One classifier reads the thing as a whole. Smaller forensic passes look for the specific fingerprints each medium tends to leave behind. If they line up, we say so. If they don’t, we say that too.
Two pretrained classifiers weigh in on the whole image. MTCNN finds faces, if any, and we run the same check on each crop. Then we look at camera physics: focus uniformity, chromatic aberration, sensor noise, error-level analysis. If EXIF matches a real camera, those signals count for more.
We sample frames along the timeline and run each one through the image pipeline. A separate check looks for the frame-to-frame wobble face generators tend to leave behind. The timeline chart shows where suspicion spikes. Spikes count more than a flat, evenly-high average.
A wav2vec2 classifier handles the main call. Whisper features give a second, learned read. On the classical side we watch pitch variability, silence-floor cleanliness, and energy-envelope rhythm. TTS and voice clones tend to flatten all three at once, which is a tell.
RoBERTa says whether the writing reads machine-made. GPT-2 measures how surprising the language is. Then we look at sentence-length burstiness, lexical rhythm, scaffolding-phrase frequency, and the punctuation patterns that show up more often in AI writing.
Every answer comes with the signals that produced it, their individual scores, and a one-line note on what each one actually checked. You don’t have to trust the result. You can audit it.
Trained classifiers do the heavy lifting. Hand-written heuristics fill the gaps where no good classifier exists, but they get labelled as heuristics and carry less weight in the final call.
Four possible verdicts: likely real, inconclusive, likely synthetic, highly likely synthetic. The middle two are the right answer more often than anyone wants to admit, and saying so beats pretending.
No account needed to try it. Uploads live in memory for as long as the check takes, then get thrown out. There’s a workspace waiting one click away.