ChatGPT Fact-Checking Prompts: Verify Every Claim
Six prompts that turn ChatGPT into a claim-finder for your drafts - extraction, source audits, quote checks - plus the one step no prompt can do for you.
Let me start with the trap this post exists to avoid: asking ChatGPT “is this true?” and treating the answer as a fact-check. A model verifying claims from its own memory is the liar auditing the liar. When the Tow Center at Columbia Journalism Review tested eight AI search tools on identifying the source of article excerpts, they answered more than 60% of the 1,600 queries incorrectly - and ChatGPT, wrong on 134 of its 200, never once declined to answer. NewsGuard’s audit of ten leading chatbots found them repeating false claims on news topics 35% of the time in 2025, nearly double the year before.
So these prompts do something narrower and more useful. They make ChatGPT do what it is genuinely good at - finding every claim in a draft, sorting claims by risk, comparing a claim against a pasted source - and they leave the one irreplaceable step to you: opening the source. The model organizes the verification. It never performs it. That division of labour is the same one running through this whole prompt library, and nowhere does it matter more than here, because a marketer who ships a fabricated statistic pays for it in exactly the currency this site runs on: trust.
1. The claim-extraction prompt
Run this on any draft before it goes anywhere near publishing. Its job is to make the invisible checkable.
You are a fact-checking assistant. Below is a draft. Extract every
checkable factual claim - statistics, named studies, dates, product
facts, quotes, superlatives like "the largest" or "the first".
For each claim, output a table row:
1. The claim, quoted exactly from the draft.
2. Type: NUMBER / STUDY / QUOTE / PRODUCT FACT / SUPERLATIVE / OTHER.
3. Origin: GIVEN (it appears in the source material I pasted below)
or ADDED (it does not - it entered during drafting).
4. Risk if wrong: HIGH (money, law, health, a named person or
company) / MEDIUM / LOW.
Rules: do not judge whether any claim is true. Do not omit claims
that sound obviously correct - those are the ones nobody checks.
Opinions and hedged generalities are not claims; skip them.
Draft: [paste]
Source material I provided during drafting: [paste, or "none"]
Why it works: every fabricated fact that ever shipped was a claim nobody listed. The GIVEN/ADDED column is the heart of it - anything marked ADDED came from the model’s memory, not your materials, and is guilty until a source proves otherwise. I run this even on drafts I wrote myself, because human drafts absorb secondhand “facts” too. The explicit no-judging rule stops the model from helpfully marking its own inventions as verified.
2. The source-audit prompt
For claims that come with a citation, the question is not “does a source exist” but “does the source say this”. The gap between the two is where most bad stats live.
Here is a claim from my draft: [paste claim and the figure].
Here is the text of the source it cites, which I have opened and
copied myself: [paste the relevant passage].
Answer only from the pasted source text:
1. Does the source state this figure exactly? Quote the sentence.
2. Does the population match - who was surveyed or measured, and
does my claim say the same group?
3. Does the timeframe match?
4. Is my draft's framing stronger than the source's - a
correlation upgraded to a cause, a subgroup presented as
everyone, a "some" turned into a "most"?
Verdict: SUPPORTED / PARTLY SUPPORTED (say what differs) /
NOT SUPPORTED. If the pasted text is not enough to judge, say so.
Why it works: notice what the prompt makes you do before it runs - open the source and copy the passage yourself. That click is the fact-check, and it cannot be delegated. What the model adds is a second pair of eyes on the comparison, and question 4 is the one that catches me most often: the figure is right, but the sentence around it quietly claims more than the study did. The population check is the other big catcher - “of marketers” and “of enterprise CMOs surveyed at one conference” are different claims wearing the same percentage.
3. The provenance-tracing prompt
Half the statistics in circulation are copies of copies - a blog citing a listicle citing a deck citing a study nobody has read. This prompt hunts the original.
I have a statistic I want to use: [stat, and where I found it].
Do NOT tell me whether it is true - your memory of sources is
itself unverified.
Instead help me trace it:
1. What is the most likely original source type - an annual
vendor survey, an academic paper, a government dataset?
2. Give me three specific search queries to find the original,
including one with the exact figure in quotes.
3. List the red flags of a laundered stat I should watch for:
no year attached, "studies show", a number that never varies
across tellings, a defunct source.
4. If I cannot find an original, what weaker claim could the
draft make honestly, or should the claim be cut?
Answer 4 with options, not a verdict.
Why it works: the model’s training data has seen the same laundered stats you have, which makes it surprisingly good at guessing where a number originally came from - and the search queries it writes are better than the ones I write, because it knows the phrasing the original likely used. The opening rule matters: without it, ChatGPT cheerfully confirms famous fake statistics, since famous is exactly what its training rewarded. My own ending for untraceable stats is rule 4’s second option. The claim gets cut, and the draft says what I actually know instead.
4. The quote-and-name check prompt
Quotes, names, titles and affiliations are the highest-embarrassment category of error and the most mechanical to check.
From the draft below, extract every direct quote, every named
person with their stated title or affiliation, every named
company, product and study.
Output a checklist: item / where in the draft / what I must
confirm (exact wording of the quote at its source, current title,
correct spelling, the study's real name and year).
Flag with HIGH PRIORITY: any quote attributed to a named person,
any "study by [institution]", and any title that could have
changed - people change jobs faster than drafts get reused.
Rules: extract and flag only. Do not confirm anything as correct.
Why it works: this is pure clerical extraction, the kind of task where a model outperforms a tired human at 6pm. The reason it earns its own prompt instead of folding into prompt 1: misquoting a real person is the error most likely to generate an angry email with a lawyer in CC, and AI-assisted drafts are notorious for smoothing quotes into what the person plausibly meant. The BBC-style pattern of altered quotes is well documented in the news studies - I treat every quote in an AI-touched draft as paraphrase until the original wording is in front of me.
5. The adversarial pass
Before anything with stakes ships, I run one prompt whose entire personality is hostility.
You are a hostile fact-checker at a rival publication, and you
want to write a takedown of the draft below. Find the five
weakest factual points - the claims you would attack first, the
numbers you would demand sources for, the superlatives you would
test, the vague attributions ("experts say", "studies show") you
would mock.
For each: the claim, why it is attackable, and what evidence
would defuse the attack.
Do not soften. Do not compliment the draft. If you cannot find
five, find three, but look hard first.
Draft: [paste]
Why it works: role framing changes what a model looks for, and “helpful editor” mode is constitutionally reluctant to tell you your centerpiece stat smells wrong. The hostile framing licenses it. What comes back is a priority list for the verification budget - the five claims your most motivated critic would check are the five to check first. This is the same skeptic move I use on outlines before drafting, pushed to the other end of the pipeline.
6. The guardrail that prevents the work
The cheapest fact-check is the claim that never entered the draft unverified. This block bolts onto any drafting prompt you already use:
Sourcing rules for this draft:
- Use only facts, numbers and names from the material I pasted.
- Anything you add from your own knowledge, mark inline as
[VERIFY: claim] - including "well-known" facts.
- If a sentence needs a statistic I did not provide, do not
supply one. Write [STAT NEEDED: what it should show] instead.
- Never name a study, source or person you were not given.
Why it works: it converts fabrication from a silent failure into a visible to-do list, and the [STAT NEEDED] rule is the part I would tattoo somewhere: it removes the model’s strongest temptation, which is inventing a plausible number to complete a rhythm the sentence seemed to want. Resolving the markers then becomes a named editing step with prompts 2 and 3 as the tools. Every drafting prompt in my blog-post library assumes some version of this block is present, and the governance case for making it a standing rule - including what a court said about who owns a chatbot’s inventions - is in my hallucination guardrails guide.
The workflow, in order
For a draft with real stakes, my sequence: the guardrail block during drafting, prompt 1 to list what needs checking, prompts 2 to 4 on the list (with me opening every source), prompt 5 once the fixes land. For a low-stakes draft, the guardrail plus prompt 1 alone catch most of what matters - risk-tier the effort, not the honesty.
Two boundaries hold the system together. Verification happens at the source, by a person - the prompts route the checking, they are never the checking. And a claim that survives no prompt gets cut rather than hedged, because “some studies suggest” wrapped around an untraceable number is not caution. It is the same fabrication in a raincoat. There is also a compliance angle now: a documented human review pass is what keeps AI-assisted content outside the EU AI Act’s labelling duty, so the editing log this workflow produces is worth keeping.
FAQ
Can’t ChatGPT with browsing just check the claims itself? Browsing helps it find candidate sources, and I use it for exactly that in prompt 3. But the CJR numbers above are what happens when retrieval tools assert instead of retrieve - wrong on a majority of queries and almost never uncertain. Let it fetch, then read what it fetched yourself. The verdict stays human.
How long does this add per post? On my own drafts, fifteen to forty minutes depending on claim density - and the guardrail block shrinks it over time, because drafts arrive with fewer unsourced claims to chase. Compare that with the cost of one public correction, and the math stops being interesting.
What about facts that are genuinely common knowledge? If it is truly common knowledge, it usually carries no number, no name and no risk, and prompt 1 will classify it as low priority or skip it. The moment a “everyone knows” claim acquires a percentage, it stopped being common knowledge and started being a citation you have not found yet.
This post lives in the prompt library. The drafting prompts these guardrails bolt onto are in ChatGPT prompts for blog posts, the same evidence-only discipline applied to research is in the competitor analysis prompts, and the wider practice starts at the complete guide to AI marketing.