What Is RTMP? Real-Time Messaging Protocol Explained

RTMP explained: how an encoder publishes a stream with a server URL and stream key, the handshake, RTMP vs RTMPS, and where it fits next to SRT and HLS.

What RTMP is

RTMP (Real-Time Messaging Protocol) is a protocol for sending live audio and video from one computer to another. The specification published by Adobe describes it as providing a bidirectional message multiplex service over a reliable stream transport, such as TCP, intended to carry parallel streams of video, audio and data messages, with associated timing information, between a pair of communicating peers.

In practice, RTMP is the protocol that most streaming software (OBS Studio, vMix and others) uses to send a live stream to a platform. When a platform gives you a server URL and a stream key, your encoder is being told where to publish over RTMP. The specification defines a publish command for exactly this: the client sends it to publish a named stream to the server.

How an RTMP connection works

  1. Handshake. The client sends the chunks C0 and C1; the server answers with S0, S1 and S2; the client replies with C2. The specification says the client MUST wait for S2 before sending any other data. C1 and S1 are 1536 octets long. The version byte (C0/S0) defined in the specification is 3.
  2. Connect and create a stream. The client issues the connect and createStream commands.
  3. Publish. The client sends publish with the stream name, and then sends audio and video messages.

To carry several kinds of data over one connection, RTMP splits messages into chunks. The specification says chunking lets large, low-priority messages (such as video) avoid blocking smaller, high-priority messages (such as audio or control), and that the chunk size is configurable. It notes that smaller chunks are not good for high bit rate streaming. Your encoder handles all of this; you only enter a URL and a key.

RTMP URLs and stream keys

Each platform shows its own address. Twitch's developer documentation gives the broadcast URL format as rtmp://<ingest-server>/app/<stream-key> and says the stream key uniquely identifies the stream and is assigned by Twitch. YouTube, Facebook, Kick and LinkedIn each show a server URL and a key in their own dashboards. See stream keys by platform, and use the RTMP URL and stream key helper to find where each one lives.

RTMP vs RTMPS

RTMPS is RTMP carried over an encrypted connection. The Adobe specification itself does not describe RTMPS, so the details come from the platforms. YouTube's help page Encrypt your stream using RTMPS recommends it, and YouTube shows the RTMP address by default with a lock icon that reveals the RTMPS address. Facebook's help page tells you to enable a secure connection (RTMPS) if your software supports it, and Kick's ingest address is an rtmps:// address. LinkedIn says it supports both RTMP and RTMPS.

Strengths and limits

  • Widely supported. The documentation of YouTube, Twitch, Facebook, Kick and LinkedIn that we reviewed describes RTMP or RTMPS ingest, and common encoders such as OBS Studio can send it.
  • Simple to configure. One URL and one key.
  • Not built for lossy networks. Under the specification, RTMP runs over a reliable transport such as TCP. If your connection drops packets, SRT was designed to recover from loss; compare them in RTMP vs SRT.
  • Ingest, not playback. Modern browsers do not play RTMP natively; viewers typically receive HLS or a similar format; see what is HLS.

RTMP and multistreaming

With a multistreaming relay you send one RTMP (or SRT) stream to the relay, and the relay publishes copies to each platform's RTMP address. That is why you upload only one stream. Multistream Platform accepts RTMP and SRT ingest, relays to YouTube, Twitch, Facebook, Kick, TikTok and custom endpoints, and has edge nodes in US East, US West, EU Central, Tokyo and São Paulo. Learn the setup in how to multistream with OBS Studio.

Try it with Multistream Platform. Send one RTMP or SRT stream and relay it to YouTube, Twitch, Facebook, Kick, TikTok and custom endpoints. Start on the free Starter plan (2 channels, 20 streaming hours a month) and see the pricing page for paid plans.

Sources

Platform figures were checked on October 5, 2026. Platforms change their recommendations, so confirm against the current documentation before you go live.

Frequently asked questions

What does RTMP stand for?
Real-Time Messaging Protocol. It was developed by Adobe, which published the specification in December 2012.
Yes for ingest: the platform documentation we reviewed (YouTube, Twitch, Facebook, Kick and LinkedIn) all describe sending a stream to them with a server URL and stream key over RTMP or RTMPS.
RTMPS is RTMP over an encrypted connection. YouTube recommends RTMPS, and Facebook asks you to enable a secure connection if your software supports it.
A private code that identifies your stream to the server so it knows which channel to publish to. See the What is a stream key page.
RTMP is the simplest and most widely supported. SRT is designed for unreliable networks. Multistream Platform accepts both; the RTMP vs SRT guide compares them.
Not natively. Viewers normally receive HLS or a similar format; see What is HLS.
Yes. It accepts RTMP and SRT ingest from encoders such as OBS Studio and vMix.
Have questions that aren't listed here? Talk to the team
Go Live Today

Ready to stream everywhere?

Bring your live, hosted, and pre-recorded streams into one platform.

One platform. Limitless audiences. Stream. Grow. Everywhere.