Shopify App Store Scraper & App Intelligence
Pricing
from $0.10 / 1,000 reviews
Shopify App Store Scraper & App Intelligence
Shopify App Store scraper: reviews of any Shopify app at $0.10 per 1,000, plus an optional app report ($0.002 each): review velocity and rating trends, rating by country, new-merchant churn signal, developer reply rate, complaint spikes, category ranks, plan and listing changes with alerts.
Pricing
from $0.10 / 1,000 reviews
Rating
0.0
(0)
Developer
Steadywren
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
an hour ago
Last modified
Categories
Share
Shopify App Store scraper for your app and your competitors: export Shopify app reviews (rating, text, store country, developer reply) and an app report for each app - review velocity and rating trends, rating by store country, a new-merchant churn signal, how fast the developer answers and which bad reviews are still unanswered, complaint spikes, category ranks, and plan, price and listing changes between runs with alerts. Reviews cost $0.10 per 1,000; each app report costs $0.002 and can be switched off.

Why this Actor
One run gives you the reviews, the listing data and the analysis of both:
- Review trends: reviews in the last 7 and 30 days and the change against the 30 days before, rating per week, rating by store country, and how stores in their first month rate the app compared with long-time users.
- Developer reply analytics: reply rate, median reply time and the 1-2 star reviews still waiting for an answer.
- Change tracking with alerts: new reviews per day, rating change, added / removed / repriced plans, the Built for Shopify badge, listing changes (name, tagline, description, screenshots, languages, integrations) and category rank moves since your last run.
- Every extra can be switched off: turn the analytics off and you get a plain, fast review scraper - and no app report charge.
What you get
- Reviews: rating, text, date, store name and country, how long the store has used the app ("Almost 4 years using the app" and in days), the developer's reply with its date, and a link to the review. All reviews of an app are available (Klaviyo: 3,400+).
- Filters: star ratings, date range, keywords, store countries, answered / unanswered by the developer, sort by newest or relevance.
- App report (one per app, in its own App reports table in the Output tab): rating and share of each star, review count, developer, launch date, categories, languages, integrations ("Works with"), every pricing plan with its price, period, extra charges and a USD price, the cheapest paid plan, Built for Shopify, tagline and "More apps like this" - plus the analytics below.
- Review trends (
reviewTrends):reviewsLast7Days,reviewsLast30Days,reviewsPrevious30Days,velocityChange,weeklyRating,ratingByCountry(top 10 countries with 3+ reviews),newMerchantsvsestablishedMerchants(stores using the app for under / over 30 days: reviews, average rating, share of 1-2 star reviews). - Developer replies (
developerReplies):replyRate,negativeReplyRate(1-2 stars),medianReplyHours, andunansweredNegative: up to 5 newest 1-2 star reviews of the last 90 days without a reply. - Complaint topics and spikes (
complaintTopics): every review tagged withcrash,bugs,login,billing,ads,performance,uiorfeature_request(English, German, French, Spanish, Ukrainian); top complaints with their share;complaintSpikeswhen a topic jumps in the last 7 days. - Category ranks (
categoryRanks): the organic position of the app in each of its categories (paid "Ad" placements are skipped), searched in the firstcategoryPagespages (about 24 apps per page). - Changes between runs (
trackChanges): see "Why this Actor", andalertssuch asrating_drop,pricing_changed,built_for_shopify_lost,listing_changed:tagline,languages,rank_drop:<category>,rank_lost:<category>,complaint_spike:billing. - Similar apps (
compareSimilarApps, off by default): an app report for the apps Shopify lists under "More apps like this". These reports are made one by one with a short pause; if Shopify rate-limits their review pages, the report still comes with the listing data andreviewsUnavailable: true. - Competitor comparison: all apps of a run side by side in the
COMPARISONrecord (Output tab) when the run has 2 or more apps.
The analytics read the newest 500 reviews of each app (analysisDepth). They are not output and not charged.
Example: app report
{"type": "app","appHandle": "klaviyo-email-marketing","appName": "Klaviyo: Email Marketing & SMS","developer": "Klaviyo","storeRating": 4.7,"reviewCount": 3429,"ratingHistogram": { "1": 0.08, "2": 0.01, "3": 0.01, "4": 0.02, "5": 0.88 },"builtForShopify": false,"launchedAt": "2012-09-20T00:00:00.000Z","categories": [{ "name": "Email marketing", "handle": "marketing-and-conversion-marketing-email-marketing" }],"languages": ["English", "French", "Spanish", "German", "Portuguese (Brazil)", "Korean", "Italian", "Polish", "Swedish", "Dutch", "Japanese"],"worksWith": ["Checkout", "Customer accounts", "Shopify Flow", "Shopify Admin", "Aftership", "Gorgias", "Meta Advertising", "Recharge", "TikTok Advertising", "Typeform"],"pricingPlans": [{ "name": "Free", "priceText": "Free to install", "price": 0, "currency": null, "priceUsd": 0, "period": null, "note": "Email marketing built into Shopify Admin — no separate account needed." },{ "name": "SMS", "priceText": "$15/month", "price": 15, "currency": "USD", "priceUsd": 15, "period": "month", "note": "Up to 1250 SMS/MMS credits. Includes carrier fees. Upgrade as you grow." }],"hasFreePlan": true,"lowestPaidPriceUsd": 15,"tagline": "Build email marketing, SMS, and WhatsApp campaigns powered by AI to grow ecommerce sales.","isSimilarApp": false,"similarApps": ["shopify-messaging", "omnisend", "mailchimp"],"reviewsUnavailable": false,"reviewsAnalyzed": 500,"recentRating": 4.83,"trends": {"reviewsLast7Days": 18,"reviewsLast30Days": 85,"reviewsPrevious30Days": 92,"velocityChange": -0.08,"weeklyRating": [{ "weekStart": "2026-10-26T21:29:01.632Z", "reviews": 18, "avgRating": 4.78 }],"ratingByCountry": [{ "country": "United States", "reviews": 218, "avgRating": 4.88 }, { "country": "Germany", "reviews": 20, "avgRating": 4.4 }],"newMerchants": { "reviews": 95, "avgRating": 4.83, "negativeShare": 0.04 },"establishedMerchants": { "reviews": 402, "avgRating": 4.83, "negativeShare": 0.04 }},"replies": {"replyRate": 0.92,"negativeReplyRate": 0.85,"medianReplyHours": 48,"unansweredNegative": [{ "reviewId": "2379658", "rating": 1, "text": null, "date": "2026-09-30T00:00:00.000Z", "storeCountry": "Canada" }]},"topComplaints": [{ "topic": "billing", "share": 0.02 }, { "topic": "bugs", "share": 0.01 }],"complaintSpikes": [],"categoryRanks": [{ "category": "marketing-and-conversion-marketing-email-marketing", "name": "Email marketing", "rank": 2, "checked": true }],"changes": { "daysSincePrevious": 1, "newReviews": 3, "newReviewsPerDay": 3, "storeRatingChange": 0, "listingChanged": [], "pricingChanged": null, "builtForShopifyChanged": null, "rankChanges": {} },"alerts": []}
Reading it: Klaviyo got 85 reviews in the last 30 days (8% fewer than the 30 days before), answers 92% of reviews (median reply time two days), ranks #2 in Email marketing, and German stores rate it lower (4.4) than US stores (4.88). (Real run, shortened; prices shown in USD and the changes numbers are illustrative - changes is filled from the second run on.)
Example: review
{"type": "review","reviewId": "2415688","appHandle": "klaviyo-email-marketing","appName": "Klaviyo: Email Marketing & SMS","url": "https://apps.shopify.com/reviews/2415688","rating": 5,"text": "The Composer makes everything so much easier.","date": "2026-11-02T00:00:00.000Z","storeName": "AGR5V","storeCountry": "Australia","usageText": "6 months using the app","usageDays": 180,"replyText": "We are so glad that the Composer tool has beneficial to your workflow!","replyDate": "2026-11-02T00:00:00.000Z","topics": [],"isNew": true,"scrapedAt": "2026-11-02T21:29:01.632Z"}
How much does it cost?
$0.10 per 1,000 reviews and $2 per 1,000 app reports (one report per app; none when every analytics option is off), plus a small Actor start fee charged by Apify. Platform compute is included. Example: your app + 3 competitors with 100 reviews each costs about $0.05 per run.
Use cases
- Release and support monitoring: schedule daily with your app and Only new reviews; act on
alertsand work throughunansweredNegative. - Onboarding and churn: watch
newMerchants.negativeShare- bad reviews in the first month point at setup, billing or onboarding problems. - Competitor research: add competitors (or turn on Compare similar apps) and follow their review velocity, ratings by country, plans and prices, and category ranks.
- Market and pricing research: compare plans in USD across a category; get
pricing_changedalerts when a competitor reprices.
Input
| Field | Type | Default | Description |
|---|---|---|---|
apps | array | Klaviyo | Shopify App Store URLs or app handles (e.g. klaviyo-email-marketing). |
maxReviewsPerApp | integer | 100 | Reviews to output per app (0 = reports only), up to 5,000. |
sort | string | newest | newest or relevant. |
stars | array | all | Only these star ratings. |
dateFrom, dateTo | date | - | Only reviews written in this range (inclusive). |
keywords | array | - | Only reviews mentioning any of these words. |
countries | array | - | Only reviews from stores in these countries (e.g. United States). |
replyFilter | string | any | withReply or withoutReply. |
includeReviews | boolean | true | Output one result per review. |
reviewTrends | boolean | true | Review velocity, weekly rating, rating by country, new vs established merchants. |
developerReplies | boolean | true | Reply rate, reply time, unanswered negative reviews. |
complaintTopics | boolean | true | Topics on reviews, top complaints, spikes. |
categoryRanks | boolean | true | Organic position in each of the app's categories. |
categoryPages | integer | 3 | Category pages searched for the rank (about 24 apps each). |
trackChanges | boolean | true | Remember each app between runs (key-value store shopify-app-store-history in your account) for changes and alerts. |
onlyNew | boolean | false | Output only reviews earlier runs have not returned. |
compareSimilarApps | boolean | false | Add reports for "More apps like this" (charged per report). |
similarAppsCount | integer | 3 | Similar apps per app. |
analysisDepth | integer | 500 | Newest reviews read per app for the analytics (not charged). |
proxyConfiguration | object | off | Not needed usually. |
When every analytics option is off, the Actor is a plain review scraper: no app reports, no category pages.
With an empty input the Actor returns the 100 newest Klaviyo reviews and one app report (21-31 seconds in our test runs).
Monitor daily
- Console -> Schedules -> create a schedule for this Actor (or for a saved task with your apps) and let it run daily.
- Turn on Only new reviews: each run outputs only reviews earlier runs did not return (
isNew: true). - Keep Track changes on: the app reports then show new reviews per day, rating, plan, listing and rank changes since the last run and
alertssuch asrating_drop,pricing_changed,built_for_shopify_lost,rank_drop:<category>andcomplaint_spike:<topic>. - Actor -> Integrations: send every finished run to Slack, email, Google Sheets or your own webhook.
FAQ
Where are the app reports? In their own table, so reviews and reports both have clean columns: run page -> Output tab -> App reports (or Storage -> Dataset -> reports). Reviews stay in the main dataset, which the Export button and the default API endpoint return. Via API: GET /v2/actor-runs/<runId> -> storageIds.datasets.reports gives the dataset id, then /v2/datasets/<id>/items.
Why are some counts in trends empty (null)? A count is given only when the analyzed reviews reach past the start of its period (7, 30 or 60 days), or when they are all reviews of the app; otherwise it would be cut off. For apps with many reviews 500 reviews can cover just a few weeks - raise analysisDepth (up to 3,000, not charged). The same holds for complaintSpikes, which needs 5 weeks of reviews.
Why is medianReplyHours a multiple of 24? Shopify shows review and reply dates without a time, so reply time is counted in whole days: 0 = the same day, 24 = the next day.
Why is storeRating empty for some apps? New apps without reviews have no rating yet (storeRating: null, reviewCount: null); the report is still made.
Why are plan prices in another currency? Shopify shows prices in the visitor's local currency. On Apify's servers that is USD; when it is not, priceUsd converts the price with the exchange rate Shopify prints on the page.
Why do some reviews have no text? Shopify allows star-only reviews, and many reviews (35-48% in our test run of two apps) have only a rating; they count in every rating but have text: null.
Why is usageText empty for some reviews? Shopify does not show the "… using the app" line for every store; then usageText and usageDays are null. Under one day, usageDays is a fraction of a day rounded to one decimal (8 hours = 0.3; about an hour or less = 0).
What is a "new merchant"? A store that wrote its review in its first 30 days with the app, from Shopify's "… using the app" line. Bad reviews there usually point at installation, onboarding or billing problems.
How is the category rank counted? In the order Shopify lists apps in the category ("All" view), skipping paid "Ad" placements. Apps beyond categoryPages pages get rank: null; with change tracking, falling out of those pages raises rank_lost. A category that could not be read in a run has checked: false and keeps its last known rank (no alert).
Is the history shared between my runs? Yes - all runs and tasks of your account use the key-value store shopify-app-store-history, one record per app. A manual run marks reviews as seen for a scheduled Only new reviews task too. Turn Track changes off for one-off runs, or delete the store to start over.
How are topics found? By keywords and phrases in English, German, French, Spanish and Ukrainian. Every review is tagged with its topics at any rating; topComplaints and complaintSpikes count only reviews of 3 stars or less (and feature_request at any rating).
Why does an app report have reviewsUnavailable: true? Shopify rate-limited (or failed) the app's review pages even after several retries. The report keeps the listing data (rating, review count, plans, categories, ranks, changes); the review analytics (recentRating, trends, replies, topComplaints, complaintSpikes) are null and no reviews are output for that app. Try fewer similar apps (similarAppsCount) or turn on a proxy.
Is it legal? The Actor reads only public Shopify App Store pages - no login, no search pages (Shopify's robots.txt disallows them). Store names are the merchants' business names. Check Shopify's terms for your use case.
Something broke? Open an issue on the Actor page - we answer within 12 hours.
More from Steadywren
- Google Play Reviews Scraper - Play Store reviews of Android apps with release health, developer reply rate and installs per day.
- App Store Reviews Scraper - iOS app reviews in any country with release health, competitor releases and subscription prices.
Who builds this? Steadywren - small tools, steady results. More products and custom builds on steadywren.com.
Technical details
- Sources: the public app page (embedded app data, plans, details, "More apps like this"), review pages (10 reviews per page) and category listings. Plain HTTP, no browser, no proxy by default.
- Retries: network errors, 5xx and 403 are retried with backoff; 429 (rate limit) waits longer (5 s, 10 s, 20 s... up to 60 s, or Shopify's
Retry-After); an app that does not exist is skipped with a warning. - Every run stores a
RUN_SUMMARYrecord and fails when no app is found, when requests failed and nothing was delivered, when apps with 100+ reviews delivered none, or when the key report fields (appName,storeRating,pricingPlans) are empty in most results. No new reviews, or no reviews matching the filters, is a successful run.