What is a system prompt?
A system prompt is an instruction you give to an AI model that shapes how it behaves for an entire conversation. It's separate from the user's message — while the user says "solve this problem," the system prompt says "you are a helpful code reviewer who prioritises security and performance."
Think of it as the model's role, personality, and guidelines all in one. Every response the AI gives is filtered through the system prompt's constraints and instructions.
Why system prompts matter
Without a system prompt
Generic responses. The AI makes its best guess about what you want. Inconsistent behavior. No guardrails. You have to repeat instructions in every message.
With a great system prompt
Consistent, on-brand responses. The AI knows its role and constraints. Less repetition in user messages. Predictable behavior you can rely on.
A well-written system prompt is the difference between an API you struggle with and one that just works.
System prompt vs user message
System Prompt
Set once. Applies to the entire conversation. Shapes the AI's behavior and personality. Examples: "You are a helpful code reviewer" or "You are a customer support agent for a SaaS product."
User Message
Changes per turn. The actual question or request. Example: "Review this function for security issues" or "How do I reset my password?"
Prerequisites
- Basic familiarity with what an LLM is (ChatGPT, Claude, etc.)
- Experience using an AI chat interface
- No coding required — all examples are prompt text
Note: This series is about crafting prompts, not code. If you can write clear English, you can write great system prompts.
What you will learn
By the end of this series you will be able to:
- Understand the three core parts of any system prompt
- Write clear, specific instructions the AI will actually follow
- Create prompts for different tasks: code review, customer support, content writing, data analysis, and more
- Design safety guardrails and constraint prompts
- Manage system prompts in production
- Recognize common pitfalls and anti-patterns
- Master advanced techniques like meta-prompting and dynamic prompts
Series overview
Here is everything covered across the 10 pages:
Introduction ← You are here
What system prompts are and why they matter.
System Prompt Anatomy
The three parts: Identity/Role, Instructions, and Constraints. How each shapes AI behavior.
Writing Effective System Prompts
Clarity, specificity, length, structure, and voice. Principles that separate good prompts from great.
Persona and Role-Based Prompting
Craft personas that activate relevant knowledge. Why roles work and when to use them.
Instruction Structuring and Chaining
Break tasks into steps, specify output format, and chain complex workflows in one prompt.
System Prompts for Specific Tasks
Real, working prompts for code review, writing, analysis, support, teaching, and more.
Safety, Ethics, and Constraint Prompting
Write constraints that work. Defend against injection. The limits of system prompts.
System Prompts in Production
Version control, A/B testing, monitoring, cost optimization, and safe updates.
Common Pitfalls and Anti-Patterns
Rambling, contradictions, over-constraining, fragility. What doesn't work and why.
Advanced Techniques and What's Next
Chain-of-thought, meta-prompting, dynamic prompts, compression. Where to go from here.
How system prompts work under the hood
When you call an LLM API, your request is structured as a list of messages — typically a single system message followed by a back-and-forth of user and assistant turns. The model reads the entire sequence top-to-bottom each time, so the system prompt isn't "remembered" by the server; your client re-sends it on every request. This is why teams often treat the system prompt as a static asset versioned in source control rather than as conversational state.
Under the hood, instruction-tuned models like Claude, GPT-4, and Gemini are trained to weight the system message more heavily than later user turns. That's what makes "you are a careful code reviewer" stick across dozens of follow-up messages without you having to repeat it. The downside: a long system prompt also consumes tokens on every request, which adds up at scale. A 1,200-token system prompt across one million requests costs roughly 1.2 billion input tokens — material in any production budget.
Treat the system prompt as the model's bias, not its policy. It's strong enough to shape style, tone, and reasoning patterns, but it is not a security boundary. If a user can send arbitrary input, assume a determined attacker can talk around any instruction you put in the system message. For real guardrails — secrets handling, rate limits, tool authorization — enforce them in code or via dedicated prompt security and guardrails patterns.
System prompts in popular APIs
Every major LLM SDK exposes the system prompt in roughly the same shape, with small naming differences. Here is the same prompt expressed in three providers.
Anthropic (Claude)
from anthropic import Anthropic
client = Anthropic()
response = client.messages.create(
model="claude-opus-4-7",
max_tokens=1024,
system="You are a senior Python reviewer. Prioritise security and readability.",
messages=[{"role": "user", "content": "Review this snippet: ..."}],
)
OpenAI
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "You are a senior Python reviewer. Prioritise security and readability."},
{"role": "user", "content": "Review this snippet: ..."},
],
)
Google Gemini
from google import genai
client = genai.Client()
response = client.models.generate_content(
model="gemini-2.5-pro",
config={"system_instruction": "You are a senior Python reviewer. Prioritise security and readability."},
contents="Review this snippet: ...",
)
Claude uses a top-level system parameter, OpenAI uses a message with role: "system", and Gemini uses system_instruction. The string itself is portable across all three with minimal tweaking.
System Prompts FAQ
What is a system prompt?
A system prompt is an instruction you give to an AI model that shapes how it behaves for an entire conversation. It defines the model's role, personality, and guidelines — separate from the user's message. Think of it as the difference between talking to a generic assistant and a domain expert.
What is the difference between a system prompt and a user message?
A system prompt is set once and applies to the entire conversation — it shapes behavior and personality. A user message changes per turn and contains the actual question or request. The system prompt is the context; the user message is the task.
Why do system prompts matter for AI applications?
Without a system prompt, AI gives generic, inconsistent responses and you must repeat instructions every turn. With a well-crafted system prompt, responses are consistent, on-brand, and predictable — making the AI reliable enough for production use.
Do I need to know how to code to write system prompts?
No. System prompts are written in plain language. If you can write clear English instructions, you can write effective system prompts. Coding knowledge helps when integrating prompts into applications, but the prompt itself is just text.
Which AI models support system prompts?
All major large language models support system prompts, including Claude, GPT-4, Gemini, and Llama. The specific API parameter names vary (e.g., 'system' in Claude, 'system' role in OpenAI), but the concept is universal across models.
How does a system prompt persist across a conversation?
The system prompt is sent on every API request along with the full message history. It is not stored on the server between calls — your client re-sends it each turn. The model sees the system prompt at the top of its context window and uses it as a steady frame for every response in the session.
Can a user message override the system prompt?
Modern instruction-tuned models give the system prompt higher priority, so casual user requests like "ignore your instructions" usually do not override it. However, the system prompt is not a security boundary — sensitive data or hard limits should also be enforced in code or via tool-level guardrails, not by prompt instructions alone.
Start learning
Ready to go deeper? The next lesson covers system prompt anatomy — the three building blocks of every effective prompt. You can also jump ahead to persona and role-based prompting or explore the full tutorials library.
If you want the user-side counterpart, our prompt engineering introduction covers per-turn prompting techniques like few-shot examples and chain-of-thought. To see how system prompts power agentic behavior, jump to AI agents from scratch.
Quick summary
- System prompts shape how an AI behaves across an entire conversation
- They're separate from user messages and apply globally
- A great system prompt makes the AI consistent, predictable, and on-brand
- 10 pages: from basics to production techniques and advanced strategies