Custom RTMP Explained: Server URL, Stream Key and Setup

What a custom RTMP destination is, the parts of the address, rtmp:// vs rtmps://, where each platform shows it, and how to fix common errors. Checked October 16, 2026.

What custom RTMP means

Custom RTMP is a way of setting up a live stream destination by typing in the RTMP address yourself, instead of picking a named service from a list. You enter two values: a server URL (where to send the stream) and a stream key (which channel or event it belongs to). Your encoder then publishes the stream to that address over RTMP, or over RTMPS if the address starts with rtmps://.

The idea is the same everywhere, but the label changes. Instagram calls it Custom RTMP, LinkedIn calls it a custom stream (RTMP), Facebook tells you to set your software to Custom Streaming Server or RTMP Server, and Kick's OBS steps change the service to Custom.... This guide explains each part of a custom RTMP destination, where the platforms show the values, how to use one when you multistream, and how to fix the errors people hit most. It uses only the platforms' own documentation, checked on October 16, 2026. For a one-line definition, see the streaming glossary.

The two values: server URL and stream key

Most streaming software has two fields for a custom destination. The server field (also called the stream URL, ingest URL or RTMP URL) holds the address of the platform's ingest server. The stream key field holds a private code. Twitch's developer documentation shows how the two fit together: every broadcast uses an RTMP URL of the form rtmp://<ingest-server>/app/<stream-key>, where the ingest server is a specific Twitch server and the stream key, which Twitch assigns, uniquely identifies the stream.

Examples from Twitch Developers (Video Broadcast), YouTube Help (Encrypt your stream using RTMPS) and Kick Help, checked October 16, 2026. Never copy an example key: use the one your platform shows you.
PartExample from official documentationWhat it does
Schemertmp:// or rtmps://Plain RTMP, or RTMP over an encrypted TLS connection (RTMPS)
Host (ingest server)sfo.contribute.live-video.net (Twitch's example)The server that receives your stream
Port (optional):443 (YouTube's RTMPS example, Kick's LiveU note)Only needed when the platform or your software asks for it
Application path/app (Twitch) or /stream (YouTube's example)Part of the server URL; copy it exactly as shown
Stream keylive_user_123456789 (Twitch's sample key)Identifies your channel or event; keep it secret

Two practical points follow from this. First, the server URL already contains everything except the key, including any path such as /app, so copy it whole and do not add the key to it when your software has a separate key field. Second, if a tool only has one field, it usually wants the combined form server-url/stream-key. Our RTMP URL and stream key helper shows how each platform describes its values, and what is a stream key explains the key itself.

rtmp:// or rtmps://

The scheme at the start of the server URL decides whether the connection is encrypted. YouTube describes RTMPS as RTMP over a Transport Layer Security (TLS/SSL) connection that provides encryption, and recommends it. With plain RTMP nothing is encrypted, including the stream key your encoder sends when it starts publishing; with RTMPS the whole connection runs inside TLS.

  • YouTube shows the ordinary RTMP URL by default. Click the lock icon in the Stream URL field to reveal the RTMPS URL.
  • Twitch publishes both an rtmp:// and an rtmps:// URL template for each server in its ingest server list.
  • Facebook says to enable a secure connection (RTMPS) if your software supports it.
  • Kick gives an rtmps:// address. LinkedIn says it supports both RTMP and RTMPS.

The rule of thumb is simple: use the RTMPS address when the platform offers one and your software supports it, and keep the scheme and the server together. YouTube's troubleshooting says both the protocol and the server should be rtmps, not just rtmp. Some RTMPS addresses also carry a port: YouTube's example is rtmps://exampleYouTubeServer.com:443/stream, and Kick's note for LiveU Studio adds :443/app to its stream URL. Only add a port when the platform or your software tells you to.

Service presets vs Custom

Streaming software usually offers two ways to add a destination. A service preset is a named entry, such as a platform you pick from a list, where the software already knows the server addresses and you mostly paste a key or sign in. Custom means the software knows nothing about the destination: you supply the full server URL and the key yourself.

Choose Custom when:

  • the platform you want is not in your software's list;
  • the platform's own instructions tell you to (Instagram, for example, says Instagram Live must be added as a Custom RTMP endpoint);
  • you are sending to a multistreaming relay, which gives you its own ingest URL and key;
  • you run your own RTMP server, or a partner or venue gives you an address to send to.

The trade-off is that a preset can handle server selection for you, while with Custom an exact copy of the URL is your job. Instagram notes that where you enter a custom RTMP destination differs between platforms but is most often in the stream settings, and Facebook asks you to check your encoding software's documentation for custom RTMP.

Where each platform gives you a custom RTMP address

Every platform below gives you a server URL and a stream key to paste into a custom destination. What differs is where you find them, whether the key lasts, and which protocol is documented.

From each platform's own help or developer pages, checked October 16, 2026. Platforms change their screens, so follow what your account shows.
PlatformWhat the platform calls itWhere it shows the URL and keyProtocol it documents
YouTubeStream URL and stream keyLive Control Room, Stream tabRTMP shown by default; the lock icon reveals the RTMPS URL, which YouTube recommends
TwitchRTMP URL in the form rtmp://<ingest-server>/app/<stream-key>Broadcaster dashboard on twitch.tv, or the Get Stream Key APIRTMP; Twitch's ingest list gives an rtmp:// and an rtmps:// template for each server
FacebookServer URL and Stream key; set your software to Custom Streaming Server or RTMP Serverfacebook.com/live/create, video source Streaming softwareEnable a secure connection (RTMPS) if your software supports it
KickStream URL and Key; in OBS, service set to Custom...Creator dashboard, Channel, Stream URL and KeyAn rtmps:// address
LinkedIn LiveCustom stream (RTMP)Live Studio, Manage streams, Prepare to go live, Get URL (per event)RTMP and RTMPS
InstagramCustom RTMPLive Producer on instagram.com (limited access)Instagram says to add Instagram Live as a Custom RTMP endpoint

Two platforms behave differently from the rest and are worth planning for. LinkedIn generates the Stream URL and Stream Key for each event: Prepare to go live becomes clickable one hour before a scheduled event (two hours for verified Pages). Instagram says its stream key is not static and refreshes each time you use Live Producer. With either, expect to paste fresh values for every broadcast. The per-platform details are on stream keys by platform, including YouTube, Twitch, Facebook, Kick, LinkedIn Live and Instagram. TikTok is not in the table because we could not confirm its RTMP steps from TikTok's own documentation; see how to stream on TikTok without a stream key.

How to add a custom RTMP destination in OBS Studio

Kick's help centre lists the OBS Studio steps for a custom destination, and they work the same way for any server URL and key:

  1. Copy the server URL and stream key from the platform (or from your relay's dashboard).
  2. In OBS Studio, open Settings (Kick's guide: File, then Settings) and select Stream.
  3. Change Service to Custom....
  4. Paste the server URL into Server and the key into Stream Key, then save the settings.
  5. Click Start Streaming. On platforms with a preview step, check the preview on the platform's page and click Go live there.

Other encoders use different names for the same thing. Facebook's instructions say to locate the stream or encoder settings, set the type to Custom Streaming Server or RTMP Server, paste the Server URL and Stream key, and enable RTMPS if available. Before a public show, run a test: the OBS Project's Quick Start Guide strongly encourages running a test for a few minutes. For the full platform walk-throughs, see YouTube with OBS Studio, Twitch with OBS Studio and Facebook with OBS Studio, and use best OBS settings for streaming for bitrate and keyframe values.

Custom RTMP when you multistream

Custom RTMP shows up twice in a multistreaming setup, and it helps to keep the two apart.

  • From your encoder to the relay. Your encoder sends one stream to the relay, so in OBS you set Service to Custom... and paste the relay's ingest URL and stream key. Multistream Platform accepts RTMP and SRT ingest from OBS Studio, vMix, Wirecast and hardware encoders.
  • From the relay to each destination. The relay delivers copies to every platform you enable. Multistream Platform can connect YouTube, Twitch, Facebook and others with OAuth, and its pricing page says all plans support custom RTMP and SRT destinations: you enter the target RTMP URL and stream key once, in the relay, rather than in your encoder.

This is how you reach a service that has no built-in connection: if it gives you an RTMP address and a key, it can be a custom destination. Remember the platforms whose credentials change. LinkedIn creates new values for each event and Instagram refreshes its key each session, so update those destinations before every broadcast. Your upload only has to carry one stream either way; the multistream bandwidth calculator shows the difference, and how to multistream with OBS Studio walks through the setup.

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.

A custom RTMP server, and what free RTMP means

People searching for a custom RTMP server or free RTMP usually want one of three things:

  • A destination to send to. Platforms such as YouTube, Twitch, Facebook, Kick and LinkedIn run the ingest servers; you get the address and key from your account, as shown above.
  • A server of your own. You can run one with open-source software. The README of nginx-rtmp-module, an NGINX-based media streaming server, lists RTMP, HLS and MPEG-DASH live streaming and stream relay in push and pull models. Running your own server also means you host it, pay for its bandwidth, keep it updated and protect its stream keys.
  • A free way to send one stream to several places. Multistream Platform's Starter plan costs $0 per month and supports up to 2 channels at once, 20 streaming hours a month at 720p and 30 fps, on the same RTMP and SRT relay as the paid plans. See pricing and features.

Common custom RTMP errors and fixes

Most custom RTMP problems come from a mistyped address, a mismatched scheme or an out-of-date key. These are the cases the platforms and the OBS Project describe:

Wording of the errors and fixes from YouTube Help, Kick Help, LinkedIn Help, Instagram's Live Producer post and the OBS Project's Stream Connection Troubleshooting page, checked October 16, 2026.
What you seeLikely causeWhat to try
Failed to connect to server, or connection timed outWrong server URL, or an RTMPS URL used with software that does not support RTMPSYouTube says to check that both the protocol and the server are rtmps, and to check whether your encoder supports RTMPS
The RTMP server sent an invalid SSL certificateRTMPS address or port not acceptedYouTube suggests making sure the URL is correct, then specifying port 443 in the URL or in your encoder's port field
Connected, but the platform says the key is invalidOld key after a reset, extra spaces, or a key for a different eventCopy the key again. Kick says to update your software after a reset; LinkedIn and Instagram issue new credentials per event or session
Connected, but the stream does not go liveThe platform needs a step on its own pageFacebook, LinkedIn and Instagram show a preview first and need you to click Go live (Go Live Now on Facebook); Kick says to set a title and category or the stream may not start correctly
Dropped frames or repeated disconnectsThe connection is not stable or cannot keep up with your bitrateThe OBS Project suggests lowering the bitrate (start at about 75% of upload speed), trying a different server and checking security or VPN software; on lossy networks consider SRT

One more from Instagram: if you stop the stream in your software before you end the broadcast in Live Producer, Instagram says the live video carries on showing the last frame it received. End the broadcast on the platform first, then stop your software.

Keep your stream key safe

A custom RTMP destination is only as private as its key. Facebook puts it plainly: never share your Stream Key or Persistent Stream Key, because anyone with these details can stream to your post. Practical habits:

  • Prefer the rtmps:// address when the platform offers it, so the key is not sent over an unencrypted connection.
  • Keep keys out of screenshots, chat, recordings and public code repositories, and turn on your software's option to hide the key field if it has one.
  • If a key leaks, reset it on the platform. Kick documents a Reset button in its dashboard and says to update your streaming software afterwards; YouTube and Instagram also let you get a new key.
  • When you use a relay, the destination keys live in the relay's settings, so update them there after a reset.

More detail, platform by platform, is in what is a stream key.

When SRT is a better fit than custom RTMP

RTMP runs over a reliable transport such as TCP, which works well on a clean wired connection. On venue Wi-Fi, cellular uplinks or long-distance links that drop packets, SRT was designed to recover from loss. OBS Studio can send to an srt:// address entered as a custom server, and Multistream Platform accepts SRT ingest, so you can use SRT for the leg to the relay while the relay still delivers RTMP or RTMPS to each platform. Compare the two in RTMP vs SRT.

Sources

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

Frequently asked questions

What is custom RTMP?
A destination type in streaming software where you enter the RTMP server URL and stream key yourself, instead of choosing a named service. Instagram calls it Custom RTMP, LinkedIn a custom stream (RTMP), and in OBS Studio you set Service to Custom...
The server URL is the address of the ingest server, such as Twitch's rtmp:///app. The stream key identifies your channel or event and must be kept private. Most software has a separate field for each.
Use rtmps:// when the platform offers it and your software supports it. YouTube recommends RTMPS, Facebook asks you to enable it if supported, and Kick gives an rtmps:// address. YouTube says both the protocol and the server should be rtmps.
Open Settings, then Stream, change Service to Custom..., paste the server URL into Server and the key into Stream Key, save, and click Start Streaming. Kick's help centre lists these steps.
Platforms such as YouTube, Twitch, Facebook, Kick and LinkedIn give you an ingest address and key in your account. You can also run your own server with open-source software such as nginx-rtmp-module. To relay one stream to several places, Multistream Platform's Starter plan is $0 per month for up to 2 channels at once.
Usually the server URL is wrong, the scheme does not match (rtmps vs rtmp), or the key is out of date. YouTube suggests checking that the protocol and server are both rtmps and trying port 443 for SSL errors.
Yes. The pricing page says all plans support custom RTMP and SRT destinations: you enter the target RTMP URL and stream key, and the relay delivers your stream there.
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.