Real-time messaging

Power your platform with messaging that brings a user experience much like WhatsApp or Facebook Messenger. In TalkJS, you can shape conversations any way you like. Create a private 1-on-1 conversation or engage multiple users in a channel, topic, group, or chat room. It's all about shaping your chat to fit your use case.

All the essential messaging features for an amazing user experience:

  • Channels, groups & topics
  • Online presence indicators
  • In-conversation search
  • Real-time translation
  • Typing & read indicators
  • Unread messages badge
  • Conversation history
  • File sharing
  • Location sharing
  • Text formatting
  • Emojis

Pre-built chat UI

The JavaScript SDK comes with a pre-built chat UI (inbox, chatbox and popup) that is highly customizable. The UI is forward-compatible so it will keep working on future devices, new features, and future browser bugs. The pre-built UI saves you months of work in comparison to alternatives.

Bring a single conversation into focus from anywhere on your platform with our chat pop-up. You can actually test this one live from this website to chat with us :)

In case you want a different type of chat UI try out the pre-built chat box and inbox.

The TalkJS chat works amazingly well on desktop and mobile devices. The UI is pre-built, highly customizable and easy to embed into any mobile app.

Years of sweat and tears went into making the TalkJS messaging UI fast, fun, and easy to use. Fully responsive, TalkJS works great on nearly all mobile phones and computers.

We frequently test TalkJS on the last 2 desktop and mobile versions of Chrome, Safari, Firefox, Edge and Opera, as well as Internet Explorer 11 and up.

TalkJS has built-in localization features that allow you to display the text (e.g. "Send") of the interfaces to the user in their own language.

There are two ways to set the language in TalkJS. You can change the default language in the Dashboard for all of your platform's users. If you need to support multiple languages for different, you can set a language per User Configuration.

popup chat ui

Customizable design

Tune the look and feel of the chat UI with TalkJS Themes. Take control over the most important parts of the interface and make the UI fit your website or app design perfectly. You can customize:

  • Fonts
  • Colors
  • Message style
  • Shapes
  • Borders
  • Width & height
  • Avatar style
  • ...and a lot more

Developer-friendly API

Our JavaScript API lets you connect your own analytics or UI elements with ease. Events can notify you when new messages are written or received, and when the user navigates between conversations. Connect the user's customer journey with the conversation by injecting system messages. Check out the docs.

Our REST API allows you to manage your users, conversations and messages. Webhooks notify your backend of events happening: e.g. new messages and new conversations, and many more. Check out the Webhook docs.

"Talkjs has been an integral part of our user experience since the beginning. Thanks to TalkJS, today Audry manages thousands of conversations and file-shares directly within the platform."

Eugenio Warglien, Co-founder, Audry
// Synchronize user data and set up
const currentUser = new Talk.User({
  id: 79302, // your own user id
  name: "Nina Caldwell",
  email: "" // for offline email fallback
const session = new Talk.Session({
  appId: "9352938974", // your TalkJS account id
  me: currentUser // make Nina the active user
const other = new Talk.User({
    id: "654321",
    name: "Sebastian",
    email: ""

// Add users to the conversation
const conversation = session.getOrCreateConversation(Talk.oneOnOneId(me, other));

// All set! Let's turn a div into Nina's messaging center
const inbox = session.createInbox();

Out-of-the-box notifications

TalkJS has a robust notification system that supports push, email, SMS, and desktop notifications. This makes it possible to keep users in the loop on any channel, along with messaging you can customize any way you like.

You can fully customize the email and SMS message body. Use HTML and CSS to design engaging email notifications and make them stand out.

To bring things to a new level you can also add a custom email sender domain.

Always keep your users in the loop. If a user is sent a message while offline, TalkJS sends an email or SMS (or both, depending on your configuration). Our battle-tested infrastructure ensures direct and speedy delivery.

User can reply to an email notification, and the message will land back in the chat closing the loop and making sure that the conversation is not lost. Users can reply directly or jump back in to your platform - either way, their response will safely reach its destination.

Mobile push notifications let users respond quickly while doing other things. While desktop notifications on new messages keep your users engaged even when they're not looking.

email and sms notifications

Message moderation & analytics

TalkJS provides moderation tools like the activity view in the dashboard where companies can monitor chats, and act accordingly if they want. And also a pro-active way to moderate messages by suppressing information like email or links by using the mask contact info feature.

Prevent users from exchanging email addresses, phone numbers and website addresses. You configure exceptions in detail.

Blacklist certain words such as profanity to ensure that chat messages remain clear of offensive words. To create blacklists you'll need to use the mask contact information feature.

See who talks to who and monitor their messages in the TalkJS Dashboard. This lets you stay in full control of communication so you can jump in when necessary.

Take a look at the analytics dashboard to see how many people are using the chat and the number of messages they’ve sent in a particular timeframe.

chat analytics

Ready to get started?

Whether you're building a marketplace, on-demand business, e‑commerce, crowdfunding, travel and events platform, TalkJS is the chat tool for you.