BotNotice setup guide
Most sites are live in about 10 minutes. You need access to your website builder and your BotNotice account.
Developer or AI agent? The API, the MCP server and the open law dataset →
On this page
1. Install the app
BotNotice works two ways: on any website, through a one-line snippet (section 4), and inside your CRM, through the BotNotice app in its marketplace. The app adds the Voice AI pieces: a consent check before an AI call, a receipt after each one, and the disclosure line written into your agent's greeting.
- Open the app marketplace in your CRM and search for BotNotice.
- Select Install and choose the sub-account to install it on. One install covers one sub-account.
- Approve the requested permissions.
- If you are signed in to BotNotice, you land on a page that ties the sub-account to one of your websites. If not, BotNotice makes the account and the site from the sub-account's details and emails a sign-in link to the address on the sub-account; open it and the site, the snippet and the voice setup are waiting.
The app asks for: read access to contacts and permission to update one contact field (AI call consent); your sub-account's name; custom fields, to create that one field; incoming messages, so a STOP text can withdraw consent; your Voice AI agents, to read each agent's greeting and write the disclosure line into it; Voice AI call logs, so each call gets a receipt; and workflows, so the two BotNotice steps appear in your workflow builder.
Billing through the marketplace. If you choose a plan when you install, the marketplace bills the sub-account and your BotNotice plan follows that purchase: it starts on install and ends when the app is uninstalled. Nothing to pay at botnotice.app, and the Manage plan page says so. If you install without choosing a plan, you need a plan at botnotice.app instead.
Agencies: install the app in each client sub-account you manage. Each install creates the client's site from the sub-account's website address and emails a sign-in link to the address on the sub-account; each sub-account is billed separately by the marketplace.
The website notice itself needs no permissions at all; it is the snippet in section 4.
2. Run your free scan
- On your dashboard, enter your website address.
- Answer a few questions about your business and where you use AI. Some details cannot be read from a page, so we ask instead of guessing.
- Review your assessment.
Your assessment has three parts:
- What we observed: AI tools we found on your site, and whether a notice already appears. The scan also recognises voice AI widgets on the page.
- What we recommend: the laws that apply to your site, what each one asks for, and what is missing today.
- Needs a closer look: items only you can confirm, like AI-generated images or a phone assistant.
Observations are not legal conclusions.
3. Choose a plan
| Plan | Price per website | What you get |
|---|---|---|
| Chatbot Disclosure | $12.99 per month | The AI notice beside your chatbot, and the disclosure line for your voice agent |
| Disclosure + Records | $29.99 per month | Everything above, plus timestamped records kept 7 years, call receipts, the evidence report, daily site checks, the AI content register and your logo on the notice |
| Managed Compliance | $199 per month | Everything above, plus monitoring of the laws that apply to you, a monthly website review and notice updates made for you |
Free trial: new accounts get the first 14 days of any plan free. A card is taken at checkout and nothing is charged until day 15; cancel before then under Manage plan and you pay nothing. One trial per account.
Every plan covers up to 25,000 notices a month per website (100,000 on Managed Compliance). Extra locations on the same website cost $3.99, $7.99 or $24 a month, depending on plan. Your notice turns on as soon as your plan starts. Current prices are always on the pricing page.
4. Add the notice to your site
- In your dashboard, select your site and copy your snippet. It is one line of code.
- Paste it into your site's footer tracking code area, so it loads on every page.
- Save and publish your site.
- Open your site in a private browser window and start a chat. The notice should appear beside it.
Where to paste it, by builder. These are the same steps your dashboard shows once you pick a builder.
Sites and funnels built in your CRM
- Go to Sites, open your website or funnel, then Settings → Tracking Code.
- Paste your snippet into Footer Code.
- Save, then republish the site or funnel.
Each website and each funnel has its own tracking code, so add the snippet to every one where a chat appears.
WordPress
- In your WordPress admin, go to Plugins → Add New Plugin and search for “Candorline AI Disclosure Notice”. Click Install Now, then Activate. The listing is also at wordpress.org/plugins/candorline-ai-disclosure-notice/
- Open Settings → AI Disclosure, paste your site key (the 12 characters after /w/ in the snippet above) and click Save Changes. The page confirms the key and lists the chat plugins it found.
Updates arrive in your WordPress dashboard like any other plugin. Prefer not to add a plugin? Paste your snippet into the Footer box of a header-and-footer plugin such as WPCode, or anywhere that adds code before </body>.
Shopify
- In your Shopify admin, go to Online Store → Themes.
- Next to your live theme, click ⋯ → Edit code, then open layout/theme.liquid.
- Paste your snippet on the line just above </body> and click Save.
Wix
- In your Wix dashboard, go to Settings, then Custom Code (under Advanced).
- Click + Add Custom Code and paste your snippet.
- Set it to load on All pages, place it in Body – end, and click Apply.
Wix only allows custom code on a paid plan with a connected domain.
Squarespace
- Go to Settings → Developer tools → Code Injection.
- Paste your snippet into the Footer box.
- Click Save.
Squarespace only allows code injection on the Core plan or higher.
Webflow
- Open your project’s Site settings, then Custom code.
- Paste your snippet into Footer code and save.
- Publish your site so the change goes live.
Google Tag Manager
- In your container, click Tags → New, then Tag Configuration → Custom HTML.
- Paste your snippet and set the trigger to All Pages.
- Save, then click Submit to publish.
Custom-built or another builder
- Find where your website lets you add code to every page, often called “footer code”, “custom code” or “code injection”.
- Paste your snippet there, or just before </body> on every page where your chat appears.
- Save and publish.
5. How the notice works with chat, voice and AI media
Chat
- The notice appears beside the chat widget you already use, when the visitor opens the chat. It does not change your chatbot.
- It is a small card in your site's own font and colours, with a Got it button and a link to your disclosure statement. It repeats on the schedule your states ask for.
- If a person takes over the chat, the notice can say so; when the bot resumes, the notice appears again. Your developer or chat platform tells BotNotice about the handoff with one line of code.
Voice AI and phone assistants
A website snippet cannot speak on a phone call, so voice has two parts: the words, and the proof the words were said.
The words. BotNotice cannot play a notice on your phone line by itself. You add it to your voice agent's greeting. It takes about 10 minutes.
- In your dashboard, open your site and choose Voice. Pick your voice platform.
- Copy the disclosure line BotNotice writes for you. It is based on your business and where your callers are, and there is a version for each language your notice uses. The greeting checker tells you whether your current opening line already says it is AI and whether it says so early enough.
- Open your voice agent's settings. Find the first thing it says on every call. This is usually called the greeting, first message or welcome message.
- Paste the line at the very start of the greeting, before the agent asks any questions. Example: "Thanks for calling Maple Street Dental. I'm an AI assistant."
- Do the same for outbound calls, voicemail drops and any second AI agent a call gets transferred to.
- Call your own number and listen. Make sure the notice plays first, every time.
The proof. Connect your voice platform and each call gets a receipt in your ledger.
- Through the CRM app: the permissions you approved at install let BotNotice receive an event when a Voice AI call ends. Nothing else to set up. The app also reads each agent's greeting, tells you whether it discloses, and can write your line into it with one click.
- Retell AI and Vapi: paste your BotNotice webhook address (shown on the Voice page) into the platform's webhook settings. BotNotice understands both platforms' call events as they are.
- Other platforms and your own code: post a short JSON message to the same address when a call starts and ends. The format is on the Voice page.
What happens on each call: BotNotice reads only the AI's opening words, checks them for a disclosure, and writes one entry to your ledger: time, agent, call id, the matched phrase, the policy version in force, and the result (delivered, partially delivered because the caller talked over it, or missing). The transcript is then discarded. BotNotice never keeps recordings or transcripts, and never stores what the caller said. On Chatbot Disclosure the calls are counted but no receipt is kept; receipts need a plan with records.
If an agent's greeting changes so that it no longer discloses, BotNotice records the change in your ledger and emails you once.
- Your agent should never say it is a person, even if asked. A notice at the start does not undo that.
- Call recording consent is a separate legal matter from AI disclosure. BotNotice does not handle it.
AI images and video
On Disclosure + Records and Managed Compliance, your site's Content page keeps a register of AI-made images, video and audio.
- Add an item yourself, or let the register find it: the scan reads each file's embedded provenance data (Content Credentials and similar) and registers files that declare an AI origin. WordPress uploads, Zapier, Make and the API can register files as they are created.
- For each item, BotNotice writes the label wording that fits the laws that apply to you: a caption, alt text and, for advertising, the extra line the ad rules ask for.
- You put the caption on the page beside the image or video, in your website builder. BotNotice does not draw over your images.
- The weekly check confirms the label is still on the page and the file's provenance data is still intact, and records both in your ledger. Each item also gets a public verification page you can link from the caption.
The notice does not replace setting up your bot correctly. For example, a bot should never say it is a person.
6. View and export your records
Available on Disclosure + Records and Managed Compliance.
- Open your Dashboard and select your site.
- The Disclosure ledger is on the site's page. Each entry shows the time, page, what happened, the channel (chat, voice or content), the notice version in force, and a hash that links it to the entry before.
- Select Export CSV to download the complete ledger, or Evidence report for a printable summary you can save as a PDF and hand to an auditor, insurer or counsel.
Good to know: entries cannot be edited or deleted. Records are kept 7 years. BotNotice does not store chat or call transcripts. More in How the disclosure record works.
Matching a complaint to the record
The record holds no names, no IP addresses and no chat text. Here is how you still find the right entries when someone says they were not told they were talking to AI.
What each entry carries about the visitor. Two things. A visitor fingerprint: when the notice is shown, the server turns the visitor's IP address, browser string, your site key and the day's date into a short code using a secret key only BotNotice holds, keeps the code and discards the rest. It changes every day, so it cannot follow a person across days, and without the key it cannot be worked back to an address. And a conversation id: a random id the notice gives the browser session, or your chat platform's own conversation id when it set one first. Voice calls carry the call id instead.
Worked example. A customer writes on October 20: "I chatted with your website on October 3 and nobody told me it was a bot."
- Start with the day. On the site's Incident page, enter October 3. The kit lists every notice shown that day, with the wording and policy version in force, and builds a dated summary. For most disputes this is enough: it shows the notice was in place and appearing to every visitor that day.
- Narrow to the conversation. Open the chat in your chat tool's inbox. Its export or transcript carries the platform's conversation id. Paste that id into the Incident page and the entries for that one conversation come up: when the notice appeared, whether it was repeated, whether a person took over, and whether the visitor clicked Got it. This is the precise match for chat tools whose id the notice reads, and for calls, where the call id is the key.
- Match the visitor, if you need to. Chat tools and web servers keep the visitor's IP address and browser string in their own logs; BotNotice does not. Take those two values and the date from your chat tool's record of that conversation and enter them on the Incident page. BotNotice recomputes the fingerprint with its key, checking the day either side too (an evening visit in the US falls on the next day in UTC), and shows the entries that carry it. The address is used for the calculation only and is not stored.
- Hand it over. Print the evidence report or export the CSV. Each entry is linked to the one before it by a hash, and the chain is checked daily, so the report also shows nothing was altered after the fact.
What the record proves is that the notice was displayed to that browser at that time, on that page, with that wording. It does not prove the person read it; no system can. And on its own the record cannot say who a visitor was, which is the point.
7. Monitoring and alerts
- Disclosure + Records and Managed Compliance: BotNotice checks your site from the outside every day. If your notice stops loading, we email you that morning.
- Managed Compliance: we also let you know when a law that applies to you changes, review your website every month, and update your notice for you as requirements change.
- Chatbot Disclosure: the notice runs, but there are no daily checks or alerts. You can test it yourself any time in a private browser window.
8. Billing, changes and cancellation
- Each website is billed monthly, in advance.
- Change or cancel your plan any time under Manage plan on your dashboard. Your plan stays active until the end of the month you paid for. Fees are non-refundable except where required by law.
- Moving up: you pay the difference for the rest of the month right away, and the new plan starts once that payment goes through. Moving down: the unused part of the month is credited toward your next bill.
- Busier than your notice limit? Your notice never switches off. We will contact you with a price that fits at least 30 days before anything changes.
- 10 or more websites? Contact us for a custom price.
After you cancel: if you cancel or move to a plan without records, the records already kept stay available to view and download for the rest of the 7-year period. No new records are added. If you delete a site, its records are deleted right away.
9. Uninstall
- Remove the snippet from your website.
- Uninstall the app from the app marketplace in your CRM, if you installed it. This disconnects the sub-account; the consent check then answers "blocked".
- Cancel your plan under Manage plan. Uninstalling the app does not cancel your plan on its own.
Troubleshooting
The notice does not appear. Make sure your plan is active and the snippet is on the page where the chat appears. Clear your site cache and your browser cache. Test in a private browser window. On the site's page in your dashboard, the install guide shows whether the notice has reported in.
The notice appears twice. The snippet was probably added in two places. Remove one.
The notice covers my chat button. In your site's notice settings, change Position to bottom left or top centre. When the chat panel is open, the notice already moves to the other side of it.
Still stuck? Email support@botnotice.app with your website address and a screenshot, or use the form on the support page.
BotNotice provides disclosure tools, records and support. It does not provide legal advice.
Support · FAQ · Terms · Privacy Policy · Disclaimer
