free · no signup

Klaviyo onsite tracking checker

Check if Klaviyo's onsite script is installed on your site, flag duplicate or render-blocking loads, then confirm Active on Site events in Klaviyo.

Scans the page's HTML in seconds. It also reports every other tracking script it finds.

about Klaviyo

Why it breaks quietly.

Klaviyo's onsite script loads klaviyo.js from static.klaviyo.com with your company ID. It powers signup forms and onsite tracking events like Active on Site and Viewed Product, which feed browse and cart abandonment flows.

When onsite tracking breaks, flows that depend on it simply stop triggering. Email still sends for other flows, so the drop in abandonment revenue is easy to miss.

what the free scan checks

✓

Whether Klaviyo is in the page

The scan fetches the page's HTML and matches the vendor's script URL and install snippet.

✓

Whether it blocks rendering

A script tag without async or defer delays the page from painting. Marketing scripts never need to.

✓

Whether it's installed more than once

Duplicate installs usually send every event twice and inflate conversions.

✓

How exposed the page is to blockers

A server-side readiness grade: whether tags load from domains blocklists target, and whether conversions have a server-side path.

It reads the HTML, so tags injected later (inside GTM, for example) don't show up, and it can't see events fire. That's what verification is for.

common failures

How Klaviyo goes dark.

✗

The company ID is missing or wrong

The script URL carries your public API key as company_id. A missing or copied key means forms and events attach to the wrong account or nowhere.

✗

Visitors are never identified

Klaviyo can only tie browsing to a profile once the visitor is identified, for example by a form submit or a click from a Klaviyo email. Anonymous browsing does not trigger browse abandonment.

✗

Viewed Product is not set up on product pages

Active on Site comes from the base script, but Viewed Product needs its own tracking on product templates. Without it, browse abandonment has nothing to trigger on.

✗

Installed twice on Shopify

Klaviyo's app embed and an old theme snippet can both load the script.

by hand

Check it yourself, step by step.

  1. 1

    In Klaviyo, open Analytics, then Metrics, and check that Active on Site and Viewed Product show recent activity.

  2. 2

    Submit a Klaviyo form with a test email, browse a product, then check that profile's activity feed for the events.

  3. 3

    View the page source and confirm klaviyo.js loads once with the company_id matching your account's public API key.

  4. 4

    On Shopify, check that Klaviyo's app embed is enabled in the theme editor and not duplicated by theme code.

questions

Asked and answered.

Can this check tell me if Klaviyo events are firing?+

No. The scan reads served HTML and can see whether klaviyo.js is present, duplicated or render-blocking. It cannot see Klaviyo loaded at runtime or confirm Active on Site or Viewed Product reach Klaviyo. TracerKit's Verification tier watches real fires and alerts when a tag goes silent.

Why is my browse abandonment flow not sending?+

Usually Viewed Product is not tracked, or visitors are anonymous. Check the metric has recent activity and that test profiles show it.

Where do I find my Klaviyo company ID?+

It is your public API key, also called site ID, under Settings, then API keys in Klaviyo.

check other tags

Know Klaviyo is firing, every hour of every day.

Verification watches each tag on real traffic and emails you the moment one goes silent. 14-day trial, no card.