Shopify App Store Scraper & Rank Tracker
Pricing
Pay per event
Shopify App Store Scraper & Rank Tracker
Get Shopify App Store data: app details, pricing plans, ratings, reviews and category/keyword rankings with position changes. Input app URLs/handles, categories or search keywords. Returns JSON per app/review/ranking. From $0.0005/review, $0.002/app.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Kempt Horizon Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape the Shopify App Store (apps.shopify.com): app listings, every pricing plan, ratings, reviews, and category ranking positions tracked over time. Each run compares rankings with the previous run, so you see who moved up, who dropped, and which apps are new in your category. Most Shopify app scrapers don't do this.
Built for Shopify app developers, agencies, SaaS founders, investors and market researchers who want Shopify app market data without paying for an analytics subscription.
For AI agents (MCP / API) – quick reference
- Use when: you need Shopify App Store (apps.shopify.com) data: an app's details, pricing plans, rating, reviews, or which apps rank in a category and how positions changed.
- Don't use for: Shopify storefront/product data (this is the app marketplace, not merchant stores).
- Minimal input:
{"appHandles": ["klaviyo-email-marketing"], "includeReviews": true, "maxReviewsPerApp": 10}or{"categories": ["marketing-and-conversion-marketing-email-marketing"], "rankingDepth": 24}. - Output: dataset items with
type= app (name, developer, rating, reviewCount, pricing plans, categories, Built for Shopify badge), review (rating, date, text, reply) orranking(positions, movers, new entrants, drop-outs). - Price: $0.001 per run start + $0.002 per app, $0.0005 per review, $0.003 per ranking snapshot. Pay-per-event only, limited permissions, so agentic payments (x402 / Skyfire / Apify AGI) work.
- MCP: add
https://mcp.apify.com?tools=kempt_horizon_yzk/shopify-app-storeto your MCP client.
What does the Shopify App Store Scraper do?
- 📦 App details: name, tagline, description, highlights, developer (name, partner page, website, country), launch date, languages, "Works with" integrations, categories with feature tags, screenshots/video, and the Built for Shopify badge.
- 💲 Pricing plans: each plan's name, price label, parsed amount, currency and billing interval, additional charges and plan features. Also the free plan and free trial length.
- ⭐ Ratings & reviews: overall rating, review count, 1-5 star distribution. Reviews come newest first, with rating, date, text, store name and country as displayed, time using the app, and the developer's reply. You can filter by star rating, for example to monitor 1-2 star reviews only.
- 📈 Category rank tracking with history: ordered positions (up to 240 deep) for any category, and on every run:
previousPositionandchangeper appnewEntrantsanddroppedOutbiggestGainersandbiggestLoserstrackedApps(your apps) with a fulltrackedHistoryof positions across up to 1,000 past runs
- 🔁 Incremental monitoring: get only new reviews since the last run, and optionally only apps that changed (rating, review count, pricing, badge, categories, name). Every app includes a
changesSinceLastRundiff. - 🐢 Polite and compliant: one request at a time with a 2.5 s default delay plus jitter, robots.txt checked every run, retries with exponential backoff, and harder backoff on 429.
Use cases
- Competitor price monitoring: get alerts when a competitor changes plans or prices.
- App Store rank tracking (ASO): see where your app ranks in each category and how that changes week over week.
- Review monitoring: send new 1-star reviews to Slack or your helpdesk with an Apify integration.
- Market research: build a dataset of every app in a category with ratings, review counts and pricing.
- Lead generation for agencies and investors: find fast-rising apps with
biggestGainersandnewEntrants.
How much does it cost to scrape the Shopify App Store?
Pay per event. You only pay for results:
| Event | Price |
|---|---|
| App listing (details + all pricing plans) | $0.002 |
| Review | $0.0005 |
| Ranking snapshot (one category, up to 240 positions, with diff vs. last run) | $0.003 |
Examples: tracking 10 categories daily costs about $0.90/month. 100 apps with 50 reviews each costs $2.70. Unchanged apps (with Only save apps that changed) and already-seen reviews (with Incremental mode) are not charged.
How to use it
- Add apps (handles like
klaviyo-email-marketingor full URLs), categories (likemarketing-and-conversion-marketing-email-marketingor the category URL), or both. - Turn on Scrape reviews if you need them.
- For monitoring, set a State key (e.g.
my-competitors), turn on Incremental mode and optionally Only save apps that changed, then schedule the Actor daily or weekly. - Download results as JSON, CSV or Excel, or connect them to Google Sheets, Slack, Zapier, Make or a webhook.
Input example
{"appHandles": ["klaviyo-email-marketing", "omnisend"],"categories": ["marketing-and-conversion-marketing-email-marketing"],"includeReviews": true,"maxReviewsPerApp": 50,"rankingDepth": 48,"incremental": true,"onlyChangedApps": true,"stateKey": "email-competitors"}
Output
Every dataset item has a type: app, review or ranking. The Output tab has separate Apps, Reviews and Ranking snapshots views. A RUN_SUMMARY record shows counts, skipped items and HTTP stats.
App (shortened)
{"type": "app","handle": "pop-convert","name": "Pop Convert ‑ Pop Ups, Banners","rating": 4.9,"reviewCount": 8712,"ratingDistribution": { "1": 33, "2": 6, "3": 34, "4": 384, "5": 8255 },"pricingSummary": "Free plan available. Free trial available.","freeTrialDays": 90,"builtForShopify": true,"pricingPlans": [{ "name": "Shopify Basic", "priceLabel": "$15/month", "amount": 15, "currency": "USD", "interval": "month", "features": ["Unlimited visitors & subscribers", "..."] }],"developer": { "name": "Pop Convert", "handle": "pop-convert", "basedIn": "United States" },"categories": [{ "name": "Pop-ups", "handle": "marketing-and-conversion-...", "features": ["..."] }],"changesSinceLastRun": { "rating": { "from": 4.8, "to": 4.9 } }}
Review
{"type": "review","reviewId": "2276380","appHandle": "klaviyo-email-marketing","rating": 5,"date": "2026-07-08","storeName": "Super Dogs","storeCountry": "Bulgaria","usageDuration": "11 months","text": "Everything just works - from popup to purchase ...","developerReply": { "date": "2026-07-08", "text": "Thank you for such a thoughtful review! ..." },"reviewUrl": "https://apps.shopify.com/reviews/2276380"}
Ranking snapshot (shortened)
{"type": "ranking","rankingType": "category","target": "marketing-and-conversion-marketing-email-marketing","title": "Email marketing apps","totalAppsListed": 419,"capturedAt": "2026-10-14T14:39:56.600Z","previousCapturedAt": "2026-10-07T14:00:00.000Z","trackedApps": [{ "handle": "klaviyo-email-marketing", "position": 1, "previousPosition": 5 }],"newEntrants": [{ "handle": "qorix-popup", "position": 30 }],"droppedOut": [{ "handle": "some-app", "previousPosition": 30 }],"biggestGainers": [{ "handle": "klaviyo-email-marketing", "position": 1, "change": 4 }],"positions": [{ "position": 1, "page": 1, "handle": "klaviyo-email-marketing", "rating": 4.7, "reviewCount": 3375, "builtForShopify": false, "previousPosition": 5, "change": 4, "isNew": false }]}
Keyword rankings
Keyword (search) rank tracking is built in. However, apps.shopify.com's robots.txt currently disallows search URLs (Disallow: *q=*) for generic crawlers, and this Actor always respects robots.txt. While that rule stays in place, keyword inputs are skipped and never charged, and the run summary lists them under rankings.skippedRobots. The Actor re-reads robots.txt on every run, so keyword tracking starts working by itself if Shopify relaxes the rule.
Data, privacy and compliance
- Only public pages are read, with no login. Paths that robots.txt disallows are never requested.
- From reviews, the Actor keeps only the store name and country as displayed by Shopify. Those are businesses. It does not collect reviewer personal names, emails or profiles. It also does not collect developer support emails or street addresses.
- Requests are throttled and sent one at a time. Please keep the delay at the default or higher. You are responsible for using the data in line with Shopify's terms and applicable law.
FAQ
Where do I find a category handle? Open a category on apps.shopify.com and copy the URL. Paste the URL or the part after /categories/.
Why do ranking positions differ from what I see? The Actor captures the default, non-personalized "All apps" order of the category. It skips sponsored placements, so positions are organic rank.
Where is history stored? In the named key-value store shopify-app-store-intel-state in your account, under your stateKey. It persists across runs. Use different state keys for independent monitors.
Is there an API? Yes. Like every Apify Actor, you can run it through the Apify API or the JS/Python clients, and read the dataset as JSON or CSV.