Almost nothing written about these apps explains what they are. That matters, because nearly every complaint people have — it forgot me, the pictures look like someone else, the bill was higher than advertised — makes immediate sense once you know what is under the bonnet.
The three layers
Strip the marketing away and an AI companion app is three things stacked on top of each other.
A language model. The same class of technology as ChatGPT or Claude. It takes text in, predicts text out. It has no memory, no continuity and no state. It is a function, not a being.
A character wrapper. A block of text, invisible to you, sent to the model before every single message. It says who the companion is, how it speaks, what it likes, what it will not do. This is the system prompt, and it is most of what distinguishes one app’s companions from another’s.
A memory and billing layer. The part that decides what the model gets told about you, and what you get charged for finding out.
That is it. There is no fourth layer where the personality lives.
What happens when you send a message
The sequence is always roughly the same, and it runs from scratch every time:
- You type something and press send.
- The app assembles a request: the character definition, as much recent conversation as fits, any stored facts about you it judges relevant, and your new message.
- That whole package goes to the model.
- The model writes the next reply, in character.
- The app shows it to you, stores it, and throws the rest away.
Between step 5 and your next message, nothing is running. The companion is not thinking about you, not waiting, not anywhere. The next message rebuilds the whole thing from stored text.
This is not a criticism — it is simply what the technology is, and knowing it explains almost every behaviour you will notice.
Which model is it?
Most apps will not tell you, and the silence is informative.
The commercial APIs — OpenAI, Anthropic, Google — have usage policies that rule out most of what this category sells. So the overwhelming majority of uncensored companion apps run fine-tuned open-weight models: derivatives of Llama, Mistral or Qwen, adjusted on roleplay data and run without a content filter.
That has real consequences:
- Quality varies enormously between apps even at the same price, because they are not all running the same thing.
- A parameter count is not a quality claim. Soulkyn advertises a 70B model; that is a size, not a verdict. A well-tuned smaller model routinely beats a badly prompted larger one.
- Nobody is obliged to keep using the same model. An app can swap the model underneath you overnight, which is why a companion can suddenly feel different without any announcement. If you have ever thought “it changed”, you may well have been right.
Where the character actually lives
The thing people find hardest to accept is that the companion’s personality is a text file.
When you fill in a persona editor — name, backstory, temperament, boundaries — you are writing text that gets prepended to every request. The depth of that editor, and how much of it survives into each request, is most of what our customisation criterion measures.
It also explains two things:
Why some apps’ settings seem to do nothing. If the app writes a short, generic system prompt regardless of what you entered, your careful backstory never reaches the model. The settings exist in the interface and not in the request.
Why companions break character under pressure. The character definition is competing for the model’s attention with everything else in the request. Push hard enough, or talk long enough, and the character text gets outweighed.
How the pictures work
Image generation is a completely separate system from the chat, usually a diffusion model, and the two are joined by the app rather than by the AI.
The hard part is not making an attractive image. It is making the same person twice. That requires a persistent visual reference tied to your character — a fixed seed, an embedding, or a small fine-tuned adapter. Apps that invest in this produce a recognisable companion; apps that do not produce a new stranger every time with roughly the right hair.
That single difference is the clearest signal of how much engineering went into a product, and it is what our image generation ranking is really measuring.
Video is a third system again, and usually means a short generated clip. Only one app in our review set does live video calling, which is a fourth thing entirely. Our voice and video page separates them.
What you are paying for, and why metering exists
Every reply costs the operator real money to produce, because running the model is a per-request cost. Images cost substantially more per request than text.
This is the entire explanation for how pricing works in this category:
- Unlimited chat is a common offer because text inference is comparatively cheap.
- Images, voice and video are almost always metered, because they are not.
- An app offering unlimited everything at £4 a month is either subsidising you to acquire you, or quietly limiting something.
One point of genuine confusion worth clearing up: the “tokens” an app sells you are not the tokens the model uses. A model token is a technical unit of text, a few characters. An app token is a billing credit the operator invented and priced. They are different things with the same name, and the overlap does the operator no harm. When SweetDream AI charges 3 tokens a minute for a call, that is a price, not a measurement.
Our cost guide works through what that means for an actual monthly bill.
What this explains
Once you know the structure, the common frustrations stop being mysterious:
- “It forgot something important.” The memory layer did not store it, or did not judge it relevant to this request. See how memory works.
- “It feels different today.” The model may genuinely have changed, or your conversation has grown long enough to crowd out the character definition.
- “The pictures are inconsistent.” No persistent visual reference.
- “It broke character.” The character text lost against everything else in the request.
- “The bill was higher than the advertised price.” You generated media, and media is metered.
None of this makes the experience less enjoyable. People know perfectly well that a novel is ink on paper. But it does make you a considerably better buyer, because you can now tell the difference between an app that has solved a hard problem and an app that has written a better landing page.