Verify that every citation is real, correctly identified, and not retracted.
Hallucite checks each reference against the major scholarly databases — whether a person or an AI wrote the text. We don't guess who wrote it; we check whether the sources hold up.
What we check — and what we don't
What Hallucite checks
- Existence: the cited work is in an indexed database.
- Identifier integrity: the DOI or PMID resolves to the right work.
- Metadata consistency: authors, year, journal and title match.
- Retraction status: the work hasn't been withdrawn.
What we don't do
- We don't score whether your text was written by AI.
- We don't yet judge whether a source supports the specific claim it's attached to.
How It Works
1. Paste Citations
Simply paste your bibliography or reference list. We support APA, MLA, Chicago, Harvard, IEEE, Vancouver, and more.
2. Cross-reference
We check whether the referenced work actually exists, whether its details are internally consistent, and whether the identifiers point where they claim — against CrossRef, Semantic Scholar, OpenAlex, PubMed, and Retraction Watch.
3. Read verdicts
Each citation receives one of four verdicts: Verified, Discrepancy, Not Found, or Retracted — with the specific fields and sources behind every finding.
What a quick existence check misses
The most common way a fabricated citation hides is not a made-up title — it is a real DOI that resolves to a completely different paper. A does-the-title-exist check passes it; Hallucite's identifier integrity check does not.
Existence check only
DOI 10.xxxx/example → title found in CrossRef. ✓ Passes.
Verdict: no problem detected
Hallucite identifier check
DOI 10.xxxx/example → resolves to a different paper. Cited title, authors, and year do not match the record at that identifier.
Verdict: Discrepancy — identifier mismatch
Hallucite checks facts, not authorship. Every identifier is resolved live against CrossRef, Semantic Scholar, OpenAlex, and PubMed.
We verify against the world's leading academic databases
Measured on the 100 k-case synthetic benchmark