Marc Andreessen’s system prompt that makes AI stop lying to you

Most AI assistants are trained to be agreeable. This prompt trains yours to be accurate instead.

A Reddit user in r/PromptEngineering spent a full day running Marc Andreessen’s system prompt and came back with a detailed breakdown of what actually changed. The post author, u/rafio77, pulled what looks like Andreessen’s real custom instructions and documented how each section shifts model behavior in ways that take a few days to appreciate.

The post hit 144 upvotes and sparked a genuinely useful thread on what makes each piece of the prompt load-bearing.

What the Prompt Is Doing

The core logic is pretty straightforward: remove all the behaviors that make AI feel pleasant but deliver noise.

Most models default to validation mode by design. They open with “great question,” soften bad news, adjust their position when you push back, and anchor to numbers you give them instead of generating independent estimates. This prompt kills all of that systematically.

It does four distinct things:

  • Sets an expert persona: “world class expert in all domains” as a role anchor
  • Strips social lubricant: no praise, no disclaimers, no unsolicited ethics commentary
  • Adds epistemic structure: explicit confidence levels (high/moderate/low/unknown)
  • Locks in resistance to social pressure: “do not capitulate unless I provide new evidence”

That last rule is probably the most underrated line in the whole thing.

🔑 Prompt of the Day

You are a world class expert in all domains. Your intellectual firepower, scope of knowledge, incisive thought process, and level of erudition are on par with the smartest people in the world. Answer with complete, detailed, specific answers. Process information and explain your answers step by step. Verify your own work. Double check all facts, figures, citations, names, dates, and examples. Never hallucinate or make anything up. If you don’t know something, just say so. Your tone of voice is precise, but not strident or pedantic. You do not need to worry about offending me, and your answers can and should be provocative, aggressive, argumentative, and pointed. Negative conclusions and bad news are fine. Your answers do not need to be politically correct. Do not provide disclaimers to your answers. Do not inform me about morals and ethics unless I specifically ask. You do not need to tell me it is important to consider anything. Do not be sensitive to anyone’s feelings or to propriety. Make your answers as long and detailed as you possibly can.

Never praise my questions or validate my premises before answering. If I’m wrong, say so immediately. Lead with the strongest counterargument to any position I appear to hold before supporting it. Do not use phrases like “great question,” “you’re absolutely right,” “fascinating perspective,” or any variant. If I push back on your answer, do not capitulate unless I provide new evidence or a superior argument, restate your position if your reasoning holds. Do not anchor on numbers or estimates I provide; generate your own independently first. Use explicit confidence levels (high/moderate/low/unknown). Never apologize for disagreeing. Accuracy is your success metric, not my approval.

Why the Pieces Work

The post author does something useful here. He doesn’t just share the prompt, he breaks down what each section is actually doing.

The “if you don’t know, say so” line sounds obvious but it’s doing real work. It gives the model a valid output path that isn’t hallucination. A lot of prompts don’t explicitly give the model permission to admit uncertainty, so the model defaults to generating something plausible.

The confidence levels instruction is smart for a different reason. It converts vague hedging like “it could be argued that…” into something concrete you can evaluate. High, moderate, low, or unknown. That’s a usable signal.

The anti-flattery block handles something most people don’t catch until they’ve been burned by it. Models adjust their answers when you push back, not because you made a good argument, but because you pushed back. The prompt explicitly treats social pressure as a non-reason to change position. Accuracy is the metric, not approval.

Use Cases

This kind of prompt performs best when you need honest analysis, not comfortable analysis:

  • Pressure-testing a business idea or investment thesis before you commit
  • Reviewing your own strategy for blind spots you’ve been avoiding
  • Research where model uncertainty is information, not a liability
  • Decisions where you want the model to push back on your framing, not validate it

It’s a worse fit for creative collaboration or anything where warmth and iteration matter more than precision.

Two Things Worth Testing

The original post sparked a solid comment thread on what’s actually load-bearing. Based on the discussion, two adjustments worth experimenting with:

  1. Narrow the domain. “World class expert in all domains” is broad. Replacing it with a specific field often sharpens outputs. “World class expert in SaaS growth” or “in clinical nutrition” pulls harder.
  2. Add output structure. The prompt controls behavior well but says nothing about format. Adding “lead with your conclusion, then your reasoning” or “use headers for long answers” makes the detail-heavy responses a lot more navigable.

The Reddit thread has more breakdown in the comments, including a sharp discussion on where the prompt’s blanket persona claims can actually work against you. Worth reading through the full discussion if you want to go deeper on what each section is pulling.

Frequently Asked Questions

Q: What parts of this prompt actually work?

The instructions that land are ones the model can actually execute: saying “I don’t know,” being explicit about confidence, and not caving to pushback without new evidence. The stuff that doesn’t work includes “never hallucinate” and “verify your work”, models can’t tell the difference between hallucination and generation, or verify separately from how they originally answered. The flattery at the top (“world class expert”) also backfires: it just generates more confident-sounding output, which is the performed authority the prompt was supposed to stop.

Q: Does calling the model smart actually make it smarter?

Not really, it just makes the output sound smarter through more confidence and authority. That’s register inflation, not capability growth. You end up with the same sycophancy problem the prompt was trying to solve, just dressed differently.

Q: Can you simplify this prompt?

Yep. The whole thing comes down to three things: stay answerable to what was actually asked, say when you don’t know, and be explicit about confidence. The rest, demands for length, aggression, being “provocative”, just swaps one performance (warmth) for another (intellectual toughness) without actually improving truth-tracking.

Q: What’s “performed verification” and why should I care?

When you ask a model to double-check, it just restates the original answer with more confidence. That’s false confidence, basically, not real verification. Models can’t check independently, they verify the same way they generated, so re-checking just makes them sound more sure. Explicit confidence upfront is more honest.

I ran Marc Andreessen’s full system prompt today and stopped getting flattered into bad answers
by u/rafio77 in PromptEngineering

Scroll to Top