Launch Checklist
Use this checklist before putting ChattyBox in front of customers. It catches the common setup gaps that make a chatbot look installed but not ready.
For a support rollout, pair this checklist with the AI customer support chatbot guide so public-content answers have a clear escalation path for account-specific, sensitive, or unresolved questions.
Content Readiness
- Public, crawlable content is selected for the chatbot to answer from.
- Private pages, admin pages, checkout flows, account pages, drafts, and staging content are excluded by deliberate source selection, not only
robots.txt(which the crawler does not enforce). - You chose the right input: sitemap, manual URLs, homepage only, or crawl. Crawl uses discovered conventional sitemaps before falling back to links; it does not fill an incomplete sitemap by following links.
- Important product, pricing, policy, support, FAQ, onboarding, and troubleshooting pages are included.
- Multilingual sites include the language versions you expect the widget to answer from.
Scraping Validation
- The scrape ended, saved/selected counts were compared, and the expected pages are present. A Completed badge alone does not prove full coverage.
- The indexed page count matches what you expected for your plan and launch scope.
- Partially indexed pages were reviewed for missing text beyond the 512 KiB limit; long pages were split where needed.
- Separate embedding work finished and representative retrieval was tested.
- Recently edited or migrated pages have been re-scraped.
- Any missing pages were checked for authentication, bot challenges, failed/unsafe redirects, source filters, or JavaScript-only content. Important text is available in fetched HTML without JavaScript rendering.
- Obsolete stored pages were deleted from Content, not merely removed from the sitemap.
Usage and Ownership
- The project owner can access the dashboard and manage the chatbot; public keys and organization membership are not dashboard permissions.
- Account & Billing at
/settings/accounthas enough message allowance for tests and launch traffic across the owner's chatbots. - Stored-page limits and the separate monthly page-refresh budget were checked. Manual index rebuilds also consume refresh work.
- The refresh schedule fits the plan: Free at most weekly, paid plans at most daily. Manual scrape retries follow the same cooldown, including after failed jobs.
- Pro/Business PAYG is either off, capped per feature, or intentionally uncapped; it does not remove the crawler's refresh cooldown or monthly refresh budget.
- If config locking is used, its irreversible restrictions and the separate secret deployment-token workflow are understood.
Answer Quality
- You asked real test questions from sales, support, onboarding, and documentation use cases.
- Answers only use your indexed content and refuse questions your content cannot support.
- Source citations appear on useful answers.
- Citation links open the expected public source pages.
- Weak answers have been fixed by improving source content or adding missing pages, then re-scraping.
- Persona changes were saved and the enforced fallback was tested separately; Persona wording does not replace the configured missing-context response.
- Test questions include their own context rather than assuming earlier conversation turns reach the answer generator.
Widget Installation
- The widget is installed on the intended public pages.
- The script loads only once per page.
- The script includes
data-api-key. - The script includes
data-api-url. - Auto-detect / Fixed and Allow script override are set intentionally.
data-localeonly wins when overrides are enabled, even in Fixed mode. - Widget UI language, question/answer language, and indexed language versions were tested separately.
- The widget opens and sends a test question in an incognito window.
- Mobile viewport testing confirms the launcher and chat panel are usable.
API Key and Optional Origin Restriction Checks
- The production public key exists in Public Keys and is the one selected in Embed.
- Any rotation was completed by installing and testing the new key before deleting the old one. Key names alone do not restrict environments.
- The public key has been tested on the intended production, preview/staging, and localhost sites; keys work from all browser origins by default.
- If optional hardening is needed, Public Keys > Edit origins has Restrict this key to specific origins enabled and lists the intended exact origins (scheme, hostname, and port must match).
- No private server API keys, admin tokens, or secrets are present in frontend code, GTM, CMS custom HTML, or page source.
Browser and Deployment Checks
- Browser console has no ChattyBox errors.
- Content Security Policy allows the widget script and API URL if your site uses CSP.
- Ad blockers or consent tools are not blocking the widget on the pages where it is expected.
- The final deployed site, not only local development, has been tested.
After Launch
- Review Logs on any plan, and Analytics / Content Gaps on Pro or Business.
- Interpret Analytics as up to 5,000 recorded interactions from the last 30 days, including Test Chat, not verified answer accuracy or visitor-only traffic.
- Check detected gaps, retest improved content, and resolve them manually. Resolved gaps disappear from the dashboard and do not automatically reopen on recurrence.
- If page attribution matters, verify Popular Triggers. The hosted widget sends source-page context; headless SDK
sendMessage()does not currently send it. - Add missing documentation, FAQs, or examples based on real visitor questions.
- Re-scrape updated pages after content changes.
- Rotate public widget keys if needed; update origin restrictions only when the optional restriction is enabled and your allowed domains change.
- Conversation deletion is not used to reset usage or analytics; those records are separate.
If any item fails, use Troubleshooting before launch.