{"slug": "how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output", "title": "How to Fact-Check ChatGPT: The Copy-Paste Prompt I Use to Verify AI Output", "summary": "A developer shares a copy-paste prompt for fact-checking AI outputs like ChatGPT, Claude, or Gemini, designed to stress-test claims by forcing the model to argue against them. The prompt triages claims based on decision impact and uses an adversarial structure to identify errors, such as the common misconception that ORMs prevent SQL injection. The developer maintains a paid version of the prompt on PromptBase.", "body_md": "A ChatGPT answer doesn't stay in the chat window. It gets pasted into a PR description, quoted in a design doc, repeated in a meeting as \"apparently…\" — and at that point its errors become *your* errors, with your name attached. Fact-checking the answer before you repeat it is not paranoia; it's the same hygiene as running the tests before you merge.\n\nThe good news: you don't need to verify everything, and you don't need a research afternoon. You need a triage rule and one copy-paste fact-check prompt — it works the same in ChatGPT, Claude, or Gemini. Both are below, along with a real test run and an honest account of where the short version runs out of road.\n\nBecause the model is optimized to be plausible, and plausible is not the same as true. Language models produce the answer that best fits the shape of the question — which usually overlaps with the truth, and sometimes doesn't. The failure mode is not obvious nonsense; it's the confident sentence that is 90% right with one wrong load-bearing detail. No amount of fluent wording distinguishes the two from the outside. Only checking does.\n\nNot all of them — that's the mistake that makes people give up on verification entirely. The triage rule I use:\n\nCheck the claims that would change your decision if they turned out to be wrong. Skip the rest.\n\nIn practice that means three categories get checked, in order:\n\nEverything else — background info, general context, phrasing — can stay unverified, because being wrong there costs you nothing.\n\nOnce triage hands you a claim that matters, stress-test it. Paste this into a fresh chat — deliberately *not* the chat that produced the claim, so the model has no stake in defending itself:\n\n```\nStress-test the claim below. Do not assume it is true.\n1. Restate the claim precisely; note any ambiguity.\n2. Falsifiability: what evidence would prove it wrong?\n3. List the 2-3 conditions the claim silently depends on.\n4. Name the most likely confounder or alternative explanation.\n5. Verdict: SUPPORTED / UNCLEAR / DOUBTFUL, one line why,\n   and the single fastest check a human should run.\nClaim: [PASTE ONE CLAIM]\n```\n\nThe design is intentionally adversarial. Most \"is this true?\" prompts invite the model to agree with itself; this one forces it to construct the case *against* the claim — what would falsify it, what it silently depends on, what else could explain it. Agreement has to survive the attack to show up in the verdict.\n\nI fed it a claim you've probably heard stated as fact in a code review: **\"Using an ORM prevents SQL injection.\"** One pass, Claude Sonnet, fresh context — the prompt itself is model-agnostic and pastes into ChatGPT unchanged. What came back:\n\n`raw()`\n\n/ `text()`\n\n/ `execute()`\n\nescape hatches with string concatenation, and untrusted input used as That's a better security review of the claim than most humans give it, and it took under a minute. Note what made it work: the claim was *load-bearing* (people skip input sanitization because of it), and the prompt attacked instead of agreeing.\n\nUsed daily, the short version has four walls you'll hit:\n\nI stress-test claims often enough that I maintain the full version as a paid prompt: [Fact Checker: Claim Stress Test on PromptBase](https://promptbase.com/prompt/fact-checker-claim-stress-test). Same adversarial core, plus a 1–5 confidence rating, structured evidence-for/evidence-against, and the same audit depth on every run — built to push back, not agree.\n\nThey're different passes and they compose:\n\nSweep first when the whole answer is unvetted; stress-test the survivors you're about to act on. On a claim someone hands you in isolation — a stat in a meeting, a \"best practice\" in a review — skip the sweep and go straight to the stress test.\n\nWhatever the verdict, the model's word is the map, not the territory. The closing routine:\n\n*Written with AI assistance; the test run above was performed as described (one pass, Claude Sonnet, fresh context) and reported faithfully in summary. Reproduce it: paste the ORM claim into the checker and compare.*\n\n*Full version: Fact Checker: Claim Stress Test. Previous in this series: How to Catch AI Hallucinations.*", "url": "https://wpnews.pro/news/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output", "canonical_source": "https://dev.to/yvoolab/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output-47b9", "published_at": "2026-07-30 14:12:30+00:00", "updated_at": "2026-07-30 14:34:35.705931+00:00", "lang": "en", "topics": ["artificial-intelligence", "large-language-models", "ai-tools", "ai-safety"], "entities": ["ChatGPT", "Claude", "Gemini", "PromptBase"], "alternates": {"html": "https://wpnews.pro/news/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output", "markdown": "https://wpnews.pro/news/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output.md", "text": "https://wpnews.pro/news/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output.txt", "jsonld": "https://wpnews.pro/news/how-to-fact-check-chatgpt-the-copy-paste-prompt-i-use-to-verify-ai-output.jsonld"}}