Start with what you actually pay for
Price is the first thing to pin down, and the way to do it is to read the cost line for each service rather than guess from a headline. A ref there already reads as its full value, so write it whole. If a service lists a spread, you see the whole span at once, and if the value starts with "up to" or "from", that wording is part of the figure. Nothing here settles whether a figure is monthly, annual or a one-off, so treat that as an open question to raise on the brand's own review page.
The second step is to separate the price of the app from the price of the device. Some of these services run in a browser with nothing to install, so there is no handset or tablet cost to add. Others list a mobile app, and then the cost of the phone becomes part of the comparison in practice even though it never appears in the fee line.
Worked example: AI Girlfriend lists web and nothing else, so the price question is entirely about the subscription and nothing about hardware. AIGirlfriends.ai also lists web for the same reason. By contrast Chai AI lists ios, which puts a handset into the running total for as long as you want the app rather than a browser tab.
Work out what you get before you pay
A fee tells you little on its own, because it may cover a single message allowance or unlimited use. The comparison gets useful when you read the allowance alongside the fee for the same brand, and when the allowance value itself is stated rather than implied. Where a service does not publish an allowance figure, the honest position is that you cannot tell yet, and that is a reason to look at the review page rather than a reason to guess.
The same discipline applies to how a brand is billed. State the billing name and the cancellation terms only as the service itself gives them, word for word, and do not paraphrase them into something more favourable or less favourable. A subscription described in one word on a pricing page can carry conditions described in three paragraphs elsewhere, so treat the short name as a pointer to the full terms and not as the terms.
Free access is worth checking on its own terms, not folded into the fee. A service with no paid tier and nothing to cancel is a different proposition from one with a free tier that later bills. Where the free part is genuinely nothing to pay, say free. Everywhere else, describe what the free part covers in words and leave the price of the rest to the figure itself.
Compare platforms, because the device changes the deal
Platform coverage is the clearest example of a fact that separates one brand from the ones next to it. Read the platform list for each service as a set, not as a single yes or no. A service that lists only web needs nothing installed and works on whatever device you already own. A service that lists web plus both mobile platforms gives you the same content on a phone, and that is the arrangement many readers prefer for daily use.
Compare how each service describes its own platforms, because the wording varies. Botify AI lists web, iOS and Android, covering browser and both handset systems in one entry. CrushOn.AI lists web, iOS app and Android app and uses different wording again, so the labels are not interchangeable. Dreamz.ai lists web browser, mobile and tablet and names device types rather than systems. Dondi AI lists web and mobile web, and DreamBF.ai lists web and mobile web, both pairing a browser with mobile web.
The practical test is what happens on the device you own. If you read on a phone every day, a mobile app or mobile web changes the habit in a way a desktop-only site does not. If you read on a laptop, a web-only service loses nothing at all. Once you have sorted the platform lists, the ranking pages sort the field for you: AI companion apps and AI girlfriend apps narrow the list, and AI boyfriend apps covers the other side of the same market.
Use ratings as a signal, not a verdict
Store ratings are the one figure most readers find first, and they need reading with the number of ratings attached. A high average built on a small pool says something different from the same average across a large pool, and the ref carries both parts together, so quote it whole. Read the count before you read the score.
The ranges across these services are wide. Backyard AI shows App Store (US) 3.4/5 from 37 ratings, a modest score on a small pool. Femma shows App Store (US) 5.0/5 from 8 ratings, a high score on a pool too small to lean on. Dippy AI shows App Store (US) 4.3/5 from 2,384 ratings, Chai AI shows App Store (US) 4.3/5 from 282,404 ratings and Character.AI shows App Store (US) 4.3/5 from 558,552 ratings, all of which pair a similar score with pools of very different size. EVA AI shows App Store 4.3/5, 25K ratings, 2026-09-26, DreamGF shows Google Play 4.2/5, 5.17K reviews, 100K+ downloads and ChaChat shows 4.4/5 App Store.
Two cautions. Ratings move, and the ones above are a snapshot of a specific store at a specific moment, so a ranking built on them will change. And a store rating covers the app as a whole, not the parts you are weighing here, so it says nothing directly about price or privacy. Use ratings to rule a service out, not to rule one in. Per-brand pages carry the detail: AI Girlfriend, AI Punca, AIAllure and AIGirlfriends.ai.
Ask what happens to your conversations
For an adult companion service, privacy is not a feature you add at the end. The questions worth asking are what a brand states about the conversations themselves: whether they are treated as private, and what a reader is told about them. Where a brand publishes a policy, read it at the source rather than relying on a summary, and compare the wording between services rather than the general impression.
Billing data and conversation data are different things and travel different routes. A service can be vague about retention while being plain about payment, and a service can be plain about both. Note which is which, because vagueness on one side tends to travel with vagueness on the other.
Where a service states nothing findable on the question, leave the question open rather than filling it in. An unanswered privacy question is a finding, and it belongs in your notes alongside the fee and the platform list. Two of the services here are worth reading in full because their policy pages are where those answers sit: Backyard AI and Baibu.
Build the comparison as a sheet, then decide
Put one row per service and one column per question: fee, what the free part covers, platforms, store rating and its pool, billing name, cancellation terms as written, and what the brand says about your conversations. Filling that sheet for three services takes minutes and settles more than an hour of browsing, because each column forces the same question in the same order.
Then weight the columns for yourself. Someone who reads on one phone cares most about platforms. Someone on a shared device cares most about privacy. Someone who has been disappointed by a subscription cares most about the cancellation terms stated in full. The facts do not change between readers, only the order of importance.
Finish on the open questions rather than on a verdict. A service with a clear fee and unclear cancellation terms is a different choice from one with a clear fee and clear terms, and the sheet makes that visible. Where a column is empty for a brand, the empty cell is the answer.