DEV Community

Northgrid Data
Northgrid Data

Posted on

Find which app version broke things: group App Store 1-star reviews by version in 20 lines

Disclosure: I built the Apify Actor linked at the end and charge per result. The feed below is Apple's public one and needs no key.

Apple's public reviews feed includes im:version on every review, which makes regression-spotting easy: count low-star reviews per app version.

const id = "389801252", cc = "us";
const counts = {};
for (let p = 1; p <= 10; p++) {
  const r = await fetch(`https://itunes.apple.com/${cc}/rss/customerreviews/page=${p}/id=${id}/sortby=mostrecent/json`);
  const entries = (await r.json()).feed.entry ?? [];
  if (!entries.length) break;
  for (const e of entries) {
    if (!e["im:rating"]) continue;            // skip the app's own entry
    const v = e["im:version"].label;
    counts[v] ??= { n: 0, low: 0 };
    counts[v].n++;
    if (+e["im:rating"].label <= 2) counts[v].low++;
  }
  await new Promise(r => setTimeout(r, 1000));
}
console.table(counts);
Enter fullscreen mode Exit fullscreen mode

A version whose low-star share jumps versus the previous one is your suspect. Read its review texts next.

Caveats

  • The feed only exposes the latest ~500 reviews per app per country, so old versions have thin samples.
  • Run it per storefront; one country is not the whole picture.

Hosted version

Multi-country sweep, star filter, and incremental mode (only new reviews each scheduled run), pay per result: https://apify.com/northgrid-data/app-store-reviews-multi-country

Feedback welcome in the Actor's issues.

Top comments (0)