Script Installation
For non-Shopify websites. Generate your embed code and paste it before your closing </body> tag.
An AI assistant can do this for you. It can scan your site, create the account and register the domain over plain HTTP, then hand you the finished script tag - you only confirm a six-digit code from your inbox. See the Agent API.
Using Shopify?
Install via the Shopify App Store instead for automatic setup and theme editor integration.
Generate Your Code
Enter your domain aboveRegister your domain in the panel first - an unregistered domain has no bundle to serve, so the tag does nothing. Every plan carries a monthly allowance of unique visitors: on Free and Starter the widget stops serving once the allowance is reached, and on Pro and Enterprise it stays visible.
Platform Guides
Step-by-step instructions for specific platforms:
Verify Installation
- Visit your website
- Look for the accessibility icon in the corner
- Click to open the panel
- Check your panel for stats
Troubleshooting
Work through these in order — the first two account for most reports.
- The domain in the script URL does not match the site
- Bundles are generated per domain, and one only runs on domains registered to the same website. A tag pointing at
/w/example.com.jsdoes run onshop.example.comonce you have added that subdomain to the same website, and logs a licensing error in the console until you have. Use the tag built for each domain even so: the domain in the URL is the one a visit is attributed to. A leadingwww.is stripped, so the www and non-www forms are one domain and share one tag. - The domain is not registered in the panel
- A domain that has not been added to a website gets a harmless one-line stub instead of the widget, so the tag loads cleanly and nothing appears. Open the script URL directly in a browser tab and read what comes back: a single
console.logsaying the domain is not registered means registration is the missing step. A similar one-line stub, with its own message, is served when the widget is switched off in the panel, or when the monthly visitor allowance has been reached on a plan that hides the widget past it. - The tag is not in the served HTML
- Use View Source rather than the DevTools element inspector — the inspector shows the live DOM, which can differ. If the tag is absent, the platform did not render your change: usually an unpublished edit or a page cache that still holds the previous HTML.
- The request is blocked by a Content Security Policy
- The browser console names the directive when this happens. Add
https://app.inclusifyapp.comtoscript-srcandconnect-src. Magento 2.4.7 and hardened WordPress installs are the usual sources. - The script loads but settings look out of date
- Saving in the panel purges the bundle from the CDN, so a change normally reaches visitors straight away. If a purge does not land, shared caches hold the bundle for up to an hour, and a browser that already fetched a copy can hold it longer. Append a query string such as
?v=2to the script URL to confirm the newer version exists, then wait for the cache to turn over. - A build step rewrote the tag
- Minifiers and “combine JavaScript” options in caching plugins can move or inline the tag in ways that break it. Exclude the widget host from those optimisations.