Skip to content

topshopifydev/ShopSpy

Repository files navigation

ShopSpy logo

ShopSpy

Shopify Store Intelligence — right in your browser

Instantly X-ray any Shopify store: identity, catalog, tech stack, SEO, social & a maturity score. No login. No API keys. No setup. Just click.

MV3 Zero auth 6 modules 50+ signatures No deps MIT


ShopSpy in action

✨ What it does

ShopSpy analyzes the Shopify store in your active tab using only public data — the page DOM, the window.Shopify object, and Shopify's public JSON & sitemap endpoints. The moment you land on a Shopify store, the toolbar icon lights up green; click it for a full intelligence report in under a second.

  • 🟢 Automatic detection — badge turns green on any Shopify store (myshopify.com or custom domain)
  • 🔍 One-click deep scan — six intelligence modules, rendered in a clean, premium UI
  • 📊 Store Maturity Score — an at-a-glance 0–10 rating of how built-out a store is
  • 🧩 50+ app signatures — know exactly which tools a store runs
  • 💾 Export to JSON — one click for a full machine-readable report
  • 🔒 Zero auth, zero tracking — nothing leaves your browser

📸 Screenshots

Store Identity
Module 1 · Store Identity
Catalog Intelligence
Module 2 · Catalog Intelligence
App Stack Detection
Module 3 · App Stack Detection
SEO & Content
Module 5 · SEO & Content
Social & Brand
Module 6 · Social & Brand
Maturity Score
Module 4 · Maturity Breakdown
Not a Shopify store
Graceful empty state when the current tab isn't a Shopify store

🧠 Intelligence modules

# Module What you get
1 Store Identity Shop name · custom + .myshopify domain · country · locale · currency · theme name / version / role
2 Catalog Intelligence Product & collection counts · price min / max / avg · price tier · avg variants · out-of-stock ratio · products with no description · top collections
3 App Stack Detection 50+ signatures across Email, SMS, Reviews, Subscriptions, Upsell/CRO, Support, Analytics & Loyalty
4 Store Maturity Score Weighted 0–10 rating with a full factor breakdown
5 SEO & Content Meta title / description · OG image · blog post count · sitemap presence · JSON-LD structured data + types
6 Social & Brand Instagram · Facebook · TikTok · YouTube · Twitter/X · Pinterest · free-shipping threshold · return policy · trust badges

📊 How the Maturity Score works

Eight signals, capped at 10, mapped to a band (Early-stage → Emerging → Growing → Established):

Factor Points
Product catalog size 0–2
App-stack depth (distinct categories) 0–2
Has a reviews app 0–1
Has email marketing 0–1
Has subscriptions 0–1
Blog activity 0–1
Social presence (≥2 networks) 0–1
Free-shipping offer 0–1

⚙️ How it works — 100% zero-auth

Concern Mechanism
Store detection window.Shopify · cdn.shopify.com assets · myshopify.com refs · digital-wallet meta
Badge state Auto-runs on every page load (tabs.onUpdated) → 🟢 green / ⚪ grey
Page-world data chrome.scripting.executeScript with world: "MAIN" reads window.Shopify + DOM
Catalog & counts Public products.json, collections.json and sitemap.xml sub-sitemaps

No credentials, no OAuth, no Admin API — every endpoint is publicly reachable.


🚀 Install (load unpacked)

git clone https://github.com/topshopifydev/shopspy.git
  1. Open chrome://extensions
  2. Toggle Developer mode (top-right) ON
  3. Click Load unpacked
  4. Select the cloned folder (the one containing manifest.json)
  5. Pin ShopSpy to your toolbar — then visit any Shopify store 🎉

💡 Prefer to preview the UI first? Open preview.html (results view) or preview-empty.html (empty state) directly in your browser — no install needed.


🧩 App detection coverage

EmailKlaviyo · Mailchimp · Omnisend · Drip · Privy · ActiveCampaign
SMSPostscript · Attentive · Yotpo SMS · Emotive
ReviewsYotpo · Judge.me · Loox · Stamped · Okendo · Reviews.io · Fera
SubscriptionsRecharge · Loop · Skio · Seal · Bold · Appstle
Upsell / CROReConvert · Zipify · Rebuy · Candy Rack · Honeycomb · Vitals
SupportGorgias · Zendesk · Tidio · Intercom · Re:amaze · Richpanel · Tawk.to
AnalyticsGA4 · GTM · Meta Pixel · TikTok · Hotjar · Clarity · Triple Whale · Pinterest
LoyaltySmile.io · Yotpo Loyalty · LoyaltyLion · Rivo · Growave

🗂️ Project structure

manifest.json          MV3 manifest (scripting, storage, tabs + <all_urls>)
background.js          Service worker — auto-detection + toolbar badge
popup/
  popup.html/.css/.js  Premium tabbed UI + scan orchestration + JSON export
src/
  signatures.js        50+ app-stack & social detection signatures
  pageExtractor.js     Injected MAIN-world DOM / window.Shopify reader
  storefront.js        Public JSON + sitemap fetch & catalog stats
  score.js             Maturity score computation
icons/                 16 / 48 / 128px outline-style toolbar icons
docs/screenshots/      README media
preview.html           Standalone UI preview (results)
preview-empty.html     Standalone UI preview (empty state)

📝 Notes & limits

  • Catalog stats sample up to 500 products (products.json, 2×250) for speed; total counts come from the sitemap and are accurate for the whole store.
  • Password-protected or heavily bot-blocked storefronts may expose less data.
  • Theme version is best-effort — Shopify doesn't always expose it publicly.
  • Everything runs locally in your browser. ShopSpy makes no external calls beyond the store you're viewing.

Built with vanilla JS · Manifest V3 · zero dependencies — because good tools shouldn't need a build step.

About

🛍️ Chrome extension that instantly analyzes any Shopify store — identity, catalog, app stack, SEO, social & a 0–10 maturity score. Zero authentication required.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages