A bridge is a program that sits between your Matrix server and an external chat network (Telegram, Slack, Discord, etc.) and translates messages in both directions. From inside your Matrix client it looks like everyone you talk to is "on Matrix"; from inside Telegram/Slack/Discord it looks like you're just another user on that platform.
The result: one inbox for all your chats. Stop context-switching between six apps.
A bridge is implemented as a Matrix appservice — the protocol Matrix uses to let non-user programs register namespaces of virtual users and rooms. In practice:
mautrix-telegram) alongside your homeserver, with its configuration pointing at your server.@telegrambot:your-name.meldry.com (or similar).login.Messages you send in a puppeted Matrix room are pushed to the foreign network by the bridge; messages from the foreign network are pushed back as Matrix events.
| Bridge | Network | Plan required | Notes |
|---|---|---|---|
| mautrix-telegram | Telegram | Pro | Full coverage — 1:1, groups, channels, media |
| mautrix-slack | Slack | Pro | Workspaces → spaces, channels → rooms, threads |
| mautrix-discord | Discord | Pro | Servers → spaces, channels, voice excluded |
| mautrix-whatsapp | Business | Requires scanning QR from phone | |
| mautrix-signal | Signal | Business | Requires linking from Signal Desktop |
| dingtalk | DingTalk | Business | China-region, webhook-based |
| feishu | Feishu (Lark) | Business | Requires Feishu app credentials |
Additional bridges (IRC via Heisenbridge, WeChat, Google Chat, etc.) are available on request — open a ticket.
See Billing for the full plan comparison.
Most bridges support two operating modes:
[Alice] Hello from Matrix. Setup is easier (no per-user login) but breaks DMs and reactions, and foreign-network E2EE is lost.Puppeting requires every user who wants the bridge to link their own account. Relay mode is useful for big public rooms where many Matrix users want to participate without each signing up for the foreign network.
Every bridge guide in this section follows the same pattern:
@telegrambot:…, @slackbot:…, etc.).login command — each bridge has a slightly different flow (QR code, OAuth, token, etc.).!bridge <room-id> (or the bridge's equivalent).See the individual guides for details:
Bridge doesn't start. Check your plan limit (Free has 0, Starter has 2, Pro has 5, Business unlimited). Open Dashboard → Notifications for the bridge startup logs.
Can't DM the bridge bot. The bot user only exists after the bridge has successfully booted. Wait ~10 seconds after enabling, then refresh your Matrix client's contacts.
Messages don't sync. Run status in the DM with the bridge bot. It will report the link status of your foreign account. If it shows "logged out", re-run login.
Foreign-network rate limit hit. Telegram, WhatsApp and Signal enforce strict rate limits. If you spam a bridged room, the bridge may be temporarily throttled. Wait a few minutes.
Encryption errors. If you can't read messages in a bridged encrypted room, the puppet user may not have your device keys. In the room → People → Verify this session, or restart the bridge from the dashboard.
Pick the network you want to connect: