Every Expo developer has had the same thought at some point: “Adding chat should be simple, it’s just messages and a text box, right?” Until reality hits.
Suddenly your “small feature” becomes a full project with challenges like
Managing WebSockets and presence
Syncing messages reliable
Handling notifications and moderation
Working around Expo Go’s limitations with native modules
For most teams, building all of this from scratch just isn’t realistic.
CometChat removes that burden. We give you a production-ready chat and calling infrastructure you can plug into your Expo app, complete with the features users expect (typing indicators, media sharing, push notifications, moderation, and more).
And the best part? You have two flexible ways to integrate CometChat into your Expo app:
01.
UI Kit: prebuilt chat components, fastest way to launch
02.
SDK: low-level APIs for full control and customization
From Expo Go Limitations to Full-Featured Expo Chat: How CometChat Simplifies Real-time Messaging
Adding chat in Expo isn’t straightforward because Expo Go doesn’t support the custom native modules required for real-time messaging and calling. That’s why CometChat works with Expo development builds, which Expo recommends for production-ready apps.
Once you’re set up with a development build, CometChat takes care of the heavy lifting for your Expo chat app
Real-time connections and sync logic
Cross-platform support for iOS and Android
Built-in Expo chat features like groups, presence, media sharing, reactions, and moderation
Optional voice and video calling
Integration Method 1: React Native UI Kit Expo Integration (Fastest Way to Add Expo Chat)
The React Native UI Kit is a set of prebuilt, production-ready chat components you can drop into your Expo app. Think conversation lists, message bubbles, and input composers, all wired up with real-time logic out of the box.
Why use the UI kit
Launch chat in days, not months
Skip managing sockets and backend logic yourself
Fully themeable and customizable with simple configs
Perfect for MVPs or apps with familiar chat patterns
Who it’s ideal for
Teams on deadlines who want to focus on product logic, not chat infrastructure
Apps that don’t need highly customized chat UIs (yet)
Developers who want to start fast and extend later
How to get started
Create a CometChat account → make a new app, note your App ID, Auth Key, and Region.
Use an Expo development build (not Expo Go). Follow Expo’s guide.
Update app.json permissions → grant access to internet, camera, microphone, and audio.
Install the UI Kit dependencies.
Initialize CometChat in your app entry file.
Render the UI Kit components → conversation list, chat window, or the all-in-one layout.
For a working implementation, check out the Expo Sample App on GitHub.
Integration Method 2: React native SDK Expo integration (Full Control for Custom Expo Chat Workflows)
What it is
The React native SDK is the low-level toolkit that powers everything in the UI Kit, but here, you get direct access to every APIs responsible for powering chat and calling functions. You bring your own UI and logic, and CometChat handles the backend complexity.
Why use it
Total control over the UI and UX
Deep integration with your app’s workflows
Perfect for apps where chat is a core product surface
Built-in support for enterprise needs: compliance, webhooks, custom notifications
Who it’s ideal for
Apps with unique design systems that break standard chat layouts
Teams that need tight integration with backend logic or third-party services
Highly regulated industries with strict security requirements
Products where chat is performance-critical
How to get started?
Create your CometChat app → note your App ID, Region, and Auth Key.
Install SDK dependencies → the CometChat SDK plus async-storage and other peer libraries.
Update app.json permissions → add camera, microphone, internet, and network state access.
Adjust Android & iOS settings (For Android: set minSdkVersion, add CometChat maven repo. For iOS: set platform version in Podfile.)
Initialize the SDK at app startup with your credentials.
Authenticate users → manage login, groups, and presence.
Build your custom UI → conversation list, message threads, input composer.
Integrate advanced features → media attachments, read receipts, push notifications, moderation.
(Optional) Enable calling → add the CometChat Calls SDK for audio and video calling.
Choosing the Right Path
Go with the UI Kit if,
You want to launch chat fast
Your app uses familiar chat patterns
You’re building an MVP or prototype
Go with the SDK if…
Chat is central to your product
You need a fully custom UI
You have compliance or performance requirements
You want to integrate calling alongside chat
The best part? You don’t have to commit forever. Many teams start with the UI Kit for speed, then migrate to the SDK as their needs evolve.
Ready to add chat to your Expo app?
Adding chat to an Expo app no longer means fighting WebSockets, writing sync logic, or reinventing notifications. With CometChat, you get a production-ready chat and calling engine that plugs directly into your Expo app.
UI Kit: The fastest way to ship chat, with prebuilt components and real-time logic included.
SDK: Gives you control over every pixel and workflow.
Whichever path you choose, you’re building on CometChat’s scalable infrastructure, trusted to support everything from small communities to enterprise-scale apps.
Sign up free, check out the Expo Sample App on GitHub, and start building today.
Haris Kumar
Lead Content Strategist , CometChat
