Shopify App Store Scraper avatar

Shopify App Store Scraper

Pricing

from $5.00 / 1,000 app scrapeds

Go to Apify Store
Shopify App Store Scraper

Shopify App Store Scraper

Scrape Shopify App Store apps, pricing plans, ratings and merchant reviews by search, category or app URL. Works with Apify MCP and the API.

Pricing

from $5.00 / 1,000 app scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 days ago

Last modified

Share

What is Shopify App Store Scraper?

Shopify App Store Scraper turns search keywords, category URLs or app URLs from apps.shopify.com into a dataset of app records and, on request, merchant review records. App rows return the app name, slug, URL, icon, star rating, review count and pricing badge, and detail mode adds the description, developer, pricing plans, categories, works-with integrations, languages and launch date. Review rows return the star rating, review text, store name, country, usage duration, post date and the developer's reply. SaaS founders, Shopify agencies, app marketers and AI agents use it to map a niche, benchmark competitor pricing and mine merchant feedback.

Why app builders use this Shopify App Store scraper

  • Four modes in one Actor. Search, category, app detail and reviews, auto-detected from each input so you can mix them in one run.
  • Competitor pricing plans. Detail mode returns each plan's name, price, features and extra charges in pricingPlans.
  • Merchant voice with replies. Review rows carry usageDuration, country and developerReply, which show how vendors handle feedback.
  • Targeted review pulls. Sort by recency, rating or helpfulness and filter to one star rating, such as only 1-star or only 5-star reviews.
  • Two simple caps. maxApps and maxReviews keep each run's event count predictable.

Best fit for this Actor

Example workflow: from a niche keyword to a positioning brief

A founder planning an email-marketing app starts with the keyword email marketing. They run search mode with maxApps set to 50 and get every matching app with rating, reviewsCount and pricingBadge. They pick the five apps with the most reviews, pass their appUrl values into startUrls with scrapeReviews on, reviewRating set to 1 and maxReviews set to 100. They export the 1-star reviews, group the complaints by theme, compare them with each competitor's pricingPlans, and feed the result into their positioning brief.

Input

FieldTypeWhat it controls
queriesarraySearch keywords, one niche per line, for example email marketing.
startUrlsarrayApp, category, /reviews or search URLs on apps.shopify.com.
modestringauto (default), search, category, app_detail or reviews.
enrichDetailsbooleanVisit each search or category result for full detail. Default false.
scrapeReviewsbooleanAlso collect merchant reviews for each app. Default false.
maxAppsintegerApps per query or category. Default 50.
maxReviewsintegerReviews per app. Default 100.
reviewSortstringmost_recent, highest_rating, lowest_rating or most_helpful.
reviewRatingintegerOnly reviews with this star rating, 1 to 5; 0 keeps all.
countrystringProxy country, which sets the currency shown on listings. Default US.
maxConcurrencyintegerParallel requests. Default 10.
proxyConfigurationobjectApify Proxy settings.
{
"startUrls": [
{ "url": "https://apps.shopify.com/klaviyo-email-marketing" },
{ "url": "https://apps.shopify.com/judgeme-product-reviews" }
],
"scrapeReviews": true,
"maxReviews": 200,
"reviewSort": "lowest_rating"
}

Output

Each row has recordType set to app or review.

App fields:

FieldWhat it contains
appName, appSlug, appUrl, iconUrlApp identity and icon
rating, reviewsCount, pricingBadgeStar rating, review count and pricing badge from the listing card
queryThe search keyword that found the app
tagline, descriptionMarketing copy (detail mode)
developer, developerUrlDeveloper name and partner page (detail mode)
priceFrom, pricingPlansStarting price and every plan with features and extra charges (detail mode)
ratingBreakdownReview count per star level (detail mode)
category, categories, worksWith, languagesClassification and integrations (detail mode)
launchedAt, builtForShopifyLaunch date and Built for Shopify badge (detail mode)
scrapedAtCollection time

Review fields:

FieldWhat it contains
appName, appSlug, reviewIdApp and review identity
rating, reviewBodyStar rating and full review text
storeName, country, usageDurationReviewing merchant, country and time using the app
postedAtReview date
developerReply, developerReplyAtDeveloper response and its date

Search-mode app row:

{
"recordType": "app",
"appName": "Klaviyo: Email Marketing & SMS",
"appSlug": "klaviyo-email-marketing",
"appUrl": "https://apps.shopify.com/klaviyo-email-marketing",
"iconUrl": "https://cdn.shopify.com/app-store/listing_images/5edd9000b933a8fa88c152d1e498531f/icon/CP6B2OOv3PYCEAE=.png",
"rating": 4.7,
"reviewsCount": 3335,
"pricingBadge": "Free to install",
"query": "email marketing",
"scrapedAt": "2026-10-01T13:34:17.429Z"
}

Search and category rows are lean listing cards. Turn on enrichDetails, or pass app URLs, when you need developer, plans, categories and integrations on every app.

Pricing

This Actor uses Pay per event with Apify platform usage included in the event price. You pay one App scraped event per app row (listing card or enriched detail), one Review scraped event per review row, and one small Actor Start event per run. The live Pricing tab on this page shows the current event prices.

Worked example: a search with maxApps set to 50 costs 50 app events plus one start event. Adding reviews for five apps with maxReviews set to 100 adds up to five hundred review events.

API example

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~shopify-app-store-scraper/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["product reviews"], "maxApps": 20}'
from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("khadinakbar/shopify-app-store-scraper").call(run_input={
"startUrls": [{"url": "https://apps.shopify.com/klaviyo-email-marketing/reviews"}],
"reviewRating": 1,
"maxReviews": 100,
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
if row["recordType"] == "review":
print(row["rating"], row["country"], row["reviewBody"][:80])

Use with AI agents (MCP)

Connect the Actor to Claude, ChatGPT, Cursor or any MCP client through Apify MCP, then ask:

List the top 20 Shopify apps for "email marketing" with rating, review count and pricing badge, then summarize the 1-star reviews of the top app.

The agent runs search mode, reads app rows with get-dataset-items, then runs a reviews pass for one appUrl with reviewRating set to 1. Rows are separated by recordType, and appUrl plus scrapedAt give provenance. Cost scales with app and review rows, so keep maxApps and maxReviews tight in chat.

Best results

Starting situationHelpful actionExpected outcome
Sizing a nicheUse queries with a generous maxAppsEvery matching app for the keyword
A curated shortlistPaste a /categories/<slug> URLThe category's featured apps
Competitor pricingPass app URLs or turn on enrichDetailsPlans, features and extra charges
Finding pain pointsSet reviewRating to 1 or 2 with reviewSort most_recentFresh complaints to build against
Regional pricingSet country, for example GBListings in that market's currency
Large jobsLower maxConcurrency to 5A steady, even pace

Builder's note

I built this around the founder's research loop: find the apps in a niche, open the leaders' pricing, then read what merchants complain about. I designed search rows to stay lean and made full detail opt-in, because most niche scans only need names, ratings and badges, and detail visits add time. I found that developer replies say a lot about a competitor's support culture, so every review row keeps the reply and its date.

FAQ

How do I get pricing plans?

Pass app URLs in startUrls, or turn on enrichDetails for search and category runs. Plans are in pricingPlans.

Which popularity signals are available?

The App Store publishes star ratings and review counts, so rating and reviewsCount are the public popularity signals.

Does it need a Shopify login?

No. The Actor reads the public App Store with no login or cookies.

Responsible use

This Actor collects publicly available information from apps.shopify.com. Review text and store names are user-generated public content, so use them in line with the GDPR, CCPA and the Shopify App Store terms, and contact merchants only through lawful channels. Shopify is a trademark of Shopify Inc.; this independent Actor is not affiliated with or endorsed by Shopify. For questions or bugs, open a ticket in the Issues tab.