RefExists

Do your references actually exist?

Paste a bibliography — or any text containing citations. Your browser checks every reference directly against the world's scholarly registries (Crossref · DataCite · doi.org · OpenAlex · PubMed · Open Library) and flags the ones that don't hold up: fabricated DOIs, AI‑hallucinated references, real identifiers stitched onto the wrong paper, and works that have been retracted.

What the verdicts mean

Verified
The identifier (DOI, arXiv ID or PMID) resolves, and the registered title, author and year match this citation.
Match found
No identifier was given, but a registry record closely matches the cited title, author and year.
Exists
A bare identifier with no citation text around it — it resolves, but there is nothing to compare it against.
Check me
A record was found but only partly matches (e.g. right title, wrong year). Compare by hand before trusting either way.
Unconfirmed
The DOI is registered (per doi.org) with an agency whose metadata this tool cannot read — existence confirmed, contents not.
Mismatch
The identifier is real but registered to a different work than the one cited — the classic AI-fabrication signature.
Not found
The identifier is definitively absent from the global registries (confirmed 404, not a network hiccup).
Not indexed
No identifier, and no close match in the indexes searched. Could be fabricated, or simply not indexed (books, theses, non-English, very new). The tool can't tell which — a lead to check, never a conviction. Only the two red verdicts are things it can prove.
Retracted
The work exists but has been retracted (per OpenAlex). Citing it as valid evidence is misleading.
Can't check
Web pages, news articles and other non-scholarly sources can't be fetched from your browser. Open the link and check it yourself.
Retry
A registry could not be reached. This is explicitly not a verdict about the reference.

What this tool does not tell you

Privacy, by construction

There is no server behind this page — it is a static file. Your text is never uploaded to us because there is no “us” to upload to. When you press Check, your browser queries the public scholarly registries directly (Crossref, DataCite, doi.org, OpenAlex, PubMed, Open Library), exactly as if you had searched them yourself. Those registries see the individual reference queries — from your IP address, not through any intermediary. The Crossref queries also carry a fixed contact address (ghostcite@dsl4.com, the same for every visitor, per Crossref's politeness convention) — that identifies the tool, never you. No account, no cookies, no analytics, no logs of your text. The page's Content-Security-Policy makes this enforceable: the browser will not load a script, or open an app connection, to anywhere but those six registries. (The host, Cloudflare, tries to inject its own cookieless analytics beacon, as it does on every site it serves; this page's policy blocks it before it runs, so no analytics loads — you can confirm that in your browser's network tab.) The entire checker is one readable JavaScript file — audit it.