Your customer asks a question. The chatbot answers. They follow up. Still good. Third turn: the bot has forgotten what they said in the first message, repeats itself, or hands off to a human who has to start over. You've just wasted five minutes and lost credibility. This isn't a coincidence. It's a predictable failure in how most chatbots store, refresh, and hand off conversation memory. And it compounds: a bot that loses context drives customers to email, email lives in a silo, and your sales or support team never gets the full picture. Why most chatbots forget after three turns Context loss happens at three distinct points. Understanding which one is breaking for you determines how to fix it. 1. Context window is too small Every AI model has a context window—the amount of conversation and instruction it can hold in memory at once. A 4K token window (roughly 3,000 words) sounds large until you add system prompts, customer history, product details, and the current conversation. By turn three or four, you're out of space. The math: if your prompt takes 500 tokens, customer profile adds 300, order history adds 400, and you've already used 800 tokens in the conversation, you've got 2,000 tokens left. One more customer message and a bot response, and you're bumping old messages out of context. The bot no longer knows the customer asked about warranty terms in turn one. Smaller models (like GPT-3.5) have 4K windows. Larger ones (GPT-4, Claude 3.5) have 100K+. But even a large window gets filled fast if you're pulling in unnecessary data. 2. Conversation history isn't being refreshed properly When a human switches topics or the conversation spans hours, you can't keep every single message in active context. Chatbots need a summarization layer: every 5–10 turns, collapse old messages into a summary and keep only recent turns in the active window. Many platforms skip this. They just keep appending messages until the window fills, then drop the oldest ones silently. The bot loses early context and has no summary to fall back on. The fix: after every 6 turns, run a background task that summarizes turns 1–6 into three sentences, deletes those raw messages, and prepends the summary. Now the bot still knows the customer asked about warranty but doesn't waste tokens on every word they used. 3. CRM data isn't syncing or refreshing in time A bot alone can't hold enough context. It needs to pull in customer data: past orders, open tickets, account status, conversation history from previous chats. If that data is stale, the bot gives outdated answers. If sync is slow, the bot doesn't know the customer's problem was already solved by support yesterday. The danger: turn three, customer says "But you just told me that yesterday." The bot never pulled yesterday's ticket, so it doesn't know. This is where a unified chatbot that connects to your CRM saves you. But the connection has to be real-time or near-real-time, not a batch job that runs once an hour. The hidden cost: handoff confusion Context loss gets worse at handoff. When a chatbot decides to escalate to a human (or a different bot), it often doesn't pass the full context. The human sees a summary or nothing at all. They ask the same questions again. The customer gets frustrated and leaves. This happens because: No conversation threading. The handoff system doesn't link the chat history to the ticket. Support reads a new ticket with no prior context. Async handoff. The bot says "a human will respond soon" but doesn't send the conversation to anyone. It sits in limbo. Format mismatch. The bot exports context in a format support can't see: raw JSON, a screenshot, a transcript in a different tool. A chatbot that loses context and hands off poorly doesn't fail gracefully—it fails twice: once in the bot, again in the human queue. Guardrail 1: Conversation history refresh logic Keep your chatbot's working memory clean and full. Set a refresh rule. Every 6–8 conversation turns, trigger a summary. Don't wait for the context window to fill. Summarize in the bot's voice. The summary should sound like the bot made notes on what the customer said, not like a machine reading a report back. Example: "Customer is looking for a blue wool jacket, size M, under $150, for a wedding next month." Not: "Customer inquired about apparel: color blue, material wool, size medium, price constraint $150, occasion wedding, timeline next month." Keep the summary in context. Don't write the summary and then delete the previous messages from the chat history the customer sees. Keep the raw conversation visible to them; the summary is for the bot's internal working memory. Store summaries in your backend. When the chat ends or is handed off, save the conversation summary to your CRM or ticket system, not just to the chat platform's database. That way, if the customer comes back in three weeks, you can load the old summary into the new chat. Guardrail 2: CRM sync and refresh timing Your chatbot is useless