products

In-App Chat & Messaging Made Easy

Quickly add 1-on-1 and group text chat in your app with all the bells and whistles like read receipts, media sharing and more. And supercharge with extensions like email notifications and more.

or Get in Touch

All the Messaging Essentials

CometChat comes with all the features your users have come to accept as the norm for a good chat solution.

One on one private chat
1-on-1 Private Chat

Users can send messages 1-on-1 in public, private or password protected conversations.

Typing indicators and read receipts
Typing Indicators & Read Receipts

Signals when users are actively typing or when sent messages are read.

Record and Send Voice Messages
Record & Send Voice Messages

Users can send and receive audio messages.

Group Conversations
Group Conversations

Users can send messages to many in public, private or password protected conversations.

Share Files and Multimedia
Share Files & Multimedia

Users can easily collaborate by sharing files and multimedia.

Unread Messeges and Count
Unread Messages & Count

Mark and count unread messages to keep conversations organized.

Custom Structured Messages
Custom Structured Messages

Allows developers to send custom data across users and groups.

User And Friends
Online Presence Indicators

Users can see which other users or friends are online at the same time.

Threeaded Conversations
Threaded Conversations

Organize messaging by seeing conversations started by a particular message like Slack.

Users Groups and Messages Tagging and Search
User, Groups & Messages Tagging & Search

Users can easily find and organize the messages they're looking for.

Supercharge with Ready-to-use Extensions

To build a great in-app chat solution, text chat is simply not enough. Your users have come to expect a lot more than that. That's where extensions come in. We provide in-house and third-party extensions for a number of features that help you enhance your chat solution by 10x.

Check mark
Activate dozens of ready-to-use extensions from user engagement to notifications
Check mark
Build your own private extensions
See All Extensions
CircleCircleCircle

We’re Developer-First

Our developer-focused chat solution comes with all the building blocks you’ll need to get to production-ready app in hours (and not weeks or months.)

Java ScriptAndroidAppleIonic React
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
var appSetting = new CometChat.AppSettingsBuilder()
 .subscribePresenceForAllUsers()
 .setRegion(region)
 .build();
CometChat.init(appID, appSetting).then(
 () => {
   // Initialize CometChat

   CometChat.login(UID, authKey).then(
     (user) => {
       // User logged In

        var textMessage = new CometChat.TextMessage(receiverID, messageText, receiverType
       );

        CometChat.sendMessage(textMessage).then(
         (message) => {
           // Message sent
         },
         (error) => {}
       );
     },
     (error) => {}
   );
 },
 (error) => {}
);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
AppSettings appSettings = new AppSettings.AppSettingsBuilder().subscribePresenceForAllUsers().
setRegion(region).build();

CometChat.init(this, appID,appSettings, new CometChat.CallbackListener<String>() {
 @Override
 public void onSuccess(String successMessage) {
   // Successful Initialization with CometChat
   CometChat.login(UID, authKey, new CometChat.CallbackListener<User>() {

@Override
     public void onSuccess(User user) {
         // User logged in
         TextMessage textMessage = new TextMessage(receiverID, messageText, receiverType);

    CometChat.sendMessage(textMessage, new CometChat.CallbackListener <TextMessage> () {
           @Override
           public void onSuccess(TextMessage textMessage) {
           // Message sent
           }
           @Override
           public void onError(CometChatException e) {}
           });
           }
       @Override
       public void onError(CometChatException e) {}
       });
   }
 @Override
 public void onError(CometChatException e) {}
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class AppDelegate: UIResponder, UIApplicationDelegate{
   
func application(_ application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {let mySettings = AppSettings.AppSettingsBuilder().subscribePresenceForAllUsers().
 setRegion(region: region).build()
 CometChat(appId: appId ,appSettings: mySettings,onSuccess: { (isSuccess) in
               // CometChat Initialization
               CometChat.login(UID: uid, authkey: authKey, onSuccess: { (user) in
               // User logged in

               let textMessage = TextMessage(receiverUid: receiverID, text: text, receiverType: .user)                

                CometChat.sendTextMessage(message: textMessage, onSuccess: { (message) in
               // Message Sent
                   }) { (error) in }
               }) { (error) in }
       }) { (error) in }
       return true
   }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var appSetting = new CometChat.AppSettingsBuilder().subscribePresenceForAllUsers().setRegion(region).build();
CometChat.init(appID, appSetting).then(
 () => {
   // Initialize CometChat

     CometChat.login(UID, authKey).then( user => {
   // User logged In
   
   var textMessage = new CometChat.TextMessage(receiverID, messageText, receiverType);    

CometChat.sendMessage(textMessage).then( message => {
   // Message sent
       }, error => {});
   }, error => {});
},error => {});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const appSetting = new CometChat.AppSettingsBuilder()
 .subscribePresenceForAllUsers()
 .setRegion(region)
 .build();
CometChat.init(appID, appSetting).then(
 () => {
   // Initialization with CometChat

   CometChat.login(UID, authKey).then(
     (user) => {
       // User Logged in
       var textMessage = new CometChat.TextMessage(receiverID, messageText,receiverType
       );

       CometChat.sendMessage(textMessage).then(
         (message) => {
           // Message sent
         },
         (error) => {}
       );
     },
     (error) => {}
   );
 },
 (error) => {}
);

Pick the Integration That’s Right for You

CometChat provides flexible integration options depending on your tech stack.

No-code Chat Widgets

Chat Widgets are ready-to-use copy/paste code that you can add to your website and mobile apps.

recommended For
Java ScriptAndroidWordpressLaravel
Start For Free

Open Source UI Kits

Production-ready UI Kits that you can customize exactly as per your needs.

recommended For
ReactAngularVueAppleKotlinReact NativeAndroid
Start For Free
CircleCircleCircleCircle

Want to learn more?

“What attracted us most to CometChat were things like the UI Kits, good documentation, and a responsive team.”
Profile image of Rob Gelb
Rob Gelb
Heysummit Founder
Read Case Study

Moderation Baked In

CometChat provides flexible integration options depending on your tech stack.

AI Moderations
AI Moderation

Automated moderation to accept or reject messages in the chat.

Human Moderation
Human Moderation

Manage messages directly from the dashboard and make them disappear in real-time on your users’ screens. That’s not all, In-flight Message Moderation allows you to approve each and every message before they reach your user.

Rule Based Moderation
Rule-Based Moderation

Moderation based on specific preset rules.

Group Based Moderation
Group-Based Moderation

Moderate messages or modify user roles, kick/ban users from a group chat, and more.

Analytics image

In-depth Analytics

Understand your user engagement by looking at our in-depth analytics.

Check mark
Easy-to-consume snapshot in our dashboard
Check mark
Analytics API allows you to build your own custom dashboards and even bill your customers based on their usage
Check mark
Webhooks allow you to process & analyze all conversations

Extend With Webhooks & Bots

If an extension doesn’t solve your needs, try using our webhooks & bots interface to add even more functionality.

Rule Based Webhooks Inteface
Webhooks Interface

Send webhook events that notify your application any time an event happens on your account.

Chat Bot
Bots Interface

Send messages to a bot platform of your choice, process it and provide a response to the user in 1-on-1 as well as group conversations.

CircleCircleCircleCircle

Try Us for Free 

For as Long as You Like!