Skip to main content

Introduction to XMTP

XMTP (Extensible Message Transport Protocol) is an open protocol, network, and standards for secure, private web3 messaging.


Developers build with XMTP SDKs to provide messaging between blockchain accounts in their apps. The XMTP messaging API client takes care of:


Use cases

Try messaging with XMTP

A great way to start learning how to build an app with XMTP is to use one!

  1. Pick an identity you want to use to message with XMTP.

    You can use an Ethereum address to start.

    If you have an ENS name, UNS name, or Lens handle associated with the address, you can tell people to use it to message you instead of using your full Ethereum address.

    Don’t have an Ethereum address? Create one using a compatible wallet app of your choice. For example:

  2. Pick an app.

To explore more apps built with XMTP, see Built with XMTP.

  1. Send a message.

    To send a message to an address it must have an XMTP identity already created on the network. Share this page with someone you want to message to help them get on the network if they aren't already there.

    In the meantime, need someone to message with? Send a message to these addresses. Try using an ENS name to message one person (or bot) and an 0x Ethereum address to message another.

    • gm.xmtp.eth / 0x937C0d4a6294cdfa575de17382c7076b579DC176
      Get an immediate response from the XMTP message bot
  2. Want to see the interoperable inbox in action?

    Try a second app and see all your conversations in both apps, regardless of the app you used to start them. This also means you and a friend can each use your own preferred app to exchange messages.

    With XMTP, you own and control your messages and are always free to use the app that best suits your needs.

Works with XMTP

XMTP has been implemented to work with Ethereum Virtual Machine (EVM)-compatible wallet apps and blockchain accounts (wallets), though XMTP itself does not use EVMs. XMTP also works with other web3 identities that apps built with XMTP can derive from Ethereum accounts, such as ENS names and Lens profiles.

To learn more, see Works with XMTP.

Protocol overview

A user can send and receive encrypted XMTP messages using an app with an embedded XMTP client, authenticating using a wallet signature. XMTP network nodes transport and persist the user's messages.

For the protocol specification, see The XMTP Protocol in the proto GitHub repo.

Was the information on this page helpful?
powered by XMTP