✨ AI form deflection
Surface matching Knowledge Base articles while the visitor types — many self-serve instead of submitting.
A surprising share of contact-form messages have already been answered somewhere in your Knowledge Base. Instead of letting the visitor file a ticket and waiting hours for the reply, AI form deflection searches your content as they type, surfaces the best matches under the form, and opens the article inline if they click.
Where it lives
Workspace → Contact page (sidebar) → AI tab.
The tab has two things:
- Master switch — turn deflection on or off. Pro plan only.
- Sources — checkboxes for what the search reads from:
- Knowledge Base articles — published, public articles
- AI Knowledge documents — PDFs, DOCX, txt and md files you've uploaded under Chat → AI Knowledge
- AI Knowledge notes — free-text notes you wrote in the same place
You can mix and match. Most workspaces just check KB articles and leave it there.
How it works (under the hood)
The contact form runs an Alpine script that watches the subject and message inputs. After 800 ms of no typing, it sends the combined text to a small endpoint on your own subdomain. The server then:
-
Lexical pass (free) — does a
LIKEsearch across your selected sources and grabs up to 3 matches. Fast, cheap, runs every time. Good for keyword-matchy queries like "refund policy". -
AI pass (only when needed) — if the lexical pass came back with fewer than 2 results AND the workspace has AI budget for the month, we send up to 40 article titles to the AI and ask it to pick the 3 most semantically relevant. This is what catches "how do I get my money back?" matching "Refund policy" even when the words don't overlap.
-
Render — up to 3 cards appear above the Send button. Click → article opens in an overlay; the typed form stays untouched in case the article didn't actually help.
What it costs
- Lexical pass: zero. It's a database query.
- AI pass: roughly $0.0001 per call, drawn from the workspace's monthly AI credit pool. If the pool is exhausted, AI pass quietly stops and lexical-only continues.
- We rate-limit at 30 requests per minute per IP so a bot or a runaway script can't drain the meter.
What visitors see
A small orange panel between the message textarea and the Send button:
⚠️ Maybe one of these already answers your question?
- Refund policy
- Cancelling a subscription
- Where to find your invoice
Didn't help? Finish your message below and we'll get back to you.
Click an item → article appears in a centered modal at 85% viewport height. Close with the ✕, click outside, or press Esc. The form below is untouched the whole time.
When NOT to enable it
- You have fewer than ~10 KB articles. There's just not enough content to match against — visitors will get empty or irrelevant suggestions, which is worse than no suggestions.
- Your contact form is the only channel and you actually want every visitor to file a ticket (e.g. lead generation). Deflection works against that goal.
- You're on the Free plan and don't want lexical-only behavior. (Lexical-only is genuinely useful, but the AI pass is what catches paraphrased questions, and that's the magic.)
Tuning tips
- Sources matter. If your AI Knowledge documents are big PDFs of internal notes, including them as a source may surface irrelevant matches. Test with KB-only first; add the others only if needed.
- Keep article titles descriptive. The AI pass only sees titles + IDs (not bodies, for cost reasons). A title like "Article #42" gives the AI nothing to work with; "How to cancel a subscription" is gold.
- Look at your ticket inbox monthly. If you keep seeing the same question, that's an article waiting to be written. Once the article exists, the next visitor with the same question deflects.
Related
- Block builder — arrange your contact page
- Form submissions — what happens when the form is sent