Pages and copy
Shopify app detector
Enter a store's address to see which apps its page loads: apps named from their documented script hosts, theme app extensions, app loader scripts and every other host. Free, and it says what it cannot see.
Documented hosts
Apps named only from script hosts checked on each vendor's own documentation.
App code listed
Theme app extension folders, app loader hosts and unknown script hosts, shown as found.
Honest limits
Says what no detector can see: apps with no storefront code are not in the page.
Past clients or mentioned on
Shopify app detector: what apps is this store using?
Free, no sign-up. Enter a store's address and Convertica's server reads that one page, or paste the page source and it is read in your browser. Below is the result for a made-up store.
Paste the page source instead
Shopify apps found in the page
3 apps named
3 recognized apps or services, 1 theme app extension folder and 2 app loader hosts.
Theme: Example Theme, version 2.3.0.
Apps with no storefront code cannot be seen, so this is not a complete list.
Example result, for the made-up store in the worked example
Apps and services recognized
- Recognized
- 3 apps or services
Found, with the host and where it appeared
- Affirm (cdn1.affirm.com; script)
- Klaviyo (static.klaviyo.com; inline script, app loader)
- Meta Pixel (connect.facebook.net; inline script)
Matched against a list of 41 apps and services, each checked against its vendor's own documentation. Anything else is listed below as an unknown host.
Shopify app code on the page
- Theme app extensions
- 1 extension folder
- App loader scripts
- 2 hosts
As named in the page
- Extension folder: example-bundles
- App loader host: static.klaviyo.com
- App loader host: app.example-upsell.net
Extension folders are named by each app's developer, so a name may not match the app's listing. Loader hosts are the scripts Shopify writes into the page for installed apps.
Other script hosts, not recognized
- Hosts
- 1 host
Scripts load from
- app.example-upsell.net
These are not in our list, so they are not named. A host is often the vendor's own domain: look it up before you assume what it is.
Shopify theme
- Theme
- Example Theme, version 2.3.0
The Shopify theme detector reads the theme in full: its version, Theme Store ID and the store's name for its copy.
Platform
- Shopify
- Yes: the Shopify.theme object, a myshopify.com address in Shopify.shop and a powered-by: Shopify response header
- WordPress
- No sign of WordPress in this HTML
Short answer
A Shopify app detector reads a store's page and lists the apps its code comes from. Convertica's free Shopify app detector names an app only when a script host from its vendor's own documentation appears, lists theme app extension folders and app loader hosts as found, and shows the theme on one line. Apps with no storefront code stay invisible.
- Apps are named only from a list of 41 script hosts, each read on the vendor's own documentation. Every other host is listed, not guessed.
- Theme app extension folders and Shopify's app loader list show app code even when no vendor host is in the page.
- Not found does not mean not installed: admin, checkout, email and back office apps leave nothing in the storefront's HTML.
- Check a product page and the cart as well as the homepage. Many apps load only where they are used.
How to see what apps a Shopify store is using
To see what apps a Shopify store is using, read the code its page loads. A storefront app usually leaves one of three traces in the HTML: a script from the vendor's own server, a file in a theme app extension folder on Shopify's CDN, or an entry in the app loader list Shopify writes into the page. The Shopify app detector reads all three.
-
Enter the store's address
Type the homepage address and press "Detect the apps". The detector fetches that one page as it is sent, before any JavaScript runs, and lists what it finds.
-
Read the named apps first
An app is named only when one of its documented script hosts is in the page. The result says where each host appeared: a script tag, the app loader list, an inline script, a stylesheet or a frame.
-
Look up the extension folders and unknown hosts
Theme app extension folders carry a handle chosen by the app's developer. Unknown hosts are often the vendor's own domain. Search the Shopify App Store or the host itself before you decide which app it is.
-
Check a product page and the cart too
Reviews, bundles, upsells and size guides often load only on the pages where they are used. Run the detector again on a product page to see them.
How to check a store's apps by hand
You can check a store's apps by hand in any desktop browser with View Page Source. Search the source for script hosts, for Shopify's theme app extension path and for the app loader list. It takes a few minutes per page and finds the same traces this detector reads, but nothing tells you which host belongs to which app. To see how well-known stores put their apps and pages together, browse our ecommerce website examples.
- Open the page source. Open the store, then choose View Page Source (Ctrl+U, or Cmd+Option+U on a Mac).
- Search for
/extensions/. Each match undercdn.shopify.com/extensions/is a theme app extension. The folder after the long ID is the extension's handle, followed by a version number. - Search for
asyncLoad. The list of addresses next to it holds the scripts Shopify adds for installed apps that still use script tags. - Search for
<script src=. Note every host that is not the store's own domain or Shopify's. - Look up each host. Check the vendor's own documentation for that host before you name the app. A look-alike domain is not the same vendor.
How does the detector recognize a Shopify app?
The detector recognizes a Shopify app from three kinds of evidence in the page's HTML, and treats them differently. A documented vendor host names the app. A theme app extension folder or an app loader host shows that app code is there, but is reported as found, without a name, because the detector cannot prove which app it belongs to.
| Evidence in the page | Example | What the detector does with it |
|---|---|---|
| Script host | cdn1.affirm.com | Names the app when the host is in our list of 41 apps and services |
| App loader list | static.klaviyo.com, app.example-upsell.net | Names a host that is in the list; shows the others as unknown hosts |
| Inline script | connect.facebook.net | Names the app when an address written inside a script has a listed host |
| Theme app extension folder | example-bundles | Lists the handle as found, without naming an app |
| Any other host | app.example-upsell.net | Lists it as unknown, for you to look up |
| Shopify.theme | Example Theme | Shows the theme on one line; the Shopify theme detector reads it in full |
Worked example: reading an app result
The example result at the top of this page comes from a made-up store at https://shop.example.com/. Every name and number in it is invented to show how the detector reads a page. This is the part of its source that matters:
<!doctype html>
<html lang="en">
<head>
<title>Example Outfitters</title>
<script>
var Shopify = Shopify || {};
Shopify.shop = "example-outfitters.myshopify.com";
Shopify.theme = {"name":"Live theme","id":140000000002,"schema_name":"Example Theme","schema_version":"2.3.0","theme_store_id":null,"role":"main"};
</script>
<script>
(function () {
function asyncLoad() {
var urls = ["https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=XXXXXX\u0026shop=example-outfitters.myshopify.com","https:\/\/app.example-upsell.net\/storefront.js?shop=example-outfitters.myshopify.com"];
}
})();
</script>
<script src="https://cdn.shopify.com/extensions/0190aaaa-bbbb-7ccc-8ddd-eeeeffff0001/example-bundles-14/assets/bundle.js" defer></script>
<script async src="https://cdn1.affirm.com/js/v2/affirm.js"></script>
<script>!function(f,b,e,v){var s=b.createElement(e);s.async=!0;s.src='https://connect.facebook.net/en_US/fbevents.js';}(window,document,'script');</script>
</head>
<body>
<h1>Example Outfitters</h1>
</body>
</html>
The detector names three apps. Affirm comes from a script tag on cdn1.affirm.com, the host in Affirm's own setup documentation. Klaviyo comes from the app loader list, where static.klaviyo.com appears. Meta Pixel comes from an address written inside an inline script.
The second loader script, from app.example-upsell.net, is not in the list, so it is shown as an unknown host. The extension folder example-bundles hints at a bundles app, but the detector reports the folder name only. The theme, Example Theme version 2.3.0, is one line at the end.
Which Shopify apps can it name?
The detector can name the 41 apps and services in the table below, and only those. Each one is named when one of its script hosts appears in the page, and each host was read on the vendor's own documentation, help center or developer pages on the date shown. A host that is not in the table is listed as unknown.
| App or service | Script host | Source | Read |
|---|---|---|---|
| Affirm | cdn1.affirm.com | Affirm developer docs | 25 October 2026 |
| Afterpay (older messaging script) | js.afterpay.com, portal.afterpay.com | Afterpay developer docs | 21 October 2026 |
| Amplitude | cdn.amplitude.com | Amplitude docs | 25 October 2026 |
| Attentive | cdn.attn.tv | Attentive help center | 21 October 2026 |
| Crisp | client.crisp.chat | Crisp developer docs | 25 October 2026 |
| Fera | cdn.fera.ai | Fera help center | 25 October 2026 |
| Google Maps JavaScript API | maps.googleapis.com | Google Maps Platform docs | 25 October 2026 |
| Google tag | www.googletagmanager.com | Google tag docs | 21 October 2026 |
| Gorgias chat | config.gorgias.chat | Gorgias docs | 21 October 2026 |
| Heap | cdn.us.heap-api.com | Heap docs | 25 October 2026 |
| Hotjar | static.hotjar.com, script.hotjar.com | Hotjar help center | 21 October 2026 |
| HubSpot tracking code | js.hs-scripts.com | HubSpot developer docs | 21 October 2026 |
| Intercom | widget.intercom.io | Intercom developer docs | 21 October 2026 |
| Judge.me | cdn.judge.me | Judge.me help center | 21 October 2026 |
| Klarna on-site messaging | js.klarna.com | Klarna docs | 21 October 2026 |
| Klaviyo | static.klaviyo.com | Klaviyo developer docs | 21 October 2026 |
| LiveChat | cdn.livechatinc.com | LiveChat platform docs | 25 October 2026 |
| Loox | loox.io | Loox support | 21 October 2026 |
| Lucky Orange | tools.luckyorange.com | Lucky Orange developer docs | 21 October 2026 |
| Mailchimp (connected site) | chimpstatic.com | Mailchimp developer docs | 21 October 2026 |
| Meta Pixel | connect.facebook.net | Meta for Developers | 21 October 2026 |
| Microsoft Advertising UET tag | bat.bing.com | Microsoft Advertising help | 25 October 2026 |
| Microsoft Clarity | www.clarity.ms | Microsoft Clarity blog | 21 October 2026 |
| Nosto | connect.nosto.com | Nosto tech docs | 25 October 2026 |
| Okendo (referrals) | d3hw6dc1ow8pp2.cloudfront.net | Okendo help center | 21 October 2026 |
| Olark | static.olark.com | Olark help | 25 October 2026 |
| Omnisend | omnisnippet1.com | Omnisend API docs | 21 October 2026 |
| Pinterest tag | s.pinimg.com, ct.pinterest.com | Pinterest help | 21 October 2026 |
| Postscript | sdk.postscript.io | Postscript help center | 21 October 2026 |
| Rebuy | cdn.rebuyengine.com | Rebuy developer docs | 21 October 2026 |
| Recharge | static.rechargecdn.com | Recharge storefront docs | 21 October 2026 |
| Smile.io | js.smile.io, sdk.smile.io | Smile.io developer docs | 21 October 2026 |
| Snap Pixel | sc-static.net | Snap developer docs | 25 October 2026 |
| Stamped | cdn1.stamped.io | Stamped support | 21 October 2026 |
| Stripe.js | js.stripe.com | Stripe docs | 25 October 2026 |
| tawk.to | embed.tawk.to | tawk.to help center | 25 October 2026 |
| Tidio | code.tidio.co | Tidio developer docs | 21 October 2026 |
| Trustpilot TrustBox | widget.trustpilot.com | Trustpilot help | 21 October 2026 |
| VWO | dev.visualwebsiteoptimizer.com | VWO help center | 25 October 2026 |
| Yotpo | cdn-widgetsrepository.yotpo.com, staticw2.yotpo.com | Yotpo support docs | 21 October 2026 |
| Zendesk Web Widget | static.zdassets.com | Zendesk developer docs | 21 October 2026 |
The list is short on purpose. Many popular apps serve their storefront code from Shopify's own CDN through theme app extensions, so no vendor host ever appears, and others document no host at all. Naming those from a folder handle or a guess would be wrong too often, so they show up as extension folders or unknown hosts instead.
What this Shopify app detector cannot see
This Shopify app detector reads one page's HTML and nothing else. It does not log in, run JavaScript, crawl the store or see the admin, so any app that keeps its code out of the page source is out of reach. That holds for every detector that reads the page: none can show a store's full app list.
- Apps with no storefront code. Apps for the admin, inventory, fulfillment, email, reports or accounting work on Shopify's side and leave nothing in the HTML. So do most checkout changes.
- Code that loads later. Scripts that another script adds after the page loads, and apps that load only on product, collection or cart pages, are missed on the page you did not check.
- Apps served from Shopify's CDN. A theme app extension shows up as a folder handle, not as a named app.
- Headless stores. A storefront built outside Shopify's themes has no app loader list or theme app extensions to read.
- Password pages. A store behind its password page sends that page instead of the storefront.
- Its own fetch. It sends a user agent that names Convertica, from Cloudflare's network, so a store that turns unknown fetchers away may block it. Paste the page source instead. It follows up to five redirects, waits 8 seconds per fetch and 20 in all, reads the first 1.5 MB of a page, and allows 10 checks per 10 minutes per IP address.
What to do once you know a store's apps
Knowing a store's apps tells you how it was built, not why it sells. An app list is a shortlist of tools to consider, and a reminder that every app with storefront code adds files the browser must fetch and run. The offer, the product pages and the checkout still decide how many visitors buy.
- Pick apps for a job, not a list. If a competitor's reviews or bundles look good, decide what job they do on your store and compare apps for that job, rather than copying the whole stack.
- Run the detector on your own store. Apps you uninstalled can leave code behind in the theme. An app you no longer use that still loads a script is worth removing.
- Watch what loads before the page is usable. A script in the head that is not marked async or defer makes the browser wait for it. The crawlability test shows what the HTML sends before JavaScript runs.
- Measure the page, not the app count. The free CRO audit checks speed, trust and the first screen among its eight checks, and the Shopify conversion rate optimization guide covers what usually matters more than any single app.
Want the theme as well? The Shopify theme detector reads the same page and leads with the theme's schema name, version and Theme Store ID.
See all free tools and how they fit together.
Shopify app detector FAQ
What is a Shopify app detector?
A Shopify app detector reads a store's public page and lists the apps whose code that page loads. Most storefront apps add a script from the vendor's own server, a theme app extension file on Shopify's CDN, or an entry in the app loader list Shopify writes into the page. A detector reads those traces without any access to the store.
How can I see what apps a Shopify store is using?
Enter the store's address in the detector above. To check by hand, open the store, choose View Page Source and search for script tags, for cdn.shopify.com/extensions/ and for asyncLoad, the list of app scripts Shopify adds. Each host or folder you find points to an app; look it up before you assume which one.
Can a Shopify app detector see every app a store has installed?
No. Many apps load nothing on the storefront: apps for the admin, inventory, shipping labels, email, accounting or checkout leave no trace in the page's HTML. Apps that load only on product or cart pages, or only after JavaScript runs, are also missed on the homepage. A store's full app list is visible only in its own admin.
How does this detector name an app?
Only when one of the app's documented script hosts appears in the page. The list has 41 apps and services, and each host was read on the vendor's own documentation or help center. Theme app extension folders and app loader hosts are listed as found, and any other script host is listed as unknown rather than guessed.
Why does a theme app extension folder have an odd name?
The folder is named after the extension's handle, which the app's developer chooses, plus a version number that the detector removes. The handle often matches the app's name, but not always. Search the Shopify App Store for it, and treat it as a lead rather than proof of which app it is.
Does a store owner know I checked their apps?
The store sees one ordinary page request from Convertica's server, with a user agent that names the tool, not from your browser. Paste mode sends nothing to the store at all. Neither mode tells the owner who you are.
Do more apps make a Shopify store slower?
Each app that loads code on the storefront adds files the browser has to fetch and run, and some run before the page can be used. Whether that costs sales depends on what each script does and when it loads. Measure your own page rather than counting apps; the free CRO audit checks speed among its eight checks.
Is the Shopify app detector free, and where does my data go?
It is free, with no sign-up. The address you enter is sent to Convertica's server, which fetches the page once and returns the result. The address, the page and the result are not stored. To limit abuse, it allows 10 checks per 10 minutes per IP address. A pasted source is read in your browser and is not sent anywhere.