DEV Community

How to pull App Store reviews via Apple's official RSS feed (no API key)

If you've ever needed Apple App Store reviews outside of App Store Connect, you've
probably run into two dead ends. App Store Connect only shows reviews for apps you
own, and it's not built for exporting into a spreadsheet or a dashboard. And most
"App Store review scrapers" parse the store's HTML — which quietly breaks every time
Apple changes the page markup. Neither is a good foundation to build on.

There's a third option most people don't know about: Apple publishes customer
reviews through an official RSS/JSON feed. It's a plain, public HTTP endpoint — no
authentication, no API key, no App Store Connect access. The URL looks like this:

https://itunes.apple.com/us/rss/customerreviews/page=1/id=310633997/sortby=mostrecent/json
Enter fullscreen mode Exit fullscreen mode

Three parts matter. The country code (us, gb, de, jp, br, ...) selects
which storefront's reviews you get — reviews are localized per country, which is why
the same app has a different review stream in each market. The id is the app's
numeric App Store id — if you only have the store URL
(https://apps.apple.com/us/app/whatsapp-messenger/id310633997), the id is the
number right after id. And page paginates: each page returns up to 50 reviews,
and Apple serves up to 10 pages, so the practical ceiling is about 500 recent
reviews per country
. Swap /json for the default and you get Atom XML instead;
the JSON variant is friendlier to parse.

Each review entry gives you the fields you actually want for analysis: the star
rating (im:rating), the title and body text, the app version the review was left
on (im:version), and helpful-vote counts (im:voteSum / im:voteCount). That
app-version field is the underrated one — it lets you group reviews by build and
answer the question every product team asks after shipping: did this release make
things better or worse?
One caveat to know going in: the very first entry in the
feed is sometimes app metadata rather than a review, so filter for entries that
actually have a rating and a review id before you treat them as reviews. A couple of
practical notes: throttle your requests (a short delay between pages is polite to
itunes.apple.com), and dedup by review id if you pull multiple countries, since a
few ids can repeat across storefronts.

Be clear-eyed about what this feed is and isn't. It is a stable, official, no-auth
source of fresh reviews across every country's storefront. It is not a full
historical archive — ~500 recent reviews per country is the hard limit Apple gives
you, and no amount of clever pagination gets past it. For the most common job —
monitoring sentiment and bug reports per release, across markets, on a schedule —
that freshness is exactly what you want. For a complete multi-year export, this
isn't the right source, and it's better to know that before you build on it.

If you'd rather not write the fetch/paginate/dedup/normalize loop yourself, I
packaged all of this into an Apify Actor:
app-store-reviews-scraper.
You paste an app id or URL, pick your countries, and it returns normalized rows
(rating, title, text, app version, helpful votes, country, date) as JSON/CSV/Excel,
with an API and MCP support if you want an AI agent to call it. It's pay-per-review
with no start fee. But honestly, the endpoint above is public — if you just needed
to know it exists, go build it. That's the point of this post.

Top comments (0)