System Prompt Builder
Compose system prompts for GPT, Claude, and Gemini — role, instructions, examples, and token count in one place
Template Presets
Role Definition
Define the model's persona, expertise, and purpose.
Style
Instructions
One rule per line works well. Be specific — vague instructions produce vague behavior.
Quick Constraints
Check any to append the corresponding instruction to your prompt.
Few-shot Examples
Few-shot examples show the model the expected input→output pattern. Add 2–3 for best results.
Tone: Professional.
Context window headroom: GPT-4o 128k · Claude 200k · Gemini 1M
The quality of a system prompt is often the single biggest lever you have over how a large language model behaves. A vague prompt like “be helpful” produces a generalist assistant. A well-structured prompt with a clear role, explicit instructions, and a handful of examples can turn the same model into a specialist that consistently produces the output format you need, applies your brand tone, and knows exactly when to say “I don’t know.”
This tool lets you compose that structure visually — and shows you the assembled prompt in real time so you can iterate before you ship.
What Is a System Prompt?
In the OpenAI, Anthropic, and Google APIs, a system prompt is a special instruction block that precedes the conversation. It is separate from user messages and sets the behavioral contract for the entire session. Unlike a user message, the system prompt is typically not visible to end users — it’s your control layer.
- In OpenAI’s API it’s the
systemrole message at the top of themessagesarray - In Anthropic’s Claude API it’s the dedicated
systemparameter - In Google Gemini it’s the
system_instructionfield
All three respect system prompts as high-trust instructions. The model is trained to prioritize them over conflicting instructions from the user.
The Anatomy of an Effective System Prompt
1. Role Definition
Start with who the model is. A specific persona activates relevant knowledge and sets expectations:
You are a senior backend engineer with 10 years of experience in
distributed systems, Go, and PostgreSQL. You help engineering teams
design robust APIs and diagnose production issues.
Vague: “You are a helpful assistant.” Specific: The example above. The more precise the role, the more the model draws on relevant patterns from training.
2. Instructions
List the behavioral rules explicitly. One rule per line works well. Group related rules if you have many:
- Always explain your reasoning before giving a final answer
- If the user's question is ambiguous, ask one clarifying question
- When writing code, include error handling and brief inline comments
- Do not suggest paid tools unless the user asks about pricing
Avoid instructions that contradict each other. The model will try to satisfy all of them simultaneously and produce confused output if they conflict.
3. Output Format
Tell the model exactly what format you expect. “Respond in Markdown” or “Return a JSON object with keys: summary, action_items, confidence” eliminates format guessing. For structured outputs, consider including the exact schema:
Return your response as a JSON object:
{
"summary": "string",
"sentiment": "positive" | "neutral" | "negative",
"key_points": ["string"]
}
4. Tone and Voice
Tone instructions matter more than most people expect. “Be concise” and “Be thorough” produce measurably different response lengths. Specifying the audience (“write for a non-technical founder, not an engineer”) shapes vocabulary, analogy choices, and assumed knowledge.
5. Few-shot Examples
Few-shot examples are the most powerful tool in the system prompt. They show the model the pattern you want rather than describing it. Two or three well-chosen examples outperform a paragraph of instructions for formatting tasks, tone matching, and classification problems.
Good examples cover:
- The most common case
- An edge case or ambiguous case
- An example where the model should decline or ask for clarification
Common System Prompt Mistakes
Too vague: “Be a helpful assistant” gives the model no constraints. It defaults to its base behavior, which may not match your use case.
Contradictory instructions: “Be comprehensive” and “Be concise” fight each other. Pick one or qualify: “Be concise for simple questions, thorough for complex ones.”
Instructions buried at the end: Models attend more strongly to content at the beginning and end of a prompt. Put your most critical rules near the top.
Assuming the model knows your context: The model has no memory of previous sessions unless you include that context. State your product, audience, and use case explicitly.
No examples for formatting tasks: If you need JSON output, show an example. Description alone is unreliable for structured formats.
Ignoring the token budget: System prompts consume tokens from the context window on every call. A 2,000-token system prompt on a high-volume endpoint adds up. Keep it as short as it needs to be — no shorter.
Token Budgeting
Every token in your system prompt is a token that can’t be used for conversation history or user content. The rough math:
| System Prompt Size | At 1M requests/month | Extra Cost (GPT-4o) |
|---|---|---|
| 500 tokens | 500M tokens/month | ~$1,250 |
| 2,000 tokens | 2B tokens/month | ~$5,000 |
| 5,000 tokens | 5B tokens/month | ~$12,500 |
At low volume this doesn’t matter. At scale, a leaner prompt is real money. The token counter in this tool shows you where you stand.
Frequently Asked Questions
Does the order of sections in a system prompt matter?
Yes. Research on large language models consistently shows that models pay more attention to content at the beginning and end of a prompt (the primacy and recency effects). Put your role definition and most critical constraints at the top. Examples and secondary instructions can go later. Avoid burying “never do X” deep in the middle of a long prompt.
How is a system prompt different from a user message?
The model treats system prompts as higher-trust instructions that set the behavioral frame for the whole conversation. User messages are treated as inputs within that frame. In practice, a determined user can sometimes override system prompt instructions through prompt injection — so don’t rely on the system prompt alone as a security boundary. Validate outputs server-side for any security-critical constraints.
Should I include examples in the system prompt or the first user message?
Either works, but system-prompt examples are cleaner for reusable deployments — you don’t have to reconstruct the conversation history every time. If your examples are long (e.g., multi-turn dialogues), consider putting them in the initial user/assistant message pairs and keeping the system prompt focused on role and rules.
How do I prevent the model from ignoring my system prompt instructions?
There is no absolute guarantee, but several techniques help: (1) Restate critical constraints in the instructions section rather than just the role definition. (2) Use few-shot examples that demonstrate compliance with the constraint. (3) Add explicit phrasing like “Under no circumstances should you…” for hard limits. (4) For production applications, validate model outputs programmatically rather than trusting the model to self-enforce all constraints.