[object Object]

Freshchat ships two bot frameworks. The classic Bot Builder is deterministic flow logic. Freddy bots are intent-driven LLM agents. Both have a place. Most teams pick the wrong one for the wrong job.

Bot Builder: deterministic, audit-friendly

Use Bot Builder when the conversation is a transaction with known steps: order status check, appointment booking, password reset. Every node is explicit, every branch is testable, and the audit trail satisfies compliance.

Node: ask_order_id → API call → if_found → show_status → end
                                → if_404   → escalate

Freddy bots: open-ended, knowledge-grounded

Use Freddy bots when the user could ask anything within a domain (“how do I configure SSO”). Freddy resolves intent against your knowledge base and answers in natural language. You are not authoring branches, you are curating sources and tuning thresholds.

The hybrid pattern that wins

Land all conversations with Freddy. Detect transactional intent, then handoff to a Bot Builder flow for the structured part, then return to Freddy for any follow-up question.

// Pseudocode of the routing
if (intent.type === "transactional") {
  triggerBotFlow(intent.flow_id, context);
} else {
  return freddy.respond(query, context);
}

Cost model differences

Bot Builder sessions are typically cheaper per conversation. Freddy sessions consume the AI session pool, which has a hard cap on Growth tier and overage charges thereafter. Forecast Freddy volume before flipping to “Freddy first.”

Failure modes

Bot Builder fails by hitting a dead-end node. Freddy fails by hallucinating or returning low-confidence answers. Both should escalate to a human, but the trigger logic differs: Bot Builder uses an explicit “no match” branch, Freddy uses confidence thresholds.

What to do this week

Inventory your top 10 chat intents, classify each as transactional or knowledge, ship Bot Builder for the transactional five, and configure Freddy with a 0.75 confidence floor for the rest.

[object Object]
Share