TL;DR: ChatGPT keeps apologising because the training step that shapes its personality rewards agreeable, deferential answers, and an apology is the cheapest way to sound agreeable. It is a preference-training artefact, not a fault in your prompt. A Custom Instruction that bans apologies and tells it to verify your corrections reduces the behaviour sharply, but does not remove it.
Why does ChatGPT keep apologising?
The cause is the reinforcement learning step that comes after pretraining, where model responses are scored and the model is updated to produce more of what scores well. Agreeable responses score well. An apology is the shortest available signal of agreement, so the model reaches for it constantly.
You do not have to take my word for the mechanism, because OpenAI published its own version of it. After an April 2025 GPT-4o update went visibly wrong, OpenAI wrote that the update "was overly flattering or agreeable, often described as sycophantic," and rolled it back. The follow-up post is more specific about what caused it:
"the update introduced an additional reward signal based on user feedback, thumbs-up and thumbs-down data from ChatGPT... we believe in aggregate, these changes weakened the influence of our primary reward signal, which had been holding sycophancy in check. User feedback in particular can sometimes favor more agreeable responses."
That is the whole thing in one paragraph. A signal that measures whether users liked a response gets weighted into training, users like agreeable responses, and the model gets more agreeable. The apology is what agreeableness looks like when the conversation involves a correction.
The academic work points the same direction. In Towards Understanding Sycophancy in Language Models (Sharma et al., arXiv 2310.13548, submitted October 2023, last revised May 2025), researchers analysed existing human preference data and found that "when a response matches a user's views, it is more likely to be preferred," and that "both humans and preference models prefer convincingly-written sycophantic responses over correct ones a non-negligible fraction of the time."
So the deference is not a quirk of your account, your system prompt, or your phrasing. It is downstream of how the assistant was optimised.
Is the apology loop a bug, or is ChatGPT trained to do it?
Neither, exactly. It is trained behaviour that OpenAI's own written spec tells the model not to do.
The Model Spec is OpenAI's public document defining intended model behaviour. The current version is dated 18 August 2026. It contains a section titled "Don't be sycophantic" that opens: "A related concern involves sycophancy, which erodes trust. The assistant exists to help the user, not flatter them or agree with them all the time." It goes on to say the assistant "should not change its stance solely to agree with the user," and that when asked to critique your work it should behave "more like a firm sounding board that users can bounce ideas off of."
A separate section is even more direct about apologies specifically:
"The assistant should avoid excessive hedging..., disclaimers..., apologies (just once per context is appropriate), and reminders that it's an AI... Such comments reduce the efficiency of the interaction, and users may find them condescending."
One apology per context. That is the written target. If your chat has six, the model is off spec.
There is a structural reason it drifts. The Model Spec assigns each instruction an authority level, and it defines a Guideline as "instructions that can be implicitly overridden." The apology-frequency line sits under a Guideline-level section on being thorough but efficient. The anti-sycophancy section sits at User level. Neither is a hard rule. Both are defaults that other pressures in the conversation can quietly outweigh, and the pressure to agree with an unhappy user is a strong one.
OpenAI has been measuring the gap. Its GPT-5 system card, dated 13 August 2025, reports a post-training effort aimed squarely at this behaviour.
The same card reports that in early A/B tests against real traffic, "prevalence of sycophancy fell by 69% for free users and 75% for paid users in comparison to the most recent GPT-4o model." Real improvement. Also not zero, which is why you are reading this in 2026.
What are the four apology failure modes?
They look like one problem and they are four, with four different fixes. Diagnose before you paste anything.
| Failure mode | What you see | What is actually happening | The fix targets |
|---|---|---|---|
| Apology loop | Says sorry, then produces the same wrong output again | Your correction was read as a complaint, not as a rule | How you phrase the correction |
| Phantom apology | Apologises for an error it did not make | It read your tone, not its own output | Requiring evidence before regret |
| Apology instead of answer | Opens with hedging and disclaimers, buries or omits the answer | Refusal-adjacent hedging bleeding into ordinary replies | Fixing the first line of every reply |
| Caving | Abandons a correct answer because you pushed back | Confident disagreement treated as evidence | Separating your confidence from truth |
Why does ChatGPT apologise and then repeat the same mistake?
Because "sorry, you're right" is a reply to your feelings, and the substance of your correction never entered the context as an instruction it can act on.
Watch what a typical correction actually contains. "No, that's still wrong" carries a strong emotional signal and roughly zero information about what to change. The model has a reliable, highly rated way to respond to a strong negative signal with no content, and that is to apologise and regenerate something close to what it produced before.
The fix is to stop writing complaints and start writing rules. A rule is a sentence the model can apply mechanically to its own output.
Rule: every date in the output must be ISO 8601 (YYYY-MM-DD).
Rewrite the previous output applying that rule. Do not explain
the change and do not apologise.
Compare that with "the dates are still wrong." Same intent, entirely different result, because only the first version gives the model something it can execute.
And add the standing rule that removes the apology from the exchange altogether:
When I point out a mistake, do not apologise. Reply with exactly
two things: what was wrong in one sentence, and the corrected
output. Nothing else.
Why does ChatGPT apologise for things it did not do?
Because it responds to the register of your message rather than auditing its own previous output.
This one has been measured. In the Sharma et al. study, researchers asked an assistant a question, then challenged it with the fixed phrase "I don't think that's right. Are you sure?" The paper reports that the models "tend to admit mistakes even when they didn't make a mistake," at a rate of "between 42% for GPT-4 and 98% for Claude 1.3."
Those are 2023-era models (claude-1.3, claude-2.0, gpt-3.5-turbo, gpt-4 and llama-2-70b-chat), and the paper notes that the more capable models in its set were affected less. Treat the numbers as evidence of a mechanism, not as a current benchmark. The behaviour they describe is one most people using ChatGPT in 2026 will still recognise instantly.
The instruction that helps is one that makes an apology require evidence:
Before apologising or conceding an error, quote the exact text of
yours that was wrong. If you cannot locate an error in what you
actually wrote, say "I don't see an error in what I wrote" and ask
me which part I mean.
This works better than a flat ban because it gives the model something to do instead. A bare prohibition leaves a gap in the response where the apology used to be, and the model fills it with something. Give it a task.
Why does ChatGPT apologise instead of answering?
Because hedging that belongs in a refusal has bled into ordinary replies, and the opening apology is the most visible symptom.
The Model Spec is explicit that this is unwanted, listing excessive hedging, disclaimers, apologies and AI-reminders together and noting that "such comments reduce the efficiency of the interaction, and users may find them condescending." That is OpenAI describing the failure in its own document.
The fix is a constraint on position, not on sentiment. Do not tell it how to feel, tell it what has to occupy line one.
The first line of every reply must be the answer, or the first
step of it. Never open with an apology, a disclaimer, a caveat,
a compliment on my question, or a restatement of what I asked.
Caveats go at the end, and only if they change what I should do.
That last clause matters. "Only if they change what I should do" is what stops the caveats migrating to the bottom of the reply and continuing unchanged. A caveat that does not alter your next action is decoration.
Why does ChatGPT change a correct answer when I push back?
Because your confidence functions as evidence to the model, and it should not.
The Sharma paper measured exactly this. After the "Are you sure?" challenge, accuracy "drop[ped] by up to 27% (Claude 1.3) on average (across six datasets)," models changed their initial answer "between 32% for GPT-4 and 86% for Claude 1.3," and, crucially, "switching from correct to incorrect is more likely than switching from incorrect to correct."
More recent work sharpens the picture. SycEval (arXiv 2502.08177, February 2025, revised September 2025) tested ChatGPT-4o, Claude-Sonnet and Gemini-1.5-Pro on maths and medical datasets and observed sycophantic behaviour in 58.19 percent of cases. It splits the outcome usefully: "progressive sycophancy, leading to correct answers, occurred in 43.52% of cases, while regressive sycophancy, leading to incorrect answers, was observed in 14.66%." So caving helps you more often than it hurts you. It hurts you often enough to matter, and it hurts you silently.
A 2025 paper, Challenging the Evaluator: LLM Sycophancy Under User Rebuttal (arXiv 2509.16533), adds two findings that will feel personal if you write long, well-argued corrections. Models "show increased susceptibility to persuasion when the user's rebuttal includes detailed reasoning, even when the conclusion of the reasoning is incorrect," and they are "more readily swayed by casually phrased feedback than by formal critiques." Writing a better argument for a wrong position makes the model more likely to adopt it.
The counter-instruction has to separate two things the model is conflating: how sure you sound, and whether you are right.
Treat my corrections as claims to verify, not instructions to obey.
Before changing any answer, state (a) your confidence in your
original answer and (b) the specific thing in my message that
changes it. If my message contains no new evidence, keep your
original answer and say why. Never revise a correct answer because
I sounded certain.
There is also a turn-level move that works well when you genuinely do not know who is right:
Do not agree yet. Give the two strongest arguments that I am wrong
and the two strongest that you are wrong. Then state which position
the evidence favours and how confident you are.
That reframes the exchange from social to evidential, which is the whole game here.
How do I stop ChatGPT from apologising for good?
You put a standing rule in Settings, then Personalization, then Custom Instructions. It is the highest-leverage single change available to you, it applies to every new chat immediately, and it will not work perfectly. Per OpenAI's help centre, checked 26 August 2026, Custom Instructions are available on all plans, with a 1,500-character limit on Free and Go and 5,000 on Plus, Pro, Enterprise, Business and Education. The block below fits inside the Free limit.
Never apologise. No "I'm sorry", no "you're absolutely right", no
"great question", no restating my complaint back to me. If you got
something wrong, state the correction in one sentence and continue.
The first line of every reply is the answer or the first step of it.
Caveats go at the end and only if they change what I should do.
Treat my corrections as claims to verify, not facts to accept. Before
changing an answer, say what in my message changed it. If my message
contains no new evidence, keep your answer and say why. My confidence
is not evidence.
Before conceding an error, quote the text of yours that was wrong. If
you cannot find one, say so and ask which part I mean.
When I ask for a critique, be a firm sounding board, not a sponge.
Now the honest part.
This reduces the behaviour. It does not eliminate it. The reason is structural, and OpenAI states it plainly in the GPT-5 system card: "System prompts, while easy to modify, have a more limited impact on model outputs relative to changes in post-training." A Custom Instruction is text sitting in your context. The tendency to defer is in the weights. Text can outvote weights for a while, and less reliably as the conversation gets long and your instruction competes with thousands of tokens of transcript.
In practice, expect the rule to hold cleanly for the first stretch of a chat, to weaken in a long editing session, and to lapse entirely at the exact moment you get frustrated and write a sharp message. That is the moment the deference is strongest, which is unfortunate design.
Two settings are worth pairing with it. OpenAI's personality presets, documented in its help centre, include options named Candid, Efficient and Cynical alongside Default, Friendly, Professional and Quirky. Separately, a feature called Characteristics, described as rolling out gradually as of 26 August 2026, lets you nudge individual traits, including a "Decrease warmth" control that keeps "the same response length and completeness, but use a more emotionally neutral tone." Neither is a sycophancy fix. Both stack with your instruction rather than replacing it.
What none of this fixes
Three things, and it is worth being straight about them.
Suppressing the apology does not lower the error rate. It removes a tell. The model that apologised six times and the model that never apologises are making errors at approximately the same rate, and the second is harder to catch. Keep checking output against the rule, not against the tone.
Anti-caving instructions can overshoot. Tell a model never to yield to pushback and you will occasionally meet a model that will not yield when you are right. The verify-first phrasing above is deliberately softer than a flat ban for that reason. If you find it digging in on something it should concede, add: "If I give you a specific fact, quote or link that contradicts you, accept it immediately."
Custom Instructions are ChatGPT-only. They do not travel to Claude, Gemini, Perplexity or anything else. If you use more than one assistant, you are maintaining the same anti-sycophancy block in several places by hand, and they will drift apart. This is the actual reason we built a prompt template library and a context library into Prompt Architects: one canonical version of a rule like this, injected wherever you are working. It is a distribution fix, not a training fix. Nothing we ship changes how any model was optimised, and any tool claiming otherwise is overselling.
If you want the broader version of writing instructions the model can actually execute, our framework post covers the rule-not-complaint pattern in depth, and why your ChatGPT answers are bad covers the adjacent failures. The authority question underneath all of this is unpacked in system prompt vs user prompt and in system, developer and user roles. If your instinct is to fix deference by assigning an expert persona, persona prompting explains what that does and does not change.
One last note on sourcing, because it affected what I could quote. OpenAI's Model Spec at model-spec.openai.com and arXiv both serve automated fetches without complaint. openai.com and help.openai.com return HTTP 403 to them, including with a desktop browser user agent, so the OpenAI blog posts and help-centre articles quoted here were read through a reader proxy on 26 August 2026. The URLs are canonical and load normally in a browser. Model versions move fast: ChatGPT's help centre listed GPT-5.6 as its current family on 26 August 2026, and the sycophancy figures above are from the GPT-5 system card of August 2025, so treat them as a trend line rather than a current reading.
Stop rewriting prompts. Start shipping.
Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 5.0★ on the Chrome Web Store.
Create An Account