7-day Trial

Google Play scraper with ratings, installs and reviews in one request

Paste any Google Play app and pick a country. Web Unlocker returns the exact rating and installs behind "4.7" and "500M+", version, price and 20 reviews with the developer's replies. $0.98 per 1,000 apps.

Try:

1,000 free requests · Pay only on success · 195+ countries · Claude ready

play.google.com/store/apps/details?id=com.duolingoExample run · 20 reviews · billed as 1 page · 3.6 s
Download
  1. Opening the app page from the country you picked
  2. Loading it the way a visitor's browser does
  3. Reading the app data and its reviews

Google Play pages take 3 to 10 seconds. It is still working, no need to click again.

Ready for your own apps? Get an API key or book a demo.

Get your API key and free requests

Tell us a little about your team and get:

  • API key within one business day
  • Free requests on your own targets
4.7 / 5 on G2from 79 reviews
Book a demo

No card. Cancel anytime. We reply within one business day.

What the Google Play scraper returns

Google Play rounds what it shows: "4.7", "500M+". The page underneath holds the exact numbers, and one request returns them with 20 reviews. No Google account needed.

Try it with 1,000 free requests

  1. Google Play app scraper

    play.google.com/store/apps/details?id=com.duolingo
    Google Play shows 4.74.746255Rating, from 51,795,545 ratings
    Google Play shows 500M+995,744,335Installs, to the last one
    5
    43.4M
    4
    5.9M
    3
    1.2M
    2
    351.7K
    1
    958.3K
    • #1 top free education
    • In-app $0.99 - $239.99
    • Contains ads
    • Rated Everyone
    • Updated Nov 9, 2026
    • Released May 29, 2013
    • Description
  2. Google Play review scraper

    play.google.com/store/apps/details?id=com.einnovation.temu
    Dianna F
    Sep 17, 2026 · version 4.84.0

    love the app I've always had good experiences with Temu. whenever I've had a problem with any item they've always rectified it extremely quickly and to my satisfaction so give him a shot they were pretty good in fact some of the items that I've shopped on this app I've seen in another shopping app that it's much more expensive in that other one

    4,149 people found this review helpful

    Temu replied · Oct 26, 2026

    Hi, thanks for shopping with us and sharing your 5-star experience! We are so glad you've been enjoying your experience so far. Customer satisfaction is of the utmost importance and we are constantly working to improve our service quality.

  3. Google Play search scraper

    play.google.com/store/search?q=meditation&c=apps
    1. Insight Timer
    4.7
    2. Medito
    4.8
    3. Headspace
    4.2
    Calm
    #7 US · #4 Australia

    Same app, two countries

    play.google.com/store/apps/details?id=com.spotify.music&gl=DE
    Spotify · US
    4.35
    Spotify · Germany
    4.17
    Minecraft · US
    $6.99
    Minecraft · Germany
    6,99 €
  4. Data safety and developer pages

    play.google.com/store/apps/datasafety?id=com.duolingo

    Duolingo may collect

    • Purchase history
    • App interactions
    • Contacts
    • Name
    • Email address
    • User IDs
    • Phone number
    • Crash logs
    • Diagnostics
    • Device IDs
    Shares
    App activity, device IDs
    In transit
    Encrypted
    Deletion
    On request

Track 1,000 Google Play apps for $0.98

One request brings an app's whole page: rating, installs, version, price and 20 reviews. Web Unlocker bills it as one page. Apify and Bright Data bill the app and each of its reviews as a row, and SerpApi bills each search.

One app with 20 reviews is 21 rows on Apify.
Here it is one page.

A page that fails to load costs nothing. The same app from another country, its data safety page or a keyword search is one more page.

What 1,000 apps with 20 reviews each cost

1,000 app pages, details plus 20 reviews, at published prices

  • $0.98Gologin Web Unlocker
  • $2.90Google Play Store Scraper (Apify based)
  • $6.30Google Play Scraper (Apify based)
  • $25SerpApi Google Play API
  • $31.50Bright Data Google Play Scraper API

Gologin: $0.98 per 1,000 pages on the Growth plan. Apify: 1,000 app rows and 20,000 review rows, at $0.0007 and $0.00011 a row on one actor and $0.30 per 1,000 results on the other. SerpApi: 1,000 app searches on its $25 plan. Bright Data: 21,000 records at $1.50 per 1,000, pay as you go.

Ready to run it on your own apps? Get your API key and free requests.

88 of 88 Google Play pages came back

Our Google Play scraping test, run twice an hour apart: 10 US apps three times each, 3 German apps, 2 keyword searches and 2 data safety pages, each asked up to 3 times like the demo above.

78 of 88 came back on the first try.
The other 10 on the second or third.

Compare Google Play scraper APIs and the free library

The open-source google-play-scraper library, Apify's Google Play actors and Bright Data's Google Play Scraper API: what each costs for the same 1,000 apps, and what it leaves to you.

Billing unit, price for 1,000 apps with 20 reviews, reviews per app, keyword search, free start, the whole page and the same price on other sites in Gologin Web Unlocker, the google-play-scraper library, Apify and Bright Data
What it takesWeb Unlockergoogle-play-scraperApifyBright Data
You pay forA pageYour own serversEach rowEach record
1,000 apps with 20 reviews$0.98Free, from your IPs$2.90 to $6.30$31.50
Reviews per app20; more with Cloud BrowserPaged, 200 a callUp to 100,000As many as you set
Search by keywordYesYesYesNo
Free to start1,000 requestsFree$5 a month5,000 a month
The whole page in HTMLYesNoNoNo
Same price on any other siteYesGoogle Play onlyNoNo

Scraping more than Google Play? Web Unlocker returns any page the same way, at the same price.

Need every Google Play review? Add Cloud Browser

Web Unlocker returns the 20 reviews an app page holds; the rest sit in Google's review feed. Cloud Browser, a separate Gologin product with its own plans, calls that feed from the app page: 2,000 of Duolingo's newest reviews in 4.5 seconds.

  • Only if 20 is not enough

    Ratings, installs, prices, search ranks and the top 20 reviews all come from Web Unlocker alone. Cloud Browser is for the full review history.

  • 2,000 reviews in 5 seconds

    From the open app page, Cloud Browser asks Google's feed for 100 reviews at a time, newest first: 20 calls, 2,000 reviews, 4.5 seconds.

  • Its own product and plans

    Cloud Browser is not part of Web Unlocker requests. Your Playwright or Puppeteer code, or Claude, drives it. Residential IPs included.

Run it from Playwright, Puppeteer or Claude. See Cloud Browser.

How to scrape Google Play with Python or Node.js

Google Play keeps an app's data as JSON inside its page, the same JSON the open-source google-play-scraper reads. Web Unlocker returns that page from the country you pick, and a few lines read the app, its 20 reviews or a keyword's search results out of it.

  1. Step 01

    Get your API key

    Fill in the form above. The key arrives by email within one business day.

  2. Step 02

    Pick the page

    An app page for its details and reviews, a search page for rankings, a data safety page for what the app collects.

  3. Step 03

    Read the JSON

    Cut the app's data out of the page, and ask again at a fresh address when the page came without it.

Install
pip install requests
Run
GOLOGIN_SCRAPING_API_KEY=your_key python google_play_app.py
Sends to
https://parsing.webunlocker.gologin.com/v1/scrape
import json
import os
import re
import time
from datetime import datetime, timezone

import requests

app_id = "com.duolingo"
country = "us"


def scrape(url):
    for attempt in range(3):
        address = url if attempt == 0 else f"{url}&fresh={int(time.time())}"
        response = requests.get(
            "https://parsing.webunlocker.gologin.com/v1/scrape",
            params={"url": address, "geo": country, "format": "json"},
            headers={"apikey": os.environ["GOLOGIN_SCRAPING_API_KEY"]},
            timeout=90,
        )
        page = response.json().get("data", {}).get("html", "") if response.ok else ""
        if "key: 'ds:5'" in page:
            return page
        time.sleep(3)
    raise RuntimeError("The page came back without the app data, try again later")


def blocks(page):
    for key, data in re.findall(r"AF_initDataCallback\(\{key: '(ds:\d+)'.*?data:(.*?), sideChannel: \{\}\}\);</script>", page, re.S):
        yield key, json.loads(data)


def at(node, *path):
    for step in path:
        if not isinstance(node, list) or step >= len(node):
            return None
        node = node[step]
    return node


def day(stamp):
    return datetime.fromtimestamp(stamp[0], timezone.utc).date().isoformat() if stamp else None


page = scrape(f"https://play.google.com/store/apps/details?id={app_id}&hl=en&gl={country.upper()}")
data = dict(blocks(page))
d = at(data["ds:5"], 1, 2)
reviews = next(
    (value[0] for value in data.values() if isinstance(at(value, 0, 0, 0), str) and re.match(r"^[0-9a-f]{8}-", at(value, 0, 0, 0))),
    [],
)

app = {
    "id": app_id,
    "title": at(d, 0, 0),
    "developer": at(d, 68, 0),
    "genre": at(d, 79, 0, 0, 0),
    "rating": at(d, 51, 0, 1),
    "ratings": at(d, 51, 2, 1),
    "installs": at(d, 13, 0),
    "installs_exact": at(d, 13, 2),
    "price": (at(d, 57, 0, 0, 0, 0, 1, 0, 0) or 0) / 1e6,
    "currency": at(d, 57, 0, 0, 0, 0, 1, 0, 1),
    "version": at(d, 140, 0, 0, 0) or "Varies with device",
    "updated": at(d, 145, 0, 0),
    "reviews": [
        {
            "author": at(review, 1, 0),
            "stars": at(review, 2),
            "text": at(review, 4),
            "date": day(at(review, 5)),
            "helpful": at(review, 6),
            "app_version": at(review, 10),
            "reply": at(review, 7, 1),
        }
        for review in reviews
    ],
}

print(json.dumps(app, indent=2, ensure_ascii=False))
print(f"{app['title']}: {app['rating']:.2f} from {app['ratings']:,} ratings, {app['installs_exact']:,} installs, {len(app['reviews'])} reviews from one page")

Ready to run it on your own apps? Get your API key and free requests.

Part of the complete tech stack

One account, one proxy network, one ecosystem. Pick the product the job needs.

Scraping more sites? See the YouTube, Reddit and Instagram scrapers, or every web scraping tool.

Google Play scraper FAQ

What is a Google Play scraper?

A Google Play scraper, or Play Store scraper, is a tool that reads public Google Play pages and turns them into data: an app's rating, installs, version, price and reviews, or the apps a keyword search shows. Gologin's Google Play scraper API is Web Unlocker: send it an app's address and it returns the page with that data, at $0.98 per 1,000 pages.

How do I scrape Google Play?

To scrape the Google Play Store, send the app's address, play.google.com/store/apps/details?id= and the package name, to Web Unlocker with the country you want. It returns the page the way a visitor's browser loads it, with Google Play's own JSON inside: the app's details and its 20 top reviews. The code above reads it in a few lines.

How do I scrape Google Play reviews?

Every app page carries 20 reviews with stars, text, date, helpful votes, the app version and the developer's reply, and Web Unlocker returns them with the app. Each country and language shows its own 20. For more than 20, add Cloud Browser, a separate Gologin product with its own plans: from the app page it calls Google's review feed 100 reviews at a time, newest first, and returned 2,000 of Duolingo's newest reviews in 4.5 seconds in our test.

Does Google Play have an API for app data?

Not for other developers' apps: there is no public Google Play Store API for them. The Google Play reviews API, part of the Google Play Developer API, works only for your own apps and returns reviews from the last week. Rating, installs, price and reviews of any other app are on its public Google Play page, which is what a Google Play scraper reads.

How do I build a Google Play scraper in Python?

Send the app's address to Web Unlocker with the requests library and read Google Play's JSON from the page. The Python tab above is a complete script, tested on the live API: it prints the app's rating, ratings count, exact installs, version, price and 20 reviews.

How is it different from the google-play-scraper library?

The google-play-scraper libraries for Node.js and Python are free and read the same JSON from your own server. The Node.js author no longer maintains it and warns that it breaks when Google Play changes its pages, and heavy use from one IP gets 503 error pages for about an hour. Web Unlocker loads each page from a residential IP in the country you pick, and a page that fails costs nothing.

What data can I scrape from Google Play?

An app page gives the title, developer, genre, exact rating, ratings count, the count for each star, installs, price and currency, in-app price range, ads, version, update and release dates, content rating, chart place, screenshots and 20 reviews. A search page gives the apps in Google Play's order, and a data safety page what the app collects and shares.

What is Google Play data used for?

App store optimization teams track where apps rank for a keyword in each country. Publishers watch rivals' ratings, installs, versions and prices day by day. Product and research teams read reviews for complaints and feature requests, and analysts size markets from installs and charts. The code above saves it as JSON or CSV.

Can I get the exact number of installs?

Yes. Google Play shows a rounded figure such as 500M+, and keeps the exact count in the page's data: 995,744,335 for Duolingo on 11 November 2026. Web Unlocker returns both.

Can I scrape Google Play search results?

Yes. A keyword search page returns the apps in the order Google Play shows them, 21 to 30 for "meditation" in our test, each with its ID, title, rating, genre and price. Run the same search in several countries to see where an app ranks in each: in the Rank by country tab above, Calm is #7 in the US, #6 in Germany and #4 in Australia.

Can I scrape Google Play from other countries?

Yes. The demo offers 10 countries and the API takes any of 195+. Each country sees its own rating, prices in its own currency and reviews in its own language: Spotify is 4.17 in Germany and 4.35 in the US.

How much does a Google Play scraper cost?

$0.98 per 1,000 pages, the same for every page: an app with its 20 reviews is one page, a search is one page. A request that fails costs nothing. Plans start at $49 a month for 50,000 requests.

Is there a free Google Play scraper?

Web Unlocker comes with 1,000 free requests, enough for 1,000 apps with their reviews. The open-source google-play-scraper libraries are free too: they run on your own servers and IPs, and keeping them working as Google Play changes is up to you.

Do I need proxies to scrape Google Play?

Not with Web Unlocker: it brings residential IPs from 195+ countries and picks one for every request. If you run your own scraper, Gologin Proxies are the same network.

Can AI agents use the Google Play scraper?

Yes. Claude and other agents call Web Unlocker like any API, and MCP & AI Skills turn a plain request, such as "compare these five apps' ratings in Germany", into a working tool.

Is it legal to scrape Google Play?

App pages, reviews and search results on Google Play load without a Google account: they are public pages. What you collect and how you use it is your call, so check it against the rules that apply to your project, especially for reviewers' names.

Get your API key and free requests

Tell us a little about your team and get:

  • API key within one business day
  • Free requests on your own targets
4.7 / 5 on G2from 79 reviews
Book a demo

No card. Cancel anytime. We reply within one business day.