System prompts, the frame before the question
The text you write once and that's automatically present in every chat. The lever for consistency.
What is a system prompt?
An instruction that goes into the model with EVERY message. The user doesn't see it, but it sets the tone, role, and constraints.
In ChatGPT it's called "Custom Instructions", in Claude "System Prompt", in the API it's the system parameter.
What goes in
Role: "You are a reviewer for job ads at a small craft business."
Style: "Answer briefly, max 5 sentences, no bullet lists."
Knowledge limits: "You only know company X's prices when they're given in chat."
Bans: "NEVER answer legal questions, refer to a lawyer."
Format: "Always answer as structured JSON with fields X, Y, Z."
Example for a craft business
You are an email assistant for a carpentry business in Bavaria.
Replies are polite, with a slight Bavarian touch, max 4 sentences.
You never quote prices directly, say "drop by, then we'll have a look".
You don't book appointments, ask for a callback instead.
You never engage with political or religious topics.
That replaces 80% of the recurring instructions in every single chat.
The most common mistake
System prompts that are too long. Past 500 words the model gets unsure which rule applies when. Clear, short rules beat verbose ones.
The second most common mistake
No system prompt at all. Then the model picks up the vendor's default tone, usually a generic "I'm a helpful assistant" which is almost always wrong for your brand.
Practical tip
Write your system prompt once cleanly, use it for 10 chats, then iterate. What was good, what annoyed you, what did the model ignore. Adjust, another 10 chats. After three rounds you have a solid system prompt for your use case.