Shopify Store Analyzer — Apps, Catalog & Teardown (AI)
Pricing
from $100.00 / 1,000 store analyzeds
Shopify Store Analyzer — Apps, Catalog & Teardown (AI)
Analyze any Shopify store: detect the apps it runs, measure its catalog size and price range from the public products.json, and get an AI store teardown with maturity and fit scoring.
Pricing
from $100.00 / 1,000 store analyzeds
Rating
0.0
(0)
Developer
Fredrik Hansson
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Point it at any Shopify store and get the whole picture in one record. This Actor detects whether a store runs on Shopify, fingerprints the apps it has installed (reviews, subscriptions, SMS, email, upsell, loyalty, support, search, mobile app), measures its catalog size and price range straight from the store's public products.json, and uses OpenAI to write an AI store teardown — a summary, its positioning, an estimated maturity level, concrete DTC signals, and an optional fit score against whatever you sell to Shopify merchants.
You bring a list of store domains. It hands back a prospect-ready teardown per store.
The flow
1. Give store domains 2. Detect + read the store 3. Get a finished teardown(gymshark.com, → Shopify? which apps? → apps · catalog size · priceallbirds.com, ...) products.json catalog range · AI teardown · fit score
- Paste store domains or URLs into
domains— one per line. - For each store the Actor fetches the homepage (detects Shopify vs other platforms + fingerprints installed apps), then pulls the store's public
products.jsonto measure the catalog. - The AI layer reads the hard signals and returns a grounded teardown — plus a fit score if you describe what you sell.
What you get per store
For every store, the Actor returns:
- Platform detection —
isShopify(true/false) andplatform("Shopify", or a best-guess "WooCommerce" / "BigCommerce" / "Wix" / "Squarespace" / "Magento" / "Other" / null). It readscdn.shopify.com/cdn/shop/markers,Shopify.*JS globals, andx-shopify-*/x-sorting-hat-shopidresponse headers. - Installed apps (
apps) — a fingerprinted list of{ name, category }for ~25 Shopify-ecosystem apps and martech: Klaviyo, Recharge, Appstle, Bold, Loox, Judge.me, Yotpo, Okendo, Stamped, Gorgias, Rebuy, ReConvert, Attentive, Postscript, Smile.io, LoyaltyLion, Tapcart, Octane AI, Privy, Justuno, Searchanise, Fast Simon, Zendesk, Tidio and Shopify checkout signals. Categories areReviews / Subscriptions / SMS / Email / Upsell / Loyalty / Support / Search / MobileApp / …. - Catalog stats from the public
products.json—productCount(approx;productCountCappedflags when there are likely more),priceRange{ min, max, avg, currency }computed across all variants,topProductTypes,vendors,collectionsCount(from/collections.json), andcreatedSpan(earliest/latest productcreated_at→ catalog freshness). theme— the Shopify theme name, when the store exposes it.
Then the AI layer (OpenAI gpt-4o-mini, fast and low-cost) adds:
storeSummary— one sentence on what the store is.positioning— one sentence on how it positions itself.estimatedMaturity—new/growing/established/null, inferred from catalog size, app stack and product age.dtcSignals— short, concrete observations (e.g."runs Klaviyo + Loox","250+ products","subscription model via Recharge").fitScore(0–100) +fitReason— only when you setyourOffering. The reason is grounded in the apps present or missing (e.g. "no subscription app detected → strong fit for a subscriptions tool"). It never names an app that wasn't actually detected.
Three ways people use it
- Shopify app vendor prospecting — want to detect Shopify apps across a list of stores and find merchants who are missing your category? Set
yourOfferingand the fit score surfaces the stores with the clearest gap ("no reviews app", "no subscription app"), each with the reason spelled out. - DTC competitive analysis — analyze a competitor's Shopify store end to end: how big is their catalog, what price band do they play in, which reviews / email / SMS / upsell apps power their funnel, and how mature does the operation look.
- Ecommerce market research — profile a whole segment of DTC brands at once: catalog sizes, price ranges, app adoption and maturity, all in one dataset ready for a spreadsheet or BI tool.
Input
| Field | Type | Notes |
|---|---|---|
domains | array | Required. Store domains or URLs, one per line (the domain is extracted). |
yourOffering | string | Optional. What you sell to Shopify merchants. Enables the fitScore + fitReason. |
maxProducts | integer | Cap products pulled per store for catalog stats. Default 250. |
maxResults | integer | Max stores to analyze. One pay-per-event charge per store. Default 100. |
maxConcurrency | integer | Stores processed in parallel. Default 5. |
model | string | Override the OpenAI model. Default gpt-4o-mini. |
Minimal input example
{"domains": ["gymshark.com", "allbirds.com"],"yourOffering": "We sell a subscription-billing app for Shopify"}
Output example
{"domain": "gymshark.com","website": "https://gymshark.com","isShopify": true,"platform": "Shopify","productsAccessible": true,"productCount": 250,"productCountCapped": true,"priceRange": { "min": 8, "max": 100, "avg": 49.79, "currency": null },"topProductTypes": ["Womens>Apparel>Leggings", "Mens>Apparel>SS Tops", "Womens>Apparel>Sports Bras"],"vendors": ["Gymshark"],"collectionsCount": 250,"createdSpan": { "earliest": "2017-03-02T10:00:00Z", "latest": "2026-09-30T12:00:00Z" },"apps": [{ "name": "Zendesk", "category": "Support" },{ "name": "Shopify Shop Pay", "category": "Checkout" }],"theme": "Hydra 1.15.0","storeSummary": "Gymshark is a Shopify-based fitness apparel brand with a diverse product range.","positioning": "Sells high-quality fitness apparel for men and women.","estimatedMaturity": "established","dtcSignals": ["250+ products", "average price of 49.79", "runs Zendesk for support"],"fitScore": 80,"fitReason": "no subscription app detected -> strong fit for a subscriptions tool."}
If a store has locked its products.json, it comes back with productsAccessible: false and empty catalog stats — the platform/app detection and AI teardown still run, and the store still counts as analyzed.
Pay-per-event pricing
This Actor uses pay-per-event billing with a single event:
| Event | Price | Charged when |
|---|---|---|
store-analyzed | $0.10 | Once per store analyzed (platform, installed apps, catalog size, price range and AI teardown). |
The Actor logs its OpenAI token usage and the estimated AI cost at the end of every run, so the event price always stays safely above the model cost (a teardown runs around $0.0001–$0.0002 on gpt-4o-mini).
How we read the catalog
Catalog stats come only from the store's own public products.json and collections.json endpoints — the same JSON a browser can request. There is no login, no checkout, no scraping trickery: we page through products.json?limit=250&page=N (capped), read prices off the public variants, and tally product types and vendors. Stores that have locked those endpoints simply return productsAccessible: false.
Setup
The AI teardown calls the OpenAI API. Set the environment variable / secret OPENAI_API_KEY on the Actor. Without it, platform detection, app fingerprinting and catalog stats still run and ship — only storeSummary, positioning, estimatedMaturity, dtcSignals, fitScore and fitReason are left empty.
Use it from an AI agent (Apify MCP server)
This Actor is available through the Apify MCP server, so AI agents (Claude, ChatGPT, or anything that speaks MCP) can call it as a tool — hand it a list of store domains (and optionally yourOffering), and read back the teardowns — with no custom integration code.
Run it locally
npm install# put your input in storage/key_value_stores/default/INPUT.jsonexport OPENAI_API_KEY=sk-... # optional, enables the AI teardownapify run -p
Chain it
This Actor is a building block in the No Niner ecommerce suite. Wire it to the next step with no code in the Integrations tab (trigger: Run succeeded → start the next Actor), or run them in sequence.
- ⬇️ Next: Product Catalog Extractor — pull the full catalog from the stores you flagged.
- ⬇️ Then: DTC Brand Teardown — turn store + catalog + tech into a full battlecard.
Related actors
- Product Catalog Extractor — Pull a store's full product catalog into a clean, structured dataset.
- DTC Brand Teardown — A deeper AI teardown of a DTC brand's site, offer and funnel.
- B2B Tech Stack Detector — Fingerprint the full technology stack behind any website.
- AI Price Intelligence — Track and compare competitor pricing across stores.
Built by the No Niner team.