These platforms all work the same way: find the field that injects code into
<head>, paste the tag, save, publish. What differs is where the field is, and
whether your plan has one at all.
The tag
<script
defer
data-website-id="ts_a1b2c3d4e5f6"
data-domain="example.com"
src="https://truestat.io/js/t.js"
></script>Copy it from your site's install page in the app, where your key is already filled in.
Where the field is
| Platform | Path | Plan needed |
| Squarespace | Settings → Advanced → Code Injection → Header | Business plan or higher |
| Wix | Settings → Tracking & Analytics → + New Tool → Custom. Set Add Code to Pages to All pages and Place Code in to Head | Any Premium plan |
| Ghost | Settings → Code injection → Site header | Any |
| Bubble | Settings → SEO / Metatags → Advanced → Script/meta tags in header | Any paid plan |
| Podia | Site → Settings → Advanced → Custom HTML head code | Any |
| Kajabi | Website → Themes → Customize → Header code | Any |
Squarespace Settings → Advanced → Code Injection with the TrueStat snippet in the Header field. Squarespace admin UI, light.
Wix Settings → Tracking & Analytics, the Custom Code dialog with the snippet pasted, "All pages" selected, and "Head" selected as the placement. Wix admin UI, light.
Ghost Settings → Code injection with the TrueStat snippet in the Site header field. Ghost admin UI.
The plan trap — read this before you debug anything
Squarespace, Wix and Bubble all gate custom code behind a paid plan, and none of them tell you. On a plan without the feature, the field either is not there, or accepts your paste, saves it happily, and then simply does not emit the code on the published page. There is no warning and no console error.
The signature is exactly this: snippet pasted, saved, published, zero events, nothing in the browser's network tab. If you are on Squarespace's Personal plan, a free Wix site, or Bubble's free plan, that is the answer — not a broken tag.
To confirm in ten seconds: load your published page, view source, and search for
truestat. If it is not in the HTML, the platform stripped it.
Squarespace specifically: Code Blocks are available on lower plans and Code Injection is not, but Code Blocks do not execute JavaScript below the Business plan. A Code Block is not a workaround.
The preview trap
Ghost and Squarespace apply header code to the published site, not the preview. Publish first, then load the real URL.
The Wix iframe trap
Wix offers an "Embed HTML / iframe" element as an alternative way to add code. Do not use it for TrueStat. An iframe is a separate document with its own URL, so the script would track the iframe rather than your page — and it does not track inside iframes by default anyway, so most likely you would get nothing at all. Use the Custom Code path in the table above.
Custom events
Most of these platforms let you set custom attributes on an element, or drop in a small script block. Either works:
<button data-ts-goal="signup">Sign up</button><script>
window.truestat("signup");
</script>Verify
Publish, load the live site in a private window, and check the install page in the app. If it stays on Waiting for your first event, work through No events are showing up — but check the plan trap above first, because on these platforms it is the most common cause by a wide margin.