
People who talk to an AI companion every day notice the same thing sooner or later. The character that knew your sister’s name on Monday asks who she is on Friday. Nothing is broken. A language model has no memory of its own, and every product in this category has to build one around it.
What the model actually sees
A language model reads the text placed in front of it for one request and writes a reply. Nothing carries over to the next request unless the app sends it again. Chat apps handle this by pasting the recent conversation into every prompt. That pasted history is the context window.
Context windows have grown large. A window of 200,000 tokens sounds like it could hold weeks of chat, and two things get in the way. Every token in the prompt is billed on every message, so apps cap how much history they send. Models also use long inputs unevenly. A 2023 paper by Nelson Liu and colleagues, Lost in the Middle, found that accuracy is usually highest when the relevant fact sits at the start or the end of the input and drops when it sits in the middle. A detail from deep inside a long chat can be present in the prompt and still get ignored.
Four ways apps add memory
Most companion apps combine some of these layers.
Summaries compress old conversation into a short recap that travels with each prompt. They are cheap, and they lose specifics. A summary of a summary loses more.
Extracted facts come from a second pass over the chat that pulls out durable details such as a name, a job, a pet or a preference, and stores them as a profile that is injected into every prompt. This layer lasts the longest per dollar. Its typical failure is a wrong entry, for example a line from a roleplay scene saved as a real biographical fact.
Vector search stores the chat log as embeddings and retrieves the chunks most similar to the current message. It recalls old specifics well. It has no sense of time, so an outdated fact can outrank a newer one that says the opposite.
Manual notes let the user pin or edit entries. They are the most reliable layer, and most apps cap them at a few dozen entries or a few hundred characters.
Tests you can run yourself
A companion’s marketing page will say it remembers you. Four checks tell you whether that is true.
Tell it ten specific details, such as a name, a date and a habit, then ask about them after a day, after a week and after a month. Change one fact and see whether the old version comes back later. Look for a screen that shows what the app has stored about you. Check whether memory works on the free tier or only after payment.
These are the criteria behind a month-long comparison of eight companion apps on the Nika blog. It marks vendor claims that could not be verified, says which prices are approximate and does not put the publisher’s own app first on raw recall.
Forgetting is part of the design
A memory that only grows turns into noise. Old trivia competes with current facts for a limited slice of the prompt, and the model has to guess which one matters. Better systems rank entries by importance and let low-value ones expire. They also need a way to correct a mistake, because a wrong fact that never fades is worse than a gap.
Why visible memory changes the failure mode
When stored facts are invisible, the user finds out about a wrong one by watching the character say something odd. When the list is on a screen, the user reads it and fixes it. Nika, an AI companion app, works this way: it records facts during a conversation, shows them as a list that can be rewritten, deleted or extended by hand, and keeps a separate set for each chat so one storyline does not leak into another.
Visible memory has a price on the engineering side. Longer remembered history means more tokens processed on every turn, and somebody pays for them, so every product in this category makes a choice between how much it remembers and what a message costs.
What to look for when you choose
If you want maximum recall over months, look for apps that describe their memory architecture in specific terms and let you inspect it. If you mostly want continuity inside one storyline, a short context plus a good fact list is enough. If an app only says that it “remembers everything,” ask what it stores, where you can see it and what it does when two facts conflict. Vague answers to those three questions usually mean a long context window and nothing else.







