Identifying whether a website is built on Shopify is a common task in web scraping, market research, competitive analysis, lead generation, and ecommerce technology mapping. Done well, it can help researchers understand platform adoption, segment merchants accurately, and avoid unreliable assumptions. Done poorly, it can produce false positives, violate site policies, or create datasets that are difficult to trust. The best approach is methodical: combine multiple indicators, respect technical and legal boundaries, and document confidence levels rather than treating every signal as absolute proof.
TLDR: The most reliable way to identify Shopify stores is to use a combination of technical signals, including page source patterns, asset URLs, headers, checkout behavior, and DNS clues. No single indicator should be treated as definitive, because themes, apps, proxies, and custom storefronts can obscure or imitate Shopify patterns. Ethical scraping, rate limiting, robots.txt review, and transparent data handling are essential. For research quality, assign confidence scores and validate samples manually.
Why Shopify Identification Requires Care
Shopify is widely used by businesses of all sizes, from small direct-to-consumer brands to large international retailers. Because of this popularity, identifying Shopify stores can be valuable for building market intelligence reports, analyzing ecommerce trends, or creating datasets of merchants in specific categories. However, ecommerce websites are increasingly complex. Many stores use custom domains, headless architecture, third-party storefronts, content delivery networks, and privacy tools that make platform detection less straightforward.
A serious research workflow should avoid quick conclusions based on one visible element. For example, a URL containing cdn.shopify.com is a strong signal, but it may appear on a non-Shopify site that embeds assets from a Shopify-powered store. Likewise, a site may be built on Shopify but hide many obvious references through custom frontend development. The key is to evaluate clusters of evidence.
Start with the Page Source
The HTML source of a website often contains useful clues. Shopify stores commonly include references to Shopify-hosted assets, theme structures, and JavaScript variables. When scraping public web pages for research, examine the source for patterns such as:
cdn.shopify.comasset referencesShopify.themeJavaScript objectsShopifyAnalyticsscripts/cart.js,/products/, or/collections/URL structures- Meta tags or scripts associated with Shopify storefront behavior
These indicators are useful because Shopify themes and apps often rely on predictable frontend resources. Still, researchers should be cautious. Modern bundling, minification, app integrations, and custom development can alter or hide many of these signals. In a robust scraper, source-based checks should be only one part of a broader scoring model.
Check Common Shopify Endpoints
Shopify stores often expose public endpoints that support normal storefront functions. For identification purposes, researchers may test non-invasive public paths such as /cart.js, /products.json, or /collections.json. If these endpoints return structured responses consistent with Shopify behavior, they can provide strong supporting evidence.
However, endpoint testing must be conducted responsibly. Automated requests should be limited, spaced out, and designed to avoid unnecessary load. Never attempt to bypass authentication, access private data, exploit vulnerabilities, or collect information that is not publicly intended. A valid research process focuses on platform identification and publicly available storefront information, not intrusive probing.
It is also important to account for configuration differences. Some stores disable or restrict particular JSON endpoints. Some use apps or middleware that alter responses. Others run headless storefronts where the public site does not behave like a traditional Shopify theme. Therefore, the absence of one endpoint should not automatically disqualify a site from being Shopify.
Analyze URL Patterns and Site Structure
Shopify stores typically use recognizable URL structures. Product pages often appear under /products/, collection pages under /collections/, and cart functionality under /cart. These patterns are not exclusive to Shopify, but they are common enough to be useful when combined with other indicators.
Look for consistency across the site. A genuine Shopify store will often show multiple related patterns, such as collection pages linking to product handles, product pages containing variant data, and cart routes using Shopify-like behavior. A single matching URL pattern may be coincidental; several matching patterns across different page types are more meaningful.
For higher-quality datasets, consider recording which signals were found for each domain. For example, store a record such as: Shopify CDN found, product URL pattern found, cart endpoint confirmed, checkout redirect observed. This makes results easier to audit and improves transparency.
Review Asset Hosting and CDN References
One of the most recognizable indicators is the use of Shopify’s content delivery network. Many Shopify storefronts serve theme files, product images, and scripts from cdn.shopify.com. Scrapers can detect these references in HTML, CSS, JavaScript files, and image URLs.
This signal is strong, but not perfect. A Shopify merchant might syndicate product images elsewhere, or another website might embed an image hosted on Shopify’s CDN. Conversely, a Shopify Plus merchant or headless setup may use a custom frontend with fewer visible Shopify URLs. For this reason, CDN references should be considered high-value evidence but not a final conclusion on their own.
Inspect Checkout and Cart Behavior
Checkout behavior can be another reliable clue. Traditional Shopify stores often redirect checkout activity to Shopify-managed checkout paths or domains, especially when a user proceeds from cart to checkout. Researchers should be careful here because checkout testing can cross into sensitive territory if handled improperly.
Best practice is to observe public, non-transactional behavior only. For instance, examining whether a cart form action references a Shopify route can be acceptable. Simulating purchases, submitting personal information, or creating abandoned checkouts at scale is not appropriate for ordinary research and may violate terms of service or applicable laws.
When checkout evidence is available without intrusive interaction, it can substantially increase confidence. Combined with Shopify CDN references and storefront endpoint behavior, checkout clues often provide a reliable confirmation.
Use HTTP Headers and Cookies Carefully
HTTP headers and cookies may also reveal platform information. Shopify-related cookies, cache headers, or server behavior can help identify a store. For example, storefronts may set cookies associated with cart sessions, localization, tracking, or Shopify analytics. Headers may also reflect CDN or platform infrastructure.
That said, headers are frequently affected by Cloudflare, reverse proxies, custom hosting layers, and third-party applications. A serious scraper should not rely on headers alone. Instead, treat them as supporting evidence. If a site has Shopify-like cookies, Shopify CDN assets, product page structures, and a functioning cart endpoint, the combined case is much stronger.
Consider DNS and Domain Clues
DNS records can sometimes help with Shopify detection. Many stores using custom domains point to Shopify infrastructure through CNAME or A records. Common Shopify configuration patterns may appear in DNS lookups, especially for subdomains such as www.
DNS analysis is useful because it is independent of page content, but it has limitations. Large brands may use custom infrastructure, reverse proxies, or headless deployments. Some non-Shopify sites may have historical or partial DNS references that no longer reflect the current platform. Like other methods, DNS should be included as one signal in a broader framework.
Account for Headless Shopify and Shopify Plus
Not all Shopify stores look like standard Shopify theme sites. Larger merchants may use Shopify as the backend while delivering the frontend through a custom application built with frameworks such as React, Next.js, or Hydrogen. In these cases, the site may not expose the typical theme structure, and Shopify references may be limited or absent from the initial HTML.
To identify headless Shopify implementations, researchers may need to look for API patterns, checkout redirects, product data structures, or subtle asset and network behavior. This should still be done within ethical limits. The goal is not to reverse engineer private systems, but to classify publicly observable technology accurately.
For Shopify Plus merchants, custom checkout capabilities and enterprise integrations can also reduce obvious signals. As a result, classification models should include a category such as possible Shopify or likely Shopify rather than forcing a binary decision in every case.
Build a Confidence Scoring Model
The most dependable research workflows use confidence scoring. Instead of labeling a domain as Shopify based on one rule, assign weights to multiple indicators. A possible scoring model might look like this:
- Strong signal: confirmed Shopify JSON endpoint, Shopify checkout route, multiple Shopify CDN assets
- Moderate signal: Shopify JavaScript objects, cart route behavior, product and collection URL patterns
- Weak signal: isolated CDN image, ambiguous cookie, single Shopify-like URL pattern
A site with several strong and moderate signals can be classified as high confidence. A site with only one weak signal should remain unclassified or be marked for review. This approach improves accuracy, reduces false positives, and makes the research defensible.
Validate with Manual Review
Even well-designed scrapers benefit from human validation. Select a sample of classified stores and review them manually. Check the source, navigate product pages, observe cart behavior without completing transactions, and compare findings against your automated results.
Manual review helps uncover systematic errors. For example, your scraper may overvalue CDN images, miss headless implementations, or misclassify sites using Shopify buy buttons embedded inside non-Shopify websites. Periodic validation is especially important when scraping at scale, because small errors can become significant when multiplied across thousands of domains.
Respect Legal, Ethical, and Operational Boundaries
Responsible scraping is not only a technical matter; it is also an ethical and legal one. Always review a site’s terms of service, robots.txt file, and applicable laws before collecting data. Use rate limits, identify your crawler where appropriate, and avoid collecting personal data unless you have a lawful basis and a clear purpose.
Researchers should also minimize requests. If you can identify a platform from the homepage source and one public endpoint, there is usually no reason to crawl hundreds of pages. Avoid actions that create server-side state, such as adding items to carts at scale, submitting forms, or triggering checkout sessions. A trustworthy research process is proportional, transparent, and respectful of website resources.
Maintain Clean and Auditable Data
Good research depends on good records. For every domain, store the detected signals, timestamp, HTTP status, confidence score, and any relevant notes. This makes it possible to reproduce findings, review disputed classifications, and refresh outdated records. Ecommerce platforms can change over time, so a domain identified as Shopify six months ago may not still be Shopify today.
It is also wise to separate raw observations from final labels. For example, keep fields such as shopify_cdn_detected, cart_endpoint_confirmed, and checkout_signal_found separate from the final classification. This structure supports better analysis and prevents a single mistaken assumption from contaminating the entire dataset.
Common Mistakes to Avoid
- Relying on one signal: A single CDN link or URL pattern is not enough for a reliable classification.
- Ignoring headless stores: Some Shopify merchants intentionally hide traditional theme indicators.
- Over-scraping: Excessive requests are unnecessary and can create legal, ethical, and operational risks.
- Failing to recheck data: Ecommerce platforms change, and old classifications can become inaccurate.
- Mixing embedded commerce with full-platform use: A Shopify buy button on a non-Shopify site does not always mean the entire site is a Shopify store.
Conclusion
Identifying Shopify stores accurately requires discipline, restraint, and a multi-signal methodology. The strongest results come from combining page source analysis, endpoint checks, URL structure, asset hosting, checkout clues, headers, DNS patterns, and manual validation. Each indicator has limitations, but together they can produce a reliable view of whether a website is likely powered by Shopify.
For serious web scraping and research, the objective should not be merely to detect Shopify as quickly as possible. The objective should be to produce classifications that are accurate, explainable, and ethically obtained. By using confidence scores, maintaining auditable records, respecting site boundaries, and validating results, researchers can build datasets that stand up to scrutiny and provide real value.