Prismic Page Audit Free online audit tool
Home › All tools › Website template / theme detector

Website template / theme detector

Template and theme detection sits between “what platform is this” and “how hard will changes be.” The same CMS can ship dozens of skins; each skin bundles its own CSS, JavaScript and section grammar. Platforms differ in how much of that skin is visible from a public page. Some expose a theme folder name in every asset URL. Others keep the catalogue name inside an editor that never reaches the HTML you download. This page states what is actually detectable per platform, why the answer still matters for performance and migration cost, and links the related detectors on this site.

What is actually detectable

Shopify: theme names often appear inside cdn.shopify.com/s/files/…/assets/ paths and in section class stems of the form section-- plus a handle (the storefront prefixes the platform name before section--). A numeric theme_id may also surface inside inline scripts or JSON blobs the storefront emits. Those are structural recoveries from the public page — not guesses from the Theme Store catalogue title alone. App blocks and checkout extensions can add more hosts; they do not replace the theme folder clue when it is present in asset URLs.

WordPress: look for /wp-content/themes/<theme>/ in stylesheet and script URLs, plus the theme stylesheet filename itself. Classes prefixed with wp-block- show whether the install leans on block themes and the block editor rather than only classic PHP templates. A theme can still be heavily child-themed; the folder name is the public fingerprint, not a full map of overrides. Plugin CSS that lives outside the theme directory should not be mistaken for the active skin.

Wix: resource hosts such as wixstatic.com and the viewer’s template structure confirm the platform and the general layout family. Catalogue template titles inside that product are usually not exposed to the public HTML — the editor keeps that label inside the product. A honest checker reports platform structure and stays silent on a catalogue name it cannot see. Treating a generic viewer script as a template title would invent certainty the markup does not support.

Joomla: template folders show up as /templates/<name>/ paths and as CSS under templates/<name>/css. Extension and module assets may sit beside that tree. When the folder name is present in real stylesheet links, it is recoverable; when a site rewrites those URLs through a bundler, the public name can vanish. Query arguments that only name a template in the admin are irrelevant on the cached front-end HTML.

Drupal: public files often live under /sites/default/files/, while themes sit in themes/custom/<name> or core/themes/<name>. Libraries and CSS aggregates may still echo the theme machine name. As with other PHP CMS installs, missing paths after a custom front-end rebuild means the theme label is no longer recoverable from the HTML alone. Base themes versus subthemes can both appear; report what the HTML references, not what a private repo might contain.

Why the template matters

Change surface. A section- or block-based theme lets editors rearrange units without touching every page’s HTML. A monolithic theme that inlines layout into each template raises the cost of even small copy or spacing changes. Knowing which model you are in prevents promising edits the skin cannot absorb.

Performance ceiling. Themes ship their own CSS and JavaScript budget. A heavy skin can dominate main-thread time before any third-party pixel is added. Knowing the theme narrows which bundle to profile first, and whether a lighter official skin already exists on the same platform.

Migration cost. Moving to another platform or a leaner theme means rewriting whatever the current skin owns — sections, content types, app blocks, or full page templates. The recoverable theme name is a starting inventory for that rewrite, not the whole project plan. Pair it with a platform detector before estimating hours.

Related detectors

Platform checkers that commonly sit beside template questions are linked below. Open one when you need install confirmation before reading theme paths. Each page returns evidence counts so you can see whether the template folder clue agrees with the platform verdict.

Not every template name is recoverable from a public page — we mark what is structural, and say nothing when it is not.

Going further

If this build is yours, three things usually explain the score: media that enters the CMS without dimensions, slices that re-render the same block, and fonts loaded from a third-party host.

If you would rather hand these fixes over, the contact page lists what I take on.

→ Contact