Widget docs

Everything you need to get the chat widget live on your site and answering visitors in your voice.

Install

Paste this one tag into your site, replacing YOUR_SITE_ID with the ID from your site page. We load asynchronously and never block your page.

<script async src="https://widget.domlabs.dev/v1/chat.js" data-site-id="YOUR_SITE_ID"></script>

Loads async after your page renders · ~10 KB · never blocks your site.

Rather not touch your site’s code? We’ll install it for you: email us with your platform and we’ll take it from there.

Platforms

Where to paste the tag on the platforms we see most.

WordPress

Add it to your footer via a code-snippets plugin, or paste it before </body> in your theme’s footer.php.

Shopify

Edit your theme’s theme.liquid and paste the tag just before the closing </body>.

Webflow

Project Settings → Custom Code → Footer Code, then publish.

Squarespace

Settings → Advanced → Code Injection → Footer.

Wix

Settings → Custom Code → add to Body - end, on all pages.

Plain HTML

Paste the tag just before the closing </body> tag on every page.

Verify ownership

Before we index your pages, we confirm you own the domain. Pick whichever method is easiest. Any one works.

  1. 01

    Paste the tag· easiest

    Once the script is live on your homepage, we detect it automatically. Just click Verify on your site page.

  2. 02

    Meta tag

    Add this tag to your homepage <head>, swapping in the token from your site page.

    <meta name="dl-verify" content="YOUR_TOKEN">
  3. 03

    DNS TXT

    Add a TXT record on your domain using the token from your site page. DNS can take a few minutes to propagate.

    _domlabs.YOUR_DOMAIN TXT YOUR_TOKEN

Appearance

Set the greeting, accent color, which side of the page the launcher sits on, the starter questions visitors can tap before their first message, and custom instructions for how the assistant answers — all from your site’s page in the dashboard. No code changes needed. Edits reach your live widget within a few minutes, and the preview on that page shows the result instantly.

Open from your page

Any element on your site can open the chat, optionally asking a question for the visitor so they land mid-conversation. Add the attribute to a button or link — no JavaScript needed:

<button data-dl-chat-open="Do you ship internationally?"> Ask us anything </button>

Or call it from your own code. Leave the question out to just open the panel:

window.DomLabsChat?.open("Do you ship internationally?");

Works on every plan.

FAQ

Does it slow my site?
No. The script loads asynchronously, weighs about 10KB, and never blocks your page from rendering.
What does it answer from?
Only your indexed pages: the content we crawled from your site. If it doesn’t know, it says so rather than guessing.
How do I re-index after updating my site?
Open the site’s page in your dashboard and hit Re-crawl. We’ll fetch your pages again and rebuild the index.
How many messages do I get?
The free tier includes 250 visitor messages per month per site. Your usage meter lives on the site’s page.
How do I remove it?
Delete the script tag from your site to take the widget down. Use Delete site in the dashboard to remove your indexed data from our servers.

Troubleshooting

The launcher doesn’t appear
Check the tag is before </body> and the page is published. If your site sends a strict Content-Security-Policy, allow our script origin in script-src and your API origin in connect-src.
Verify says “not detected yet”
Make sure the tag (or meta tag) is live on your homepage, not just saved in a draft, then try again. For DNS, give the record a few minutes to propagate.
The crawl failed
Your site page shows the reason. Most often the site blocked our crawler or was briefly unreachable. Fix and hit Re-crawl. Still stuck? Email us.
Answers feel out of date
The widget answers from the last crawl. Re-crawl after big content changes.

Can’t find what you need? [email protected]. We answer.