Site scanner

What we detect on a scan and how.

The scanner is the first step of every TrackingCoder session. You paste a URL, we load the page in a headless browser (Browserless), and parse what's actually on it. The scan returns a structured profile of the stack — that profile drives every subsequent step of the wizard.

What we detect

  • CMS — WordPress, Shopify, Webflow, Wix, Squarespace, Drupal, BigCommerce, Magento, PrestaShop, Joomla, Ghost, custom.
  • Page builder / theme system — Elementor, Divi, Beaver, Gutenberg, Oxygen, Bricks, Webflow components, Shopify themes.
  • E-commerce platform — WooCommerce, Shopify, BigCommerce, Magento, PrestaShop, Squarespace Commerce.
  • Form plugins — Contact Form 7, Elementor Forms, Fluent Forms, Gravity Forms, WPForms, Ninja Forms, Formidable, HubSpot Forms, Mailchimp, Klaviyo embedded, Typeform.
  • Tag managers + analytics — Google Tag Manager, GA4 (gtag.js / GTM-loaded), Universal Analytics legacy, Meta Pixel, Google Ads conversion, LinkedIn Insight Tag, Microsoft UET, HubSpot tracking, Hotjar, Plausible, and ~60 others.
  • IDs already on the site — your GA4 measurement ID, GTM container ID, Meta pixel ID, etc., extracted automatically and offered to you for the ID Vault (see ID Vault).

What it doesn't do

The scan is a single-page snapshot of the URL you provide. It doesn't crawl. It doesn't hit logged-in or password-protected pages. It doesn't guess at server-side behaviour (server-side GTM, custom proxy endpoints, etc.) — only what the browser actually loads.

Common questions

The scan said GA4 was missing but it's definitely installed. Late-loaded analytics (after consent banner accept, or via async chunks) can outrun the scan's timing budget. If you know GA4 is set up, paste the Measurement ID into the ID Vault for that domain — TrackingCoder will treat it as present from then on (the "GA4 missing" warning on the domain card respects vault entries).

It misidentified my CMS. Some CMSes ship without identifying markers, or your team has stripped them for security. You can override the detected stack inside the wizard by picking from the dropdowns — TrackingCoder won't insist on its guess.

The URL I want to track is behind login. Scan a public URL on the same domain (e.g. the homepage or landing page) — the stack detection is site-wide, not page-specific. For the specific page you want to track an event on, paste that URL in the discovery step (the wizard's "Where does this event fire?" question).

Troubleshooting

  • Scan errored / timed out. Usually a slow site (cold cache, heavy third-party scripts). Re-scan once — the backend retries automatically, but only once per request. If it still fails, try the bare apex domain (example.com) rather than a deep path.
  • Detected the wrong e-commerce platform. Some themes mimic platform-specific class names. Override in the wizard; the codegen reads the wizard answer, not the scan, when they disagree.

Need fresher data?

Tools change over time — you re-skinned the site, swapped your forms plugin, added Klaviyo. From the dashboard, click Re-Scan on the domain card to refresh the profile. The wizard will then use the latest signals.