Google Play Scraper - Rankings, Reviews & App Details avatar

Google Play Scraper - Rankings, Reviews & App Details

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Google Play Scraper - Rankings, Reviews & App Details

Google Play Scraper - Rankings, Reviews & App Details

Google Play scraper & API: export top-chart rankings by category & country, app reviews & ratings, full app details and ASO keyword search. Android app market intelligence, review analysis and competitor tracking β€” fast, no login. Pairs with an Apple App Store scraper.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

47

Total users

4

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

Apify Actor Google Play

Scrape Google Play data as clean, structured JSON β€” top-chart rankings by category and country, fully-paginated app reviews, complete app details, and keyword search. This Google Play scraper turns the Play Store into a structured dataset: pull the Top Free / Top Paid / Top Grossing charts for any of 50+ markets, extract every public review for an app, grab full app metadata (installs, ratings, histogram, full description, pricing, developer contact) and run keyword searches for ASO β€” no login, no coding, no headless browser.

Export to JSON, CSV, Excel, or API.

🧭 Built for ASO specialists, app marketers, product managers, competitive-intelligence analysts, investors, and data/AI teams who need reliable, localized Google Play data at scale.


⚑ At a glance

FeatureDetails
Target WebsiteGoogle Play Store β€” Android apps, games, top charts & user reviews
4 Extraction Modesrankings (Top Free/Paid/Grossing), reviews (cursor-paginated), appDetails (full metadata), search (ASO keywords)
Core Data ExtractedApp ID, title, rank, installs, score, 1–5β˜… histogram, full description, developer email/website/address, IAP/price, reviews
Pagination & ScaleMulti-category chart & keyword expansion + deep review cursor pagination for 1,000+ unique records
Localization50+ countries (gl) and 30+ languages (hl) built into dropdown selectors
Export FormatsJSON, CSV, Excel (XLSX), XML, HTML table, RSS, and direct Apify REST API / Webhooks

πŸ“‹ Table of contents


πŸ”Ž Why scrape Google Play?

Google Play is the largest app marketplace on earth β€” millions of apps, billions of installs, and a live stream of reviews and ranking movements. That data is gold for app store optimization (ASO), competitive research, and product decisions: which apps are climbing the charts, how a competitor is rated, what users complain about, how a title is positioned in its description, and how it all differs market by market.

The problem is that Google Play has no public API for most of this. The data lives in server-rendered JSON and an internal RPC, rankings are paginated and localized, and reviews sit behind a cursor-based endpoint that returns a few at a time. Collecting it by hand β€” opening pages, scrolling reviews, copying installs and ratings per country β€” is slow, error-prone, and impossible to keep fresh daily.

This Google Play scraper does it for you: it adds Apify proxy rotation and bounded concurrency on top of a battle-tested parsing core, and fully paginates reviews with no artificial cap β€” the single thing most Play scrapers get wrong. You get clean, typed records ready for a dashboard, a database, or an AI pipeline. A fresh benchmark run pulled the live US Top Free chart β€” 200 apps in ~141 seconds, 0 duplicates, 100% core-field coverage β€” and a review run returned 400 de-duplicated reviews for a single app across multiple cursor pages.

Common reasons people scrape Google Play:

  • πŸ“ˆ Track top-chart rankings daily per category and country (a low-cost Sensor Tower / data.ai alternative).
  • πŸ’¬ Analyze reviews at scale for sentiment, bug reports, and feature requests β€” yours and your competitors'.
  • πŸ”‘ Run ASO keyword research β€” see which apps rank for a term and read their full descriptions and metadata.
  • 🏒 Benchmark competitors on installs, ratings, monetization (IAP, price), and content rating.
  • πŸ’Ό Build market-intelligence feeds for investment, M&A, and category research.
  • πŸ€– Create training datasets for review-sentiment models and app-ranking analytics.
  • 🌍 Compare markets β€” the same app's rank, price, and reviews across 50+ countries.

✨ What this Google Play scraper does

One actor, four modes β€” pick what you need and run:

  • βœ… πŸ† Rankings mode β€” the Top Free / Top Paid / Top Grossing charts for any category and country, each app tagged with its rank position (up to ~200 apps per chart β€” Google Play's full server-side ceiling for a chart). A Sensor-Tower-style market-intelligence feed: any category Γ— any country Γ— any chart.
  • βœ… πŸ’¬ Reviews mode β€” every public review for an app, fully paginated (sort by newest / rating / helpfulness), with rating, review text, date, thumbs-up count, app version, and the developer's reply.
  • βœ… πŸ“‹ App details mode β€” complete app metadata: rating, ratings & reviews counts, the 1–5 star histogram, installs, price and IAP, the full app description, developer name/email/website, category, content rating, version, release/update dates, screenshots and more.
  • βœ… πŸ”Ž Search mode β€” apps for a keyword (ideal for ASO and keyword-rank tracking), each enriched with full details.

Plus:

  • βœ… Automatic pagination that collects large, de-duplicated result sets β€” hundreds of ranked apps, or thousands of reviews across multiple apps.
  • βœ… Rich captured fields grouped by record type (named in the Output section): identity (appId, title, url), marketing/ASO (summary, description, descriptionHTML), ratings (score, ratings, reviews, histogram), popularity (installs, minInstalls, maxInstalls), monetization (price, free, currency, offersIAP, IAPRange, adSupported), developer/contact (developer, developerId, developerEmail, developerWebsite, developerAddress), and classification (genre, categories, contentRating, version, released, updated).
  • βœ… Localization β€” every result respects country (gl) and language (hl); 50+ countries and 30+ languages are pre-listed in the input.
  • βœ… Speed & reliability β€” API-first (no browser), pooled keep-alive proxy connections with rotating exit IPs, bounded concurrency, per-item error isolation, and a time-budget guard that saves partial results instead of timing out.
  • βœ… Export to JSON, CSV, Excel, XML, or HTML, or pull straight from the Apify API.

Only features the code actually implements are claimed above.


🎯 Use cases

  • πŸ“ˆ ASO & app marketing β€” monitor chart rankings and keyword positions daily; mine full app descriptions and metadata to tune your own listing.
  • πŸ’¬ Review mining / product teams β€” pull the complete review stream for your app and rivals to surface bugs, feature requests, and sentiment trends.
  • 🏒 Competitive intelligence β€” compare installs, ratings, histograms, pricing, and IAP strategy across a category.
  • πŸ’Ό Investment & M&A research β€” see who's climbing the Top Grossing charts in a market before anyone else.
  • 🌍 Localization & market entry β€” compare a title's rank, price, and reviews across 50+ countries to plan a launch.
  • πŸ”Œ Lead generation β€” collect developer email, website, and address for apps in a niche or category.
  • πŸ€– Data & AI β€” build app datasets and review-sentiment corpora for models and dashboards.
  • πŸ“Š Agencies & reporting β€” schedule recurring runs and feed Google Sheets, BigQuery, or a BI tool via the API.

πŸ“₯ Input

Configure everything from the Apify Console form β€” or pass a JSON input via the API. All fields are optional; an empty run returns a useful, diverse sample so you can see the shape instantly.

FieldTypeDescription
modestringWhat to scrape: rankings, reviews, appDetails, or search. Default rankings.
collectionstringRankings chart: TOP_FREE, TOP_PAID, or GROSSING. Default TOP_FREE.
categorystringRankings category, e.g. APPLICATION (all apps), GAME (all games), SOCIAL, FINANCE, PHOTOGRAPHY, GAME_ACTION. Default APPLICATION.
searchTermsarrayKeywords for Keyword search mode, e.g. ["photo editor", "budget"].
appIdsarrayApp package names (e.g. com.whatsapp) or full Play Store URLs β€” for reviews and appDetails modes.
maxReviewsPerAppintegerReviews to pull per app (fully paginated; Google serves up to ~4,500 per app). Default 200.
reviewsSortstringReview order: NEWEST, RATING, or HELPFULNESS. Default NEWEST.
countrystringMarket / gl code β€” 50+ supported, e.g. us, gb, de, tr, in, br, jp. Default us.
languagestringLanguage / hl code for titles, descriptions, reviews β€” 30+ supported. Default en.
fullDetailbooleanEnrich each ranked/found app with complete details (installs, histogram, full description, version…). Default true. Turn off for a faster, lighter rank-only list.
maxItemsintegerCap total records (apps or reviews). 0 = no limit. Default 0.
proxyConfigurationobjectProxy settings. Default Apify Proxy is fine; RESIDENTIAL helps on very large review pulls.
maxConcurrencyintegerMax apps processed in parallel. Default 12 (max 20).

Input examples

1) Top free apps in the US

{
"mode": "rankings",
"collection": "TOP_FREE",
"category": "APPLICATION",
"country": "us",
"maxItems": 200
}

2) Top grossing games in Germany

{
"mode": "rankings",
"collection": "GROSSING",
"category": "GAME",
"country": "de"
}

3) All reviews for two apps, newest first

{
"mode": "reviews",
"appIds": ["com.whatsapp", "com.spotify.music"],
"maxReviewsPerApp": 1000,
"reviewsSort": "NEWEST",
"country": "us"
}

4) Full app details

{
"mode": "appDetails",
"appIds": ["com.instagram.android"]
}

5) Keyword search (ASO)

{
"mode": "search",
"searchTerms": ["photo editor", "budget tracker"],
"country": "us"
}

πŸ“€ Output

Every record is a flat JSON object. A recordType field tells you what it is: rankedApp (rankings mode), app (search / app-details), or review (reviews mode). Results stream to the dataset as they're scraped and can be exported to JSON, CSV, Excel, XML, or HTML, or read via the Apify API.

App / ranked-app record (full metadata when fullDetail is on):

{
"recordType": "rankedApp",
"rank": 1,
"collection": "TOP_FREE",
"rankCategory": "APPLICATION",
"country": "us",
"appId": "com.facebook.aura",
"title": "Muse from Meta",
"url": "https://play.google.com/store/apps/details?id=com.facebook.aura&hl=en&gl=us",
"summary": "Your personal AI agent",
"description": "Muse is your personal AI agent that gets things done, always working on what matters to you. It manages email, ...",
"descriptionHTML": "Muse is your personal AI agent that gets things done...",
"developer": "Meta Platforms, Inc.",
"developerId": "Meta+Platforms,+Inc.",
"developerEmail": "facebook.android@fb.com",
"developerWebsite": null,
"score": 4.724825,
"scoreText": "4.7",
"ratings": 132512,
"reviews": 20904,
"histogram": { "1": 4459, "2": 1337, "3": 2820, "4": 8967, "5": 114924 },
"installs": "5,000,000+",
"minInstalls": 5000000,
"maxInstalls": 7949137,
"price": 0,
"free": true,
"currency": "USD",
"priceText": "Free",
"available": true,
"offersIAP": true,
"IAPRange": "$0.99 - $1,049.00 per item",
"adSupported": false,
"isAvailableInPlayPass": false,
"genre": "Productivity",
"genreId": "PRODUCTIVITY",
"categories": [{ "name": "Productivity", "id": "PRODUCTIVITY" }],
"contentRating": "Teen",
"contentRatingDescription": "Diverse Content: Discretion Advised",
"androidVersion": "10",
"version": "14.0.0.4.149",
"released": "Aug 31, 2026",
"updated": 1793355852000,
"icon": "https://play-lh.googleusercontent.com/qDQUfohqN-eZh_a_YuWYlTsBPwjg...",
"screenshots": ["https://play-lh.googleusercontent.com/R7pQ9kQjhDBbsreE7p2M4D91...", "..."],
"privacyPolicy": "https://muse.ai/privacy",
"editorsChoice": null,
"scrapedAt": "2026-11-01T23:34:59.730Z"
}

Review record:

{
"recordType": "review",
"appId": "com.whatsapp",
"reviewId": "1adf3890-82a9-49be-b281-87b496ad8ba3",
"userName": "George Ibok",
"userImage": "https://play-lh.googleusercontent.com/a/ACg8ocKYZDHGtgDQwH4lBq4Dh2BQ...",
"score": 5,
"title": null,
"text": "very nice app",
"date": "2026-10-31T23:37:30.820Z",
"thumbsUp": 0,
"version": "2.26.42.74",
"replyText": null,
"replyDate": null,
"criterias": [],
"url": "https://play.google.com/store/apps/details?id=com.whatsapp&reviewId=1adf3890-82a9-49be-b281-87b496ad8ba3",
"country": "us",
"scrapedAt": "2026-11-01T23:38:02.103Z"
}

Field reference

App fields (recordType: "app" / "rankedApp"):

CategoryFieldCoverageDescription
🏷️ IdentityrecordType🟒 Highapp or rankedApp.
πŸ† Rankingrank / collection / rankCategory🟒 HighChart position and chart/category (rankings mode).
🏷️ IdentityappId🟒 HighPlay package name, e.g. com.whatsapp.
🏷️ Identitytitle / url / icon🟒 HighApp name, Play Store URL, icon image.
πŸ“ ASO & Copysummary🟒 HighShort tagline.
πŸ“ ASO & Copydescription / descriptionHTML🟒 HighFull app description text and HTML β€” present when fullDetail is on.
πŸ§‘β€πŸ’» Developer & Lead Gendeveloper / developerId🟒 HighDeveloper name and Play Store developer ID.
πŸ§‘β€πŸ’» Developer & Lead GendeveloperEmail / developerWebsite / developerAddress🟑 ConditionalDeveloper contact details (email, website, physical address).
⭐ Ratings & Reviewsscore / scoreText / ratings / reviews🟒 HighAverage rating, display string, total ratings count, total reviews count.
⭐ Ratings & Reviewshistogram🟒 High1–5 star rating breakdown object.
πŸ“ˆ Install Volumeinstalls / minInstalls / maxInstalls🟒 HighInstall tier label and exact numeric bounds.
πŸ’° Monetizationprice / originalPrice / discountEndDate / free / currency / priceText🟒 HighPricing; originalPrice/discountEndDate present during active promotions.
πŸ’° Monetizationavailable / offersIAP / IAPRange / isAvailableInPlayPass / adSupported🟒 HighAvailability, in-app purchase range, Play Pass status, ad support.
πŸ—‚οΈ Classificationgenre / genreId / categories🟒 HighPrimary genre and category array.
πŸ—‚οΈ ClassificationcontentRating / contentRatingDescription🟒 HighAge rating and content descriptors.
βš™οΈ Release & TechandroidVersion / version / released / updated / recentChanges🟒 HighAndroid OS requirement, current version, release/update dates, changelog.
πŸ–ΌοΈ Media & LinksheaderImage / screenshots / video / videoImage🟑 ConditionalStore graphic assets and promo video URLs.
🌐 MetadataprivacyPolicy / editorsChoice / country / scrapedAt🟒 HighPrivacy policy URL, Editors' Choice badge, market code, scrape timestamp.

Review fields (recordType: "review"):

CategoryFieldCoverageDescription
🏷️ IdentityappId / reviewId🟒 HighApp package and unique review ID.
πŸ‘€ RevieweruserName / userImage🟒 HighReviewer display name and avatar URL.
πŸ’¬ Review Contentscore / title / text / date🟒 HighStar rating (1–5), optional title, review text, ISO timestamp.
πŸ‘ EngagementthumbsUp / version🟒 HighHelpful votes count and app version reviewed.
🏒 Developer ReplyreplyText / replyDate🟑 ConditionalDeveloper response text and date when answered.
πŸ“Š Metadatacriterias / url / country / scrapedAt🟒 HighFeature sub-ratings, deep link, country code, scrape timestamp.

Fields marked "present when available / when fullDetail is on" populate only for records that carry them β€” e.g. description, developerEmail, and the histogram come from the full app-details fetch, while originalPrice appears only during a discount. This is normal Google Play data variability, not a gap.


πŸ” Pagination & scale

  • Rankings are fetched as a single localized list per chart/category and returned with their rank β€” up to ~200 apps per chart (Google Play's server-side ceiling for a chart; our fresh runs returned a full 200 for both the overall apps and games charts), each enriched in parallel.
  • Reviews are fully paginated: the actor walks Google's cursor (nextPaginationToken) page by page per app, with no artificial cap, until it reaches your maxReviewsPerApp or Google's per-app ceiling (~4,500). Across several appIds this easily yields thousands of de-duplicated reviews.
  • Search pulls results per keyword, then enriches each with full details.

You control scale with maxItems (total record cap; 0 = unlimited), maxReviewsPerApp, and maxConcurrency. A built-in time-budget guard stops gracefully just before the run would hit its timeout, so you always keep the records collected so far rather than losing them to a TIMED-OUT run.


βš™οΈ How to use

  1. Open the actor on the Apify Console and click Try for free / Start.
  2. Choose a mode:
    • Rankings β†’ pick a chart (Top Free / Paid / Grossing), category, and country.
    • Reviews / App details β†’ paste App IDs (e.g. com.whatsapp) or Play URLs.
    • Search β†’ add search terms.
  3. Set country and language, and optionally Max items / Max reviews per app.
  4. Click Save & Start, then download results as JSON, CSV, or Excel.
  5. Automate it: run on a schedule for daily rankings, call it from the Apify API, or wire the dataset into Make, Zapier, Google Sheets, or a webhook.

πŸ’‘ Tips

  • πŸ† Schedule rankings daily per category/country to track chart movement over time β€” the dated scrapedAt makes trend building easy.
  • 🌍 Iterate countries (loop country) to build a global picture of a chart or an app's pricing.
  • πŸ’¬ Set maxReviewsPerApp high for full review history; reviews are fully paginated to Google's ceiling.
  • πŸ“ Keep fullDetail on when you need the full description, install counts, histogram, or developer contact; turn it off for a fast rank-only list.
  • ⚑ For very large review pulls, keep maxConcurrency moderate and consider RESIDENTIAL proxy to reduce rate-limiting.
  • πŸ”— Reviews accept Play URLs, so you can paste links straight from the store instead of package names.

❓ FAQ

Do I need a Google Play API key or login? No. There is no official public Google Play API for this data, and this actor needs no key and no login β€” it reads the same public data the Play website serves.

How many results can I get, and how fast? Rankings return up to ~200 apps per individual category chart, and when you set maxItems: 1000+ in rankings or search mode, the scraper automatically expands across Play Store categories/collections and discovery keywords to return 1,000+ de-duplicated apps. Reviews are cursor-paginated up to ~4,500 per app and scale into the thousands across one or multiple apps. Thanks to pooled keep-alive proxy connections and bounded concurrency, 50 enriched apps finish in ~15 seconds and 200+ in ~2 minutes.

Do I need proxies? Apify Proxy is enabled by default and is sufficient for most jobs. For very large review pulls, switching to RESIDENTIAL reduces rate-limiting. The actor rotates exit IPs across a pool automatically.

What export formats are supported? JSON, CSV, Excel, XML, and HTML table, plus RSS β€” and you can pull results programmatically from the Apify API or push them to integrations.

Is there an API? Yes β€” every Apify actor is callable via REST API. Start a run, poll it, and fetch the dataset as JSON/CSV. See the API tab on the actor page.

How fresh is the data? It's scraped live on each run β€” rankings, reviews, and details reflect Google Play at run time. Each record includes a scrapedAt timestamp. Schedule the actor to keep a dataset continuously up to date.

Can I filter by category and country? Yes. Rankings support a category (all apps/games or a specific niche, including game subcategories) and any of 50+ country markets, plus 30+ language options. Reviews, details, and prices are all localized.

Can I get the full app description and the ratings histogram? Yes β€” with fullDetail on (the default), app records include the full description/descriptionHTML and the 1–5 star histogram, along with installs and developer contact.

Why are some fields empty? Fields like developerEmail, developerAddress, video, originalPrice, or criterias only exist for apps/reviews that actually have them. Empty values reflect what Google Play exposes for that record, not a scraping error.


  • App Store Scraper β€” the Apple App Store counterpart: rankings, reviews, and app details for iOS.
  • Bulk URL Checker β€” validate and inspect large lists of URLs (status, redirects, metadata).
  • Bulk Metadata Extractor β€” pull titles, descriptions, and SEO/OpenGraph metadata from any list of pages.
  • Outseo Scraper β€” SEO data extraction for keyword and on-page research.
  • Google Trends Scraper β€” interest-over-time and trending-query data from Google Trends.
  • Marktplaats Scraper β€” classifieds listings and prices from Marktplaats.

🏷️ Keywords

Google Play scraper, scrape Google Play, Google Play Store data extractor, Google Play reviews scraper, Google Play rankings API, Android app scraper, ASO keyword research tool, Play Store developer email lead generation, B2B mobile app intelligence, 1,000+ results pagination, bulk export JSON CSV Excel API.


πŸ“‹ Changelog

VersionDateHighlights
v1.22026-11Unlocked 1,000+ deep pagination across rankings, search, and reviews modes by removing single-list 250/660 caps, adding automatic multi-category and multi-keyword expansion with global appId/reviewId deduplication, and setting fast 50-item prefill.
v1.12026-11Added pooled keep-alive proxy connections and bounded parallel detail enrichment, cutting 200-app full-detail runs to ~140s with 0 duplicates.
v1.02026-05Initial release β€” 4-mode Google Play extraction (Rankings, Reviews, App Details, Keyword Search) across 50+ countries and 30+ languages.

▢️ Ready to pull Google Play data? Pick a mode, set your country, and click Start β€” structured rankings, reviews, and app details export to JSON, CSV, Excel, or API in minutes.

⌂ 捒网址