Google Play Rating & Review Tracker avatar

Google Play Rating & Review Tracker

Pricing

Pay per event

Go to Apify Store
Google Play Rating & Review Tracker

Google Play Rating & Review Tracker

Track any Google Play app's rating and review count over time. Because Play reports the average to full precision, this Actor recovers the average of the reviews that arrived since your last run — and warns you when new reviews run well below the app's norm. No login, no cookies.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Northbell

Northbell

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Track any Google Play app's rating and review count over time, and get the thing a one-off scrape cannot give you: the average of the reviews that arrived since you last looked, and a warning when new reviews run well below the app's norm. No login, no cookies.

The number that goes stale the moment you read it

An app showing 4.3 stars from 36 million ratings tells you where it has been. It says nothing about which way it is moving right now. A wave of 1-star reviews after a bad update barely dents a 36-million average — the headline number keeps saying 4.3 while users are furious.

A rating cannot be back-filled. There is no endpoint that tells you what an app's rating was last Tuesday, or what the reviews that came in yesterday averaged. If you did not record it, that day is gone. This Actor records it and keeps the series:

com.example.app — 4.314.294.24 over three days
day 3: +812 new ratings, averaging 2.1 ⚠ well below the app's 4.24 norm

The trick Google Play makes possible

Play reports an app's average to full precision4.343131065368652, not a rounded 4.3. Combined with the exact rating count, two observations are enough to recover the average of everything that landed between them:

new-reviews average = (count×avg now − count×avg last time) ÷ (new ratings)

So without reading a single review body, you learn that the 812 ratings added since yesterday averaged 2.1 — and that is a fire alarm a static 4.24 would never trip.

It refuses to guess when it can't. On a 36-million-rating app, three new ratings move the average by less than the precision allows, so the recovered figure would be noise. When that happens newRatingsAverageReliable is false and the Actor does not pretend. A number without that flag is a number that will eventually lie to you.

What you get

Every run appends to your dataset. Rows are tagged by type.

app — one row per app:

fieldmeaning
averageRating, ratingCountthe app's overall rating and how many ratings, right now
installs, category, price, developerthe listing
ratingsAddedSinceLastRunhow many ratings arrived since you last ran
newRatingsAveragethe average of just those new ratings
newRatingsAverageReliable, newRatingsAverageErrorBoundwhether that figure can be trusted, and its margin
ratingDropAlert, ratingDropGapset when new reviews run a full star or more below the app's norm — even after the error margin is subtracted
firstSeenAt, observations, hoursSinceLastRunyour own series
removedthe app is gone from that country's store — recorded, not treated as an error

Runs daily

Point it at your app (and your competitors' apps) and run it once a day. The first run is a baseline; from the second run on you get velocity and alerts. History lives in a named key-value store, so it survives between runs.

No login. Not as a policy — as a property of the code.

This Actor reads only the public Play Store page an anonymous visitor sees. It never signs in and never sends a cookie; the input schema refuses any field that looks like cookie, token, session or password. Unit tests assert the no-login behaviour and the recovery maths.

Two things it gets right

A removed app is data, not a failure. When an app 404s, the Actor records removed: true with the last rating it saw — that is the end of the app's life in that store, which is exactly what you were watching. It does not fail the run.

It never ends green and empty. If every app fails to load, the run is marked failed with an error row you will actually see — because a silent empty result is the worst outcome for something you check once a day.

Input

{
"appIds": ["com.spotify.music", "com.duolingo"],
"country": "US",
"language": "en"
}

Paste a full Play Store URL instead of a package name and the id is taken from it. Ratings differ by country store, so set country to the market you care about.

Sizing and cost

One request per app. Pay per event:

eventwhen
Actor startonce per run
App checkedone app's rating recorded (a removed or errored app is not charged for the check)

On data and privacy

This Actor records an app's public numbers — rating, review count, installs. It does not read, store or return reviewer names, profiles or review text. The persistent history holds counts and dates only.

Running locally

npm install
npm test # 22 unit tests, no network, including the no-login guarantee and the recovery maths

For AI agents

This Actor works well as an agent tool: the input schema is small and fully described, every run returns structured rows, and failures come back as data rather than silent gaps. Use it when you need to:

  • track a Google Play app's rating and review count over time
  • get the average rating of new Google Play reviews since the last run
  • detect when new reviews of an Android app run well below its normal rating

More no-login scrapers by northbell

Every one of these reads only public pages — no login, no cookies — and most of them record the numbers that cannot be back-filled if you don't capture them today.

LinkedIn jobs

LinkedIn companies

App stores