Skip to content
Start In Cloud

AI Chatbot Analytics

AI Chatbot Analytics is available in HitKeep 2.2.0. The dashboard is built on top of structured custom events, so teams can instrument support bots, docs bots, shopping assistants, and AI search experiences without deploying a separate analytics pipeline.

The report is built on top of normal custom events, which keeps the instrumentation model simple and portable.

HitKeep AI chatbot analytics with KPI cards, conversation activity chart, and chatbot breakdown panels
Conversation KPIs, timeseries activity, and chatbot-specific breakdowns on the AI Chatbots page.

The AI Chatbots page focuses on on-site chatbot usage and outcomes:

  • conversation starts
  • prompts sent
  • responses rendered
  • citation clicks
  • handoff requests
  • assisted conversions

Because this is event-based analytics, the report supports the same time ranges, audience context, and share links as the rest of the dashboard.

Use these event names consistently:

Event nameWhen to send itRecommended properties
assistant.chat_startedUser opens or starts a chatbot sessionbot_id, provider, model, surface
assistant.message_sentUser submits a promptconversation_id, message_index, intent
assistant.response_renderedA model response is shown to the userconversation_id, message_index, response_ms, tool_count, citation_count
assistant.citation_clickedUser clicks a cited source or linked answerconversation_id, citation_url, citation_index
assistant.handoff_requestedUser asks for a human or the bot escalatesconversation_id, message_index, reason
assistant.goal_assistedA conversion happens during or after the chatbot flowconversation_id, goal_name, goal_value

Keep the payload metadata-focused.

  • Use stable identifiers such as bot_id and conversation_id.
  • Prefer short categorical values like provider=openai or surface=support-widget.
  • Store performance and usage metrics like response_ms, tool_count, and citation_count.
  • Do not send raw prompt or response bodies by default. Structured metadata is usually enough and is much safer from a privacy perspective.
<script>
const conversationId = crypto.randomUUID();
window.hk?.event?.('assistant.chat_started', {
bot_id: 'support-bot',
provider: 'openai',
model: 'gpt-4.1-mini',
surface: 'help-center'
});
window.hk?.event?.('assistant.message_sent', {
conversation_id: conversationId,
message_index: 1,
intent: 'billing'
});
window.hk?.event?.('assistant.response_rendered', {
conversation_id: conversationId,
message_index: 1,
response_ms: 842,
tool_count: 1,
citation_count: 2
});
<\/script>

The AI Chatbots page groups these events into a dedicated workflow:

  • KPI cards for conversation volume, prompts, responses, assisted conversions, handoff rate, and citation CTR
  • timeseries chart for conversation starts, responses, handoffs, and assisted conversions
  • breakdown panels for intents, providers, and surfaces
  • audience context such as top pages, sources, devices, and countries

You can also scope the report by provider, bot_id, surface, or model.

  1. Start by sending assistant.chat_started and assistant.message_sent.
  2. Add assistant.response_rendered once you can measure latency and citations.
  3. Add assistant.handoff_requested and assistant.goal_assisted to connect usage with support and conversion outcomes.
  4. Keep property names stable so dashboard filters remain useful over time.