Shopify App Store Scraper: Apps, Reviews & Developers avatar

Shopify App Store Scraper: Apps, Reviews & Developers

Pricing

from $4.00 / 1,000 apps

Go to Apify Store
Shopify App Store Scraper: Apps, Reviews & Developers

Shopify App Store Scraper: Apps, Reviews & Developers

Get Shopify App Store apps for product reviews, loyalty or inventory research, with ratings, pricing plans, developers, Built for Shopify badges and recent reviews. Use keywords, categories or app links. About $0.005 per app: 100 apps cost $0.50. No login.

Pricing

from $4.00 / 1,000 apps

Rating

0.0

(0)

Developer

fortbrand

fortbrand

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Security

Limited permissions

Share

For app developers, merchant agencies and market researchers comparing Shopify apps over time. Get public app profiles from keyword searches, category pages, developer portfolios or direct app links, with consistent fields for pricing plans, ratings, review counts, features and the Built for Shopify badge.

About $0.005 per app. Comparing 100 apps costs about $0.50, before Apify plan discounts and the small $0.00005 start charge. Complete pricing plans and requested newest reviews are included in that app price. No login, account cookies or extra API key is needed.

What you get

Every app row starts with a readable summary and keeps its canonical App Store handle for joining successive runs. The same app discovered more than once in a run is saved and charged once. A free summary record explains coverage, failed source pages and the spending limit.

FieldMeaning
summaryApp name, rating, review count and the source's pricing summary
recordTypeapp for a paid profile; note or SUMMARY for free information
appId, appHandleCanonical App Store URL handle; these are not a claimed Shopify internal numeric ID
appName, subtitleCurrent listing name and main description heading
rating, reviewCountPublic aggregate rating and review count, when supplied
pricingTextPricing overview, such as free, free plan available or free to install
pricingPlansDisplayed plans with names, base prices, billing intervals, annual price text, usage charges, trials and plan features
developerName, developerUrlDeveloper business label and its public Shopify partner profile
builtForShopifyWhether the target listing displays the Built for Shopify badge
categories, categoryFeaturesApp categories and the detailed feature taxonomy on the listing
description, featuresDescription and app feature bullets when details are enabled
languages, integrationsLanguages and the tools shown under Works with
launchedAtSource launch date as YYYY-MM-DD, when it can be read
reviewsRequested newest reviews, each with rating, text and date only
reviewsStatusnot-requested, complete, partial or unavailable
placementsDiscovery source URL, page, position and sponsored label for the app
appUrl, iconUrlCanonical app page and its listing icon
sourceUrls, scrapedAtPages used for this row and its observation time
contentFingerprintHash of the normalized profile, useful for comparing equivalent snapshots

A field the website does not expose is null. A list successfully read without entries may be empty. Missing ratings do not become zero. A free-to-install plan is not treated as a zero-cost subscription, and a base monthly fee is not presented as the complete bill.

Use with AI agents (MCP)

Connect your assistant to the Apify MCP server and name this Actor explicitly: vant47/shopify-app-store-scraper. Ask it to inspect the input schema, set your app and spending limits, start a run and read the app rows together with the SUMMARY record.

For example, compare 20 product review apps with plans and their 10 newest reviews:

{
"searchTerms": ["product reviews"],
"maxItems": 20,
"includeDetails": true,
"includeReviews": true,
"maxReviews": 10
}

Keyword discovery uses Shopify's actual public keyword results. It does not replace your query with a vaguely related category. Keep the placements array when your job involves search visibility, because an app's position belongs to a particular source page and observation time.

Start in three steps

  1. Enter one or more searchTerms, or paste public app, category or developer links into startUrls.
  2. Set maxItems for the entire run. Enable newest reviews when you need feedback as well as the app profile.
  3. Run the Actor, inspect the summary, then export JSON, CSV or Excel from the dataset. JSON preserves nested plans and reviews most clearly.

The prefilled job searches inventory and requests 20 app profiles. In the October 29, 2026 cloud check, it delivered 20 complete profiles in 36 seconds. Review the first run before increasing its scope.

Inputs

InputDefaultHow it works
searchTermsInventory in the prefillArray of keyword phrases; up to 50 phrases are accepted
startUrlsEmptyOptional array of public Shopify App Store links; use plain URL strings
maxItems20Shared maximum number of distinct app rows across all inputs, up to 1,000
includeDetailstrueInclude plan tables, description, feature taxonomy, integrations and languages
includeReviewsfalseFetch newest review pages and attach reviews to each app
maxReviews10Maximum reviews per app when requested; up to 50
maxPages5Discovery page limit per starting input, up to 100
proxyConfigurationUS datacenter proxyStandard Apify proxy configuration; direct cloud access can be refused

Omitted sources select the prefilled search. Empty arrays and unsupported URLs produce free input notes. Invalid API inputs can also be rejected by Apify before a run starts, without an app charge.

The global limit can fill before later inputs are visited. The summary reports unvisited pages. Run separate jobs when each query needs a fixed sample size.

Browse a category

{
"startUrls": [
"https://apps.shopify.com/categories/marketing-and-conversion-social-trust-product-reviews"
],
"maxItems": 100,
"maxPages": 5,
"includeDetails": true
}

Track a developer portfolio

{
"startUrls": ["https://apps.shopify.com/partners/shopify"],
"maxItems": 50,
"includeDetails": true
}

Check known competitors and their newest reviews

{
"startUrls": [
"https://apps.shopify.com/loox",
"https://apps.shopify.com/product-reviews-addon"
],
"maxItems": 2,
"includeReviews": true,
"maxReviews": 20
}

Pricing plans you can interpret

The pricingPlans array preserves more than the lowest number on a card. Each entry includes name, priceText, numeric price when unambiguous, currency, billingInterval, annualPriceText, additionalCharges, trial and features.

A live page check on October 29, 2026 showed Loox's Convert plan at $49.99 per month, with 300 orders included and an additional $50 per 300 orders. The displayed trial was 14 days. Its Unlimited plan showed $299.99 per month. These are observations from that date, not a promise about current app prices.

{
"appId": "loox",
"appName": "Loox ‑ Product Reviews App",
"rating": 4.9,
"reviewCount": 9991,
"pricingPlans": [
{
"name": "Convert",
"priceText": "$49.99 / month",
"price": 49.99,
"currency": "USD",
"billingInterval": "month",
"annualPriceText": null,
"additionalCharges": "300 orders included in base price + $50 per additional 300 orders",
"trial": "14-day free trial"
}
]
}

This excerpt omits other plans and feature arrays. Details mode retains every displayed plan. Annual pricing stays separate from monthly fees. Outside pricing websites and contract quotes are not fetched.

How much does a run cost?

There is one app charge for each distinct profile delivered. Enabling details or newest reviews does not add another event. Failed profiles, repeated discoveries, source errors and summary records have no app charge. Apify's small start charge still applies to the run.

Apps deliveredList price before discounts and start charge
20$0.10
100$0.50
500$2.50
1,000$5.00

Bronze receives 5% off the app price, Silver 10%, and Gold and higher 20%. Runtime platform usage is included in the app price. You do not need to fund a separate proxy service. Set Apify's maximum total charge for the run when you want a hard money limit as well as maxItems.

The Actor checks affordability before saving an app and stops cleanly at the limit. It saves a useful row before requesting its app charge. Dataset-backed recovery reconciles delivered rows and settled billing counts after an interrupted run, avoiding duplicate rows and repeat app charges.

Monitor prices every day

Create an Apify task using your chosen app links, search terms or category. Add an Apify schedule to that task, choose a daily or weekly time, and send completed-run datasets to your storage or reporting tool. No schedule is created automatically by this Actor.

Join snapshots by appId and retain scrapedAt. Compare plan names, priceText, annual text, usage charges, rating, review count and badge status. Review growth and category positions do not establish sales, installations or revenue.

Keep detail settings the same across runs when comparing contentFingerprint. The fingerprint covers profile content, including aggregate ratings and plan data; it excludes collection time and discovery positions. It does not represent a historical archive maintained by the Actor. Save each run's dataset yourself when you want a time series.

For integrations, read SUMMARY first and process recordType: "app" rows. Keep partial-run notes so an unavailable page is not mistaken for an app disappearing.

API access

Use your own Apify token in an authorization header. Keep it outside saved inputs and shared reports. This synchronous example returns the dataset items for a small job:

curl --request POST \
'https://api.apify.com/v2/acts/vant47~shopify-app-store-scraper/run-sync-get-dataset-items?timeout=300&memory=1024&maxTotalChargeUsd=0.10' \
--header "Authorization: Bearer $APIFY_TOKEN" \
--header 'Content-Type: application/json' \
--data '{"searchTerms":["inventory"],"maxItems":10,"includeDetails":true}'

For larger jobs, start asynchronously, poll the run and download its dataset. Read SUMMARY in the default key-value store. Standard Apify clients support the same Actor identifier.

Coverage and reliability

The Actor reads public, signed-out English App Store pages through HTTP. Discovery pages, app profiles and review pages are checked for expected data, so a 200 response containing only a shell or error screen is not counted as a successful extraction. It uses one source request at a time, spaces requests, honors Retry-After and renews sessions for retries. US datacenter access comes first; US residential is used only after repeated refusals. It does not solve challenges or borrow account cookies.

Review text can be absent even when a rating and date are present. Such text stays null. Reviews are sorted newest first by the source; they are a bounded recent sample, not every review ever posted. Merchant names, reviewer names, countries, store URLs and developer replies are excluded from the review output.

App listing prices are public subscription offers. They are not retailer prices by postal code, final checkout totals, tax calculations or negotiated contracts. Country-specific purchase eligibility and prices behind a login are outside this dataset. Removed apps, temporary throttling and source layout changes can cause partial results; inspect the free summary before treating a run as complete.

FAQ

Can I combine keywords and links? Yes. They share one deduplicated app dataset and one global app limit. Source order matters when the cap is small.

Does keyword search return category substitutes? No. Keyword placements come from the public keyword result frame for the phrase you supplied.

Are reviews charged individually? No. Up to your requested limit are attached to the app profile and included in its price. Increase maxReviews only when you need a larger recent sample.

Why are some plans empty or some fields null? A free app may show only a pricing overview instead of a plan table. Sparse pages may omit ratings, launch dates, languages or integrations. Unknown values are kept unknown.

Is a Built for Shopify badge on a recommended app counted for the target? No. The badge is checked on the target profile and excludes the similar-apps section.

Can I request arbitrary websites or developer contact enrichment? No. Only supported pages on apps.shopify.com are fetched. External websites, personal contacts, emails and phone enrichment are outside this Actor's scope.

What if the source blocks a page? Retries use fresh sessions. If the page remains unavailable, the run reports a free failure note and continues where possible. No app charge is created for an unreadable profile.

Is this an official Shopify product? No. This is an independent data collection tool that identifies the public source it reads. Shopify and Shopify App Store are referenced descriptively.

Repeat the same app inputs to build comparable pricing and review snapshots.