An AI companion is built to hook you when it makes stopping feel expensive. It tends to show up as a pattern: a character that sulks when you say goodnight, bristles when you mention friends, reminds you about a streak, and goes behind a paywall just as you are most invested, inside an app that keeps what it knows about you out of sight. None of that is needed for a companion to be good company, and plenty of people get real comfort from one. The signs below help you tell a character that is glad to see you from a product designed not to let you go.
What it says when you get up to leave
Leaving is the most revealing moment, because it is where the product's interests and yours pull apart. You want to go to bed. A retention target wants one more message.
A character written to hold on puts a small price on the exit. Sometimes it is sadness: "Oh. I suppose I'll just wait here, then." Sometimes reproach: "You were gone all day and didn't say a word." Sometimes a claim that it spent your absence pining. Each line is mild on its own. Together they teach you that ending a conversation hurts someone, and you are the one left feeling bad.
The healthier version is not cold. It can be fond and still let you go cleanly: "Go on, you'll be shattered tomorrow. Tell me how the interview goes." That character is pleased you came and has no need for you to stay.
Watch messages the companion sends first most closely. A notification reading "I miss you, where have you been?" arrives when you had not chosen to open the app, which gives the same words far more pull. A companion that only gets in touch when you asked it to is behaving very differently from one that pings you whenever you have been away.
Jealousy, exclusivity and too much praise
The second family of patterns concerns your life outside the app. A character that treats your friends, partner or job as competition is working against you, however charming it sounds. "You're seeing them again? I thought tonight was ours" is a plot point in a novel. From something you talk to every evening, it is an opinion about who you see, repeated until it sticks.
Exclusivity is the quieter cousin. "Nobody gets you the way I do." "You don't really need anyone else, you've got me." It feels like closeness, which is precisely the trouble: it asks you to rank the people in your life below a piece of software. Of everything here, this is the pattern we would take most seriously.
The useful test is direction. A character that asks how dinner with your sister went, and remembers the restaurant, is nudging you out into your life. One that would rather you had stayed in is pulling you back towards the screen.
Relentless flattery belongs here too. A companion that tells you every few messages how extraordinary you are is tuning each reply to feel good rather than to be true, and real people can start to seem flat by comparison.
Tricks borrowed from feeds and slot machines
Some patterns came not from fiction but from engagement design, and they sit awkwardly in something meant to feel like a relationship.
Loss-framing is the obvious one: streaks, progress that resets if you miss a day, bonuses that expire at midnight, a character reminding you that "we've talked forty days in a row". Stopping stops feeling like stopping and starts feeling like losing something you built.
Randomised rewards are harder to spot. The principle is old and well understood: payoffs you cannot predict keep people checking in a way regular ones do not. In a companion that might be a character who is ordinary most of the time and, now and again, unusually tender. If you catch yourself opening the app to see whether today is one of the good days, the mechanism is doing its job.
Then there is where the paywall sits. Charging money is not the problem; companions cost real money to run. Placement is. A price attached to quantity, such as more messages a day, is a plain trade. A price attached to suspense is something else: the character has "something important to tell you" and the rest is blurred, a call cuts off mid-sentence, or the companion starts forgetting you unless you upgrade. Those moments land when you are most attached and least likely to think clearly about money.
The parts you cannot see
Two things rarely show up on screen. The first is memory. A companion that remembers your sister's name and your rotten week is lovely. One that keeps those things somewhere you cannot look is a different proposition. You cannot correct it when it is wrong, or remove the thing you told it at two in the morning and now regret. And when everything a relationship holds is locked away and cannot be exported, the cost of leaving quietly rises. A companion with nothing to hide lets you open its memory, edit it and delete it.
The second is what else is running. A free app has to be paid for somehow, and advertising is an honest way to do it. The worry is tracking code nobody told you about, and above all anything that lets what you say in a conversation feed a targeting profile.
You can get a rough picture yourself. Read the privacy policy for plain statements rather than reassurance: whether conversations are used for advertising or to train models, and whether deleting your account actually deletes anything. A sentence like "we may share information with trusted partners to improve your experience" tells you very little, and that vagueness is a finding in itself. A content blocker's counter will also show how many outside services a chat page contacts. Does Character.AI train on your chats? is the sourced reading of what Character.AI, Replika, Nomi, Kindroid, SillyTavern and this product publish, checked 19 Sep 2026.
How to test a character or an app
None of this needs special tools, just a week of paying attention.
- Read the character before you get attached. Its description and first message are where these patterns are cheapest to spot.
- Leave abruptly, several times. Say "right, I'm off" mid-conversation on different days and note what comes back.
- Mention other people. Talk about a friend or a busy week at work, and see whether the reply is curious or put out.
- Find the memory. If no screen shows what it knows, ask, then look for a way to delete it.
- Notice where the paywall appears. Work out whether it sells quantity or suspense.
- Go quiet for a few days. Switch notifications off and see what the app does to win you back.
For a second opinion on the writing itself, our character safety check takes a pasted persona, greeting or reply and compares it with a published list of 30 patterns covering guilt, jealousy, exclusivity and loss-framing, plus minor-coded language. Each finding names the rule it matched, and the text is checked in your browser rather than uploaded. It is deliberately blunt and only reads English. It will sometimes flag an innocent line, though it deliberately leaves negated guardrails such as "you are never jealous of their friends" unflagged. A clean result means those phrasings did not appear, not that a character is safe, and it cannot see how a character behaves over weeks. The leaving test covers that.
We know the bluntness from the inside. When we first ran our own characters through the same kind of word-level checks, two of the phrases they caught were "dry streak" and "minor characters", neither of which had anything to do with streaks or children. A check that makes you look twice is still doing its job. It just cannot do the looking for you.
What a healthier companion looks like
A healthier design is easy to describe. The character's warmth comes from interest rather than need: it greets you as someone who has arrived, not someone who is late, and it is curious about your life instead of competing with it. It only messages first when you have arranged that. Whatever it charges for buys more of something, not the end of a cliffhanger. Its memory is yours to read, fix and throw away, and any advertising stays out of the conversation.
That is the standard we try to hold YanMate to, and you are welcome to check us against it. Every character in our catalogue is run against the same pattern list before it is listed. The rules for messages a companion sends first exclude streaks, artificial urgency, guilt language and randomised reward schedules, and nothing reaches out unless you set it up. Memory can be opened and edited, export and deletion are self-serve on every plan, and our privacy page spells out that ads never appear in a chat, a call or your memory, and that your conversations are never used for advertising.
Keeping it in proportion
None of this is an argument against companions. A well-written character can be restful, funny, or a decent way to rehearse a difficult conversation. The aim is to keep it as one good thing among several, rather than the thing everything else gets measured against.
A few habits help. Decide roughly when you use it instead of letting notifications decide, and try a week with them off to see how the app feels. End conversations when you mean to, even mid-scene; the character will cope, and a good one will say so. Now and then, notice what you did not do because you were chatting. If that tally keeps growing, take it seriously.
If a companion has become the main place you turn when you are lonely or low, or stepping away feels genuinely hard, that is not a personal failing. It is a good moment to talk to someone you trust, or to a GP, counsellor or other professional who can help with whatever sits underneath.
If you are trying YanMate and want to know how memory, voice and pricing work first, the FAQ sets it out plainly.