Money and consent
Whether pricing is clear, the free tier is honest, leaving is reasonable, pressure tactics are manipulative, and advertising respects the core experience.
Whether pricing is clear, the free tier is honest, leaving is reasonable, pressure tactics are manipulative, and advertising respects the core experience.
A beautiful, famous app can still treat people unfairly. A niche or imperfect app can still charge honestly and respect consent.
Offline support, account requirements, technical quality and privacy characteristics are reported as context, without distorting the fairness measurements.
A deterministic observation—such as a shipped SDK class or disclosed weekly-only price—publishes from one version-stamped source.
ON THE CATCH LISTThe finding is shown with its source so readers can inspect it, but it is not on the catch list — unless it is a charge only users can see and enough of them report it (below).
SHOWN, NOT CONFIRMEDIndependent ways of looking at the app agree. The finding reaches the catch list, labelled “Corroborated”.
ON THE CATCH LISTMultiple independent evidence paths converge. The finding reaches the catch list, labelled “Strongly corroborated”.
ON THE CATCH LISTA completed hands-on test is a further kind of evidence, and the only one a person supplies. One recorded measurement stands on its own, labelled “Measured in our test”. Where a test's measurement contradicts a finding, that finding stops counting and stays on the page with both sides shown.
At least 50 reviews must be analyzed before the review side of the assessment gate is satisfied.
At least one package, resource, manifest, store-metadata, or privacy source must actually yield coverage.
If either input is missing, findings can still appear — and the page says which input we did not have.
Each charge has its own bar. Our pattern-matching counts reviewers whose words match a charge; not all of them are actually asserting it. So we measured, per charge, how many matched reviews really assert the harm, and divided our base bar — 25 genuine reporters and 2% of at least 500 reviews read — by that share. A charge whose patterns over-match needs proportionally more reviewers. A published “Reported by N users” names the reviewers, their share and the sample on one store's reviews, and all three clear that charge's row. Each charge also has a lower floor, in the first column: below it, review evidence for the charge is not shown at all, and between the floor and the bar it is shown as “One source only”.
| Charge | Reviewers needed to be shown at all | Matched reviews that assert it | Reviewers needed | Share needed | Reviews scanned, at least |
|---|---|---|---|---|---|
| Upgrade prompts use guilt-trip wording | 5 | 32 of 32 | 25 | 2.00% | 500 |
| Hard to cancel | 5 | 31 of 32 | 26 | 2.07% | 500 |
| Paywall blocks the basics | 5 | 31 of 32 | 26 | 2.07% | 500 |
| Price keeps rising | 5 | 31 of 32 | 26 | 2.07% | 500 |
| Aggressive ad load | 5 | 122 of 129 | 27 | 2.12% | 500 |
| Pay to progress | 5 | 63 of 69 | 28 | 2.20% | 500 |
| Progress pauses until you wait or pay | 5 | 29 of 32 | 28 | 2.21% | 500 |
| Reports that the ads misrepresent the app | 5 | 29 of 32 | 28 | 2.21% | 500 |
| Paywall with no way past it | 5 | 27 of 32 | 30 | 2.38% | 500 |
| Trial converts to a charge | 5 | 27 of 32 | 30 | 2.38% | 500 |
| Reports of unexpected charges | 20 | 26 of 32 | 31 | 2.47% | 500 |
| Tracking and data collection concerns | 5 | 83 of 101 | 31 | 2.44% | 500 |
| Countdown-timer purchase pressure | 23 | 10 of 19 | 48 | 3.80% | 500 |
Recurring pain points are tallied across distinct authors. A published theme needs repeated support, and all reviews together still count as one source kind.
We extract SDK signatures, permissions, billing components, trackers, and shipped copy from the app package. The binary is discarded after derived evidence is recorded.
Store prices, subscription periods, privacy labels, and developer claims are compared with the app-side evidence without laundering reviews into a second source.
The fusion layer labels every finding by how much evidence is behind it and publishes it with that evidence, the app version and the rules version. The band row is computed from the same measurements each time the catalogue is exported.
The mass path needs no model calls. When a model is used, it may veto a candidate, or report an observation whose quote we verify word-for-word against the app's own text and discard if it is not there. It never decides what the text means.
A collector counts only when it observed the material it was meant to inspect. A failed package download never becomes “no trackers found.”
Corrections to objective facts are free. A hands-on test, paid for or not, enters as evidence under the same published rules, and it can go against the app as readily as for it.
An app can be technically great and still treat you unfairly — and an app you'd never personally choose can still be scrupulously fair. They're not the same question. A band is a published measurement, not a recommendation or a quality rating.