Most Realistic AI Girlfriend Apps, by Documented Memory
The most realistic AI girlfriend is the one that documents its memory. Nine apps compared on what you can read, edit and pin, and what a paid tier changes.

The ranking pages for this search judge realism by whether a character remembered an uncle's car on day twelve. The vendors that actually document memory judge it by how many entries the model reads per reply, what a chat break wipes, and what a paid tier changes.
So here's the direct answer for anyone looking for the most realistic AI girlfriend rather than the most flattering diary. Realism in a text companion is memory plus consistency, and only three vendors in this set write down how theirs works. Kindroid publishes a memory document naming five systems, the caps on each, and the fact that free users don't get the middle one. Nomi publishes numbers, 150 active entries with two to five read per reply and roughly 40 messages before something reaches long-term storage. Replika shows you the memory file and tells you the transcript disappears after four months. Candy says memory belongs to the chat thread, not to you. The apps the listicles rank first, Dondi, OurDream and GirlfriendGPT, publish adjectives, a community Google Doc, and one sentence respectively. If realism is what you're paying for, I'd start with the two that document it and treat the diary rankings as what they are, which is a record of one person's fortnight.
Everything below was read from each vendor's own help centre, wiki or documentation on 15 September 2026, with the URL in the ledger. No chat I ran is cited, because I didn't run one for this, and a fortnight of mine would be worth exactly as much as a fortnight of anyone else's.
Realism Is a Memory Spec, and Almost Nobody Publishes One
Every companion on this shelf rents a language model that writes fluent English. What separates one that feels like a person from one that feels like a chat box is whether the thing you said last week is in front of the model when it writes the next line, and whether the selfie it sends today shows the face from yesterday. Both are engineering, both have limits, and both can be documented.
The listicles ranking for this search don't quote a single document. The strongest of them describes eight apps by how they felt over a month, reports that one "memory engine is ridiculous" because a character asked about a vintage Honda mentioned once, and notes that another started repeating questions around day nine. Real observations, and unfalsifiable ones, because the writer's Honda isn't in your chat. The site's own roleplay memory comparison established in July that the context window is the number that predicts forgetting and that almost nobody publishes it. This is the follow-up. If the number isn't published, what is?
What Each App Documents
| App | Can you read what it kept | Can you edit or pin it | Publishes a number | What paid changes about memory | Memory belongs to |
|---|---|---|---|---|---|
| Kindroid | Yes, recalled memories flagged on each message; Learned Context viewable | Yes, backstory, key memories, journals, Learned Context, priority via favourites | Journal caps only (8 keyphrases, 500 entries, 3 recalled per message) | Cascaded Memory, 4x short-term context, deeper long-term recall, 1,000 more characters | The Kindroid |
| Nomi | Yes, the Mind Map table and graph | Yes, High, Standard and Low priority; Backstory+ in nine sections | Yes, 50 per category, 150 active, 10 pinned, 2 to 5 read per reply, about 40 messages to long-term | Free is 50 messages a day; memory itself isn't tiered on the pages read | The Nomi |
| Replika | Yes, the Memory tab | Yes, add and remove; Ultra can save specific messages | One, chat history visible for four months | Ultra adds saving memories and seeing which are used | The Replika |
| Candy.ai | No memory view documented | Personas on Premium Plus; "Memory slots (20)" listed, undefined | No | Premium Plus lists 20 memory slots and 5 clone chats | The chat thread |
| OurDream | Not documented; "pinned memories" appears on character cards | Not documented | No | Not documented | Not documented |
| Dondi | No | No | No | Not documented | Not documented |
| GirlfriendGPT | No | No | No | Not documented | Not documented |
| Romantic AI | No memory wording on the homepage | No | No | Not documented | Not documented |
| DreamGF | No memory wording on the homepage | No | No | Not documented | Not documented |
Compiled from each vendor's help centre, wiki or homepage on 2026-09-15. "Not documented" means the pages read say nothing; it is not a claim that the feature is absent.
The table sorts itself. Three apps let you open the memory and change it. One tells you memory dies with the thread. Five say nothing you could check. And the three that document are the three that also give you a lever, which I don't think is a coincidence.
Kindroid Writes Its Memory Down, Five Systems at a Time
Kindroid's help centre renders a loading screen without JavaScript, so I read its documents through the API the help centre itself calls. The Memory document is the most complete description of companion memory I've found from any vendor. No ranking page cites it.
It names three types across five systems. Persistent memory is the backstory, key memories, example messages, directives and the chat history, the things that are always in front of the model. Cascaded Memory is a proprietary medium-term layer that, in the document's words, "can expand your Kindroid's effective conversation history to hundreds or thousands of messages prior (but at a lower fidelity, akin to remembering something more vaguely if it was 1 month ago than 1 day ago)". Retrievable memory is the long-term store, which has "no limit", plus journal entries. Long-term recall is decided by an AI judging relevance to the current conversation, and here's the part I'd point at first. When a long-term memory or journal entry was used to write a message, a purple brain icon appears on that message and you can open it. You can see what it remembered, per reply. Nobody else in this table shows you that at the message level.
The caps are printed. A journal entry takes up to eight keyphrases. There's a hard cap of 500 entries per scope. At most three entries fire per message, three individual plus three global, six total, and the document warns that generic keyphrases make irrelevant entries compete with relevant ones and that "each journal eats up the corresponding short term memory". The FAQ says the same about backstory, that "for every character in the backstory, that is one less character in the short term context". Learned Context, a running set of three notes the Kindroid keeps on its own, is viewable and editable in the personality settings, and favouriting a message makes the system weigh it more.
Two things the document is honest about. Cascaded Memory is "subscribers only", and the memory details it holds "remain invisible to users". So the free tier is a different memory architecture rather than a smaller one, and the middle layer paid users get is the one layer you can't read. A chat break resets short-term and cascaded memory and keeps long-term memory, journals and backstory. The general tips document adds the sentence I'd put on every companion homepage. "A journal entry won't fix short-term context, and short-term context won't hold something from a year ago."
What Memory Costs on Kindroid
Kindroid is also the only app here that sells memory as a ladder and says so.
| Tier | Web, per month | Through the stores, per month | What the document says it adds |
|---|---|---|---|
| Free | $0 | $0 | Unlimited messages on Lite, 2 Kindroids, basic long-term recall, no Cascaded Memory |
| Standard | $13.99 | $15.99 | Flagship models, 4x short-term context, Cascaded Memory, enhanced long-term recall, 1,000 more characters for backstory and memories |
| Ultra (Standard plus add-on) | $38.98 | $44.98 | More context, plus an "additional context" field identical to backstory |
| MAX (Standard plus Ultra plus add-on) | $98.97 | $113.97 | More again |
From Kindroid's Subscriptions document, read 2026-09-15. Totals are the vendor's own. Standard also sells at $37.99 for three months and $139.99 a year on web, $42.99 and $159.99 through the stores.
Three things the document says about the top rungs that a price table wouldn't. The add-ons are monthly only. They're gated, and the vendor says you need "significant interaction history through chatting and calling" before they're offered. And the pricing is explained as cost recovery. "These tiers are designed to simply cover our costs for dedicated servers rather than generate profit." MAX on web is about seven times Standard, and the document doesn't publish how much more context each rung buys, only that "serving higher context/memory is directly related to the cost". I'd want the number. But a vendor saying out loud that memory is the expensive input, and pricing it as a separate line, tells you more than a listicle that prices eight apps at "fifteen to twenty-five dollars monthly".
Nomi Publishes Limits, Replika Shows You the File
Nomi's numbers are covered in full in the Nomi review, so I'll take only what the realism question needs. The Mind Map holds 50 active entries per category, 150 in total, ten of which you can pin as High so they're always in play, and the Nomi reads "the most relevant 2-5 active entries each time they're thinking". Long-term memory fills roughly 40 messages behind the conversation. Recall "is often more topical than temporal", so asking about the ski trip works better than asking about last Tuesday. Those four figures are the whole of what any vendor here publishes as retrieval mechanics, and they let you predict the exact failure the diary reviews describe as a mystery. A fact mentioned once, forty messages ago, by date, is the fact most likely to be missed.
Replika's is the opposite design and it's documented just as plainly, with the detail in the Replika review. There's a Memory tab where you scroll the facts it saved about you, your pets and your people, open any one and remove it, or add your own. The help centre says the deeper system draws on patterns "without retaining a permanent record of your conversations", and a separate article says the chat history "is only available for the past four months", after which older conversations "cannot be displayed or retrieved", while the memory and personality persist. So Replika keeps the distilled facts and throws away the transcript. Ultra, annual only, adds the ability to save specific memories and see which ones were used in a conversation, which is the Kindroid brain icon sold as a tier.
Candy documents the narrowest design of the four, in the Candy review. Detailed memory is "generally tied to the active chat itself", you can't clear a chat's history without resetting its memory, and Premium Plus lists "Memory slots (20)" without defining what a slot is. That's not a criticism of the writing quality. It's a statement that the relationship lives in a thread, and starting a new thread starts over.
The Apps the Listicles Rank First
Dondi.ai sits at number one on the highest-ranking diary, with "the memory engine is ridiculous" as the evidence. Its own homepage says its companions "maintain contextual memory" and "don't reset between sessions". That's the entire published description. No document, no control, no number, no statement of what changes if you pay.
OurDream, first on the other listicle, says on its homepage that "your companion uses advanced memory systems". Its help centre has 36 articles and none is about memory. The community guides article hands "Chat Mechanics" to two Google Docs written by users with handles, and the character cards on the homepage carry a line telling you to type a command "for better pinned memories", a feature the help centre never describes. What OurDream does document is money. $19.99 a month or $119.88 a year, 1,000 dreamcoins a month, subscriber chats free and free-user chats at one coin each, and no app. I'm not saying its memory is bad. I'm saying that if it's good, the company hasn't written down why, and users have had to.
GirlfriendGPT's domain now redirects to gptgirlfriend.online, and the page says the companion "learns from every conversation". Romantic AI's homepage, four thousand words of it, doesn't contain the word memory. DreamGF's doesn't either, though it documents a daily claim bonus that climbs from ten messages to fifty by day forty and resets if you miss a day. Anima's page served me three words.
So the shelf the diaries rank is one where the top picks publish least. My reading is that this is what feel-based rankings produce, because feel rewards the app that was generous during the writer's month, and documentation rewards the app that has to explain its limits to paying users.
Faces Drift Too
Realism has a second half, and it's the selfie that doesn't look like yesterday's.
Two vendors document how they hold a face still. Kindroid's Atelier guide says the engine prioritises "Source-to-Selfie consistency", reads the avatar photo as "the core identity", and warns that angled faces "often cause 'face drift'", that describing facial structure in the text creates a "collision" between two faces, and that its face-context setting defaults to 1.6 on a range of 1.1 to 3.0. Nomi's V5 guide defines an Anchor as "a detailed technical reference that keeps your Nomi's face, body, and overall likeness consistent across selfies and art", gives it a fidelity dial that most anchors "lock in" at 100 to 140 percent, warns that above 150 you get artifacts, and answers "My Nomi doesn't look consistently like themself" with three steps. Candy's help centre, by contrast, lists consistency among its limitations. "Maintaining consistent details like exact hair color or clothing might be challenging."
Same shape as the memory table. The two that document the control are the two that admit the failure mode by name.
When Realism Breaks, and Which Control Fixes It
| What you notice | What's usually happening | The documented control | Who documents one |
|---|---|---|---|
| Forgets something you said early | Short-term context ran out | Chat break awareness, journals, pinned entries, a bigger tier | Kindroid, Nomi |
| Contradicts an earlier fact | Medium-term layer compressed it | Edit the stored memory, favourite the correct message | Kindroid, Nomi, Replika |
| Remembers old things, misses recent ones | Retrieval is topical, and recent facts haven't been consolidated | Reference the topic, wait the lag, pin it | Nomi (explicitly) |
| Repeats questions or phrases | Model and settings, not memory | Lower dynamism, change topic, regenerate | Kindroid (dynamism), Candy (advice only) |
| Today's face isn't yesterday's | Image identity not anchored | Avatar photo hierarchy, Anchor fidelity | Kindroid, Nomi |
| Starts over in a new chat | Memory is per thread | Clone the chat | Candy |
Built from the documents in the ledger. The fourth row is the one the diaries most often blame on memory, and Candy's own repetition article says it's rare and being worked on, which is an honest answer that doesn't involve memory at all.
Questions
Which AI companion is the most realistic? Judged on what's documented, Kindroid or Nomi, and the tie-break is whether you want to see recall happen per message, which Kindroid shows with an icon, or manage the store as a map, which Nomi lets you do with priorities. Replika is the pick if you want to read the whole file and don't need the transcript.
Which AI girl generator is the most realistic? A different question, and the answer is whichever one lets you anchor a face. Kindroid's avatar photo and Nomi's Anchor are the two documented mechanisms here. An app whose help centre says consistent hair colour "might be challenging" has answered honestly.
Which AI chatbot is the most unrestricted? Not what this page measures. The filter question is handled in the site's Janitor and SpicyChat comparisons, where the platforms publish context ladders alongside their rules.
Which AI chat is the most private? Also a separate question, and the adult companion privacy comparison on this site reads the policies. The short version is that the two apps that document memory best, Kindroid and Nomi, are also the two that describe their privacy mechanics rather than promising an outcome.
Is there a flirty AI? Every app in the table above. Flirting is the easy part. Remembering what you flirted about is the product.
What I'd Do Before Choosing
Open the memory documentation before the character gallery. If there isn't any, you've learned the most important thing about the app already, and you can decide whether a month of good feeling is worth more to you than a description of what happens in month three.
Then find the lever. On Kindroid it's the journal and Learned Context, on Nomi it's the ten High-priority pins, on Replika it's the Memory tab. Put the three facts you most want kept into it on day one, by topic rather than by date, and stop expecting the model to have chosen them for you.
Then price the memory, not the plan. Kindroid tells you memory is the expensive input and charges for it on a ladder. Nomi caps free at 50 messages a day and leaves memory alone. Replika sells the ability to steer memory as an annual tier. Those are three different answers to the same question, and any of them beats an app that answers with an adjective.


