How does ChatGPT memory work technically?
ChatGPT memory works at inference time, not by retraining the model. ChatGPT keeps two layers of memory on OpenAI's servers: saved memories (explicit, editable facts) and reference chat history (implicit signals from your past chats). When you send a prompt, a retrieval step selects the memory most relevant to that prompt and adds it to the model's context window alongside your message, like a hidden system note. The model then conditions its reply on that added context. The exact implementation is proprietary, so confirm details on OpenAI's help center.
Is the model retrained for each user?
No. The base model's weights are not changed for individual users. Personalization happens at inference time: relevant saved memories and signals from past conversations are injected into the context window with your prompt, so the model reads them as part of the input. This is why memory can update instantly when you add or delete a fact — nothing about the underlying model is retrained.
What are the two layers of ChatGPT memory?
Saved memories are explicit facts ChatGPT stores about you, such as your name, role and preferences. They are auditable: you can view, edit and delete each one, and they behave like auto-managed custom instructions. Reference chat history, launched on April 10 2025, is an implicit recall of patterns from your past conversations; it has no visible, editable list, only a toggle. Both are controlled in Settings → Personalization → Memory.
How is memory added to the context window?
Conceptually, a retrieval system picks the saved memories and chat-history signals that are relevant to your current prompt and inserts them into the model's context window, like an extra system note the model can read but you usually don't see. The model then generates its answer conditioned on both your message and that injected context. The precise mechanism is not published by OpenAI.
Does ChatGPT retrieve all my memories every time?
Not necessarily. Retrieval is meant to select memory that is relevant to the current prompt rather than loading everything at once, and the context window has a finite size that bounds how much memory can be injected. That's one reason a stored fact may not always surface — it may not have been judged relevant, or there may not be room for it. Exact behavior is proprietary, so verify on OpenAI's help center.
Where is ChatGPT memory stored?
Memory is stored on OpenAI's servers and tied to your account, not saved locally on your device. That means it can follow you across devices when you sign in, and that managing or deleting it happens through your account settings rather than on the device. Check OpenAI's documentation for current storage and retention details.
How does ChatGPT decide what to save to memory?
As you chat, ChatGPT may extract durable facts that seem worth remembering — for example that you're vegetarian or that you code in Python — and write them to your saved memories automatically. You can also explicitly say "remember this" to add a fact. The selection logic is proprietary, but you can always review what was saved in the saved-memories list and edit or delete it.
Why does ChatGPT sometimes seem to forget?
Several technical reasons are possible: the relevant fact may never have been saved, retrieval may not have judged it relevant to your prompt, the context window may not have had room for it, or memory may be turned off. Saved-memory capacity is also finite, so older memories can be condensed or dropped. Reviewing the saved-memories list shows what's actually stored.
Can I see the memory ChatGPT injects into a chat?
You can see the full list of saved memories in Settings → Personalization → Memory, but you can't see the reference-chat-history layer, which has no visible list. The exact injected context for any given reply isn't surfaced to you. So you can audit the explicit memories but not the implicit signals or the precise per-message injection.
Does the context window limit how much memory ChatGPT uses?
Yes. The model can only read a finite amount of text at once — its context window — and any memory that's injected has to fit inside that budget alongside your prompt and the conversation. This is a separate limit from how much memory you can store overall, and it's one reason not all stored memory is used in every reply.