Installing the script

The install is one script tag in the page head. It loads asynchronously, never blocks rendering, and stores nothing on your visitors’ devices.

Script tag

Copy the tag from Integrations. It carries your publishable key, which is public by design and only works on your own domain.

<script async src="https://…/l.js" data-loop="pk_live_…"></script>

Where it goes on common platforms

PlatformWhere
WordPressAppearance → Theme File Editor → header.php, or a “header scripts” plugin
GhostSettings → Code injection → Site header
TistorySkin editor → HTML → inside <head>
WebflowSite settings → Custom code → Head code
SquarespaceSettings → Advanced → Code Injection → Header
WixSettings → Custom code → Head
ShopifyOnline Store → Themes → Edit code → theme.liquid

Install with AI

Integrations → Install with AI gives an instruction for Claude Code, Cursor or Codex. It names the exact tag to add, where it belongs in your framework, what not to touch, and how to verify the result. It is assembled from fixed, reviewed text and contains only your public key.

React and Next.js

Components that wrap the script and a slot are in the SDK package. The package is not published to npm yet, so most sites should use the script tag; in Next.js App Router, put it in app/layout.tsx or use next/script with the same attributes.

Content-Security-Policy

If your site sends a Content-Security-Policy header, allow the origin of the script in both script-src and connect-src.

How verification works

There is no file to upload and no DNS record. The script calling us from a page on your domain is the proof that you control the site. The first account to do that holds the domain; until then anyone can keep an unverified draft of it, and unverified sites take no part in the exchange.

Questions

How big is the script?
Under 3 KB compressed.
Does it set cookies?
No. It writes nothing to cookies, localStorage or any other storage on the visitor’s device.
Can I load it through a tag manager?
Yes, as long as the tag keeps its data-loop attribute. Loading it directly in the head verifies the site sooner.

NextPlacement →