Intercom system design

intercom logo
intercom
March 3, 2026 · 5 reads

Summary

I was asked to design a system for tracking and analyzing customer interactions for a chatbot company, focusing on event ingestion, daily reporting, and ad-hoc SQL query capabilities.

Full Experience

Chatbot company provides customer support software as a service. Our product allows a company to add a chat widget on their website which the company's customers can use to get support from the company’s customer support team. You are tasked with designing a system to track and analyze customer interactions with the Intercom appwebsite, such as a login by a customer support agent or a conversation started between the customer support agent and their customer. The system should ingest a high volume of events and allow reports to be created which combine the usage data with existing data in Intercom database, such as customer and billing data. You can assume that the reports do not need to be refreshed more than once per day. The system should also facilitate ad-hoc SQL queries by users to answer questions about the available data.

Interview Questions (1)

1.

Intercom Customer Interaction Tracking System Design

System Design·Hard

Design a system to track and analyze customer interactions with the Intercom app/website. This includes events like a login by a customer support agent or a conversation started between an agent and their customer. The system needs to ingest a high volume of events, allow for reports combining usage data with existing Intercom data (e.g., customer, billing), with reports refreshing no more than once per day. Additionally, the system should facilitate ad-hoc SQL queries by users to explore the available data.

📣 Found this helpful? Please share it with friends who are preparing for interviews!

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!