Decide what kind of interaction you want
An AI companion often emphasizes a persistent relationship, proactive messages, voice, images, and a stable persona. A character chatbot may emphasize roleplay, a library of public characters, scenario switching, or creator-authored cards. Some platforms blend both.
Write down whether you want one persistent character or many, short chats or long continuity, private creation or public discovery, text only or voice/images/video, and whether exporting the character matters. This eliminates more options than a generic feature checklist.
Evaluate memory as a system, not a label
Ask what is always included, how much recent conversation fits in the context window, what is summarized, what is stored as long-term memory, and whether you can view, edit, or delete it. Kindroid documents several memory layers; other hosted apps may expose less detail. SillyTavern makes prompt composition and lore tools more visible but depends on a separate model backend.
Use the long-roleplay memory guide to distinguish actual context from saved facts and retrieval.
Compare character control and portability
- Persona fields: Can you edit identity, speaking style, scenario, boundaries, and the user's own persona?
- Correction: Can you regenerate, edit, rate, or branch a response?
- Memory controls: Can you inspect and correct stored facts?
- Portability: Can you export a character card, chat transcript, or memory?
- Backend choice: Is the model fixed by the service, selectable, or supplied separately?
- Media: Are voice and images part of the same character state or separate generation features?
Nomi, Replika, SpicyChat, JanitorAI, and SillyTavern represent different combinations; their Database profiles document those differences without ranking them.
Treat privacy and policy as operating constraints
Companion chats can contain unusually sensitive emotional, identity, relationship, voice, and image data. Read retention, training use, human review, deletion, export, breach, and account-closure terms. Do not assume a conversation is confidential because the interface feels intimate.
Check the current content-moderation policy, including differences between web and app-store versions, public characters and private chats, or text and image generation. “Unfiltered” is not a complete policy. Local software can reduce provider exposure, but remote APIs still receive prompts and local installations need access controls and updates.
Run the same three-part trial
- Character test. Give each platform the same concise persona and scenario, adapted only to its fields.
- Continuity test. Establish three ordinary facts, continue the conversation, then revisit them later without leading the model.
- Control test. Correct one mistaken fact, adjust response style, and inspect whether the change persists.
Record setup effort, response style, correction tools, memory transparency, latency, and actual cost over the test, not just the first-message quality. Choose the platform whose trade-offs fit the recurring interaction.