What happens when one of your platforms drops mid-stream
7cubit Team
More in Engineering

You are live on five destinations. Chat is moving. The countdown in Web Studio just hit zero. Then one platform's ingest dies — not your whole stream, just one destination. Viewers on the other platforms should never notice. That separation is not luck. It is how a multistream pipeline has to be built if simultaneous destinations are going to mean anything under real failure.
At ApexStream, multistreaming is not one fat pipe that fans out and fails as a unit. It is one production source — Web Studio or your encoder on RTMP, RTMPS, SRT, or WHIP — branched into independent destination workers. Each destination gets its own connection state, its own retry budget, and its own health signal. When one drops, the others keep ingesting. That is the product promise behind Free (2 destinations) through Enterprise (50): one bad handoff should not take the show offline.
What "dropped" actually means
A destination can fail for several reasons that look the same from the creator's chair: the platform closed the RTMP session, auth expired, the remote side hit a rate limit, the network path black-holed packets for long enough that the session timed out, or the platform returned a hard reject on a key that was rotated or revoked. From the multistream layer, those are different error classes, but they all map to the same first rule: mark that destination unhealthy, stop writing frames to it, and leave every other destination alone.
Isolation is the whole game. If the fan-out shared a single write path and a shared timeout, one slow peer would stall the encoder buffer for everyone. Instead, each destination has its own outbound queue and its own socket. When Facebook stops accepting packets, YouTube's queue does not back-pressure your Web Studio mix. Twitch keeps receiving. Custom RTMP and custom SRT destinations keep going. The failure stays local.
The reconnect path (self-heal without drama)
Once a destination is marked down, we do not spam reconnects. Aggressive retry storms make platform-side bans worse and burn CPU on a host who is already live. The self-heal path is deliberate:
- Detect the close or write failure and freeze that destination's outbound.
- Surface the failure in stream health (Hobby and above) so you can see which platform dropped without guessing from chat silence.
- Wait a short backoff, then attempt a clean re-handshake with the same destination config you already set — URL, key, protocol.
- On success, rejoin the live fan-out from the current frame; we do not try to invent the seconds you already lost on that platform.
- On repeated failure, hold the destination in a failed state rather than thrashing. You can re-enable or fix credentials after the show if needed.
That last point matters. Self-heal is not infinite magic. If a stream key was revoked or a destination hit a hard policy error, reconnecting every two seconds only creates noise. The useful behavior is: try a few times with backoff, then stop and keep the rest of the multistream healthy. Flight Log history after the stream still shows what happened so you can fix the destination before next go-live.
What stays live while one path heals
Your source does not restart. Web Studio guests stay on the invite link. Scenes, overlays, ticker, countdown, polls, captions, Brand Kit, Live Commerce cards — none of that is tied to a single destination's TCP session. The production layer and the distribution layer are separate on purpose. Guests keep talking. The 9:16 portrait output keeps composing if you set Scenes → Output that way. Noise suppression still sits in front of go-live because it is a studio gate, not a destination property.
On the encoder path the same split applies. OBS, Streamlabs, or vMix pushes once into ApexStream ingest. We own the fan-out. A mid-stream drop on LinkedIn does not require you to restart the encoder or re-key YouTube. That is the point of simultaneous destinations as a plan feature, not a manual tab farm.
Why plan limits and health signals matter here
More destinations means more independent failure surfaces. Creator (5 simultaneous) and Scale (8) are not just marketing tiers; they are more workers that must stay isolated under load. Stream health on Hobby and above is the operator view of that isolation: bitrate, connection state, and which destination is sick. Without that, creators only learn from angry replies on the platform that died.
Resolution and length caps still apply to the overall session — Free at 720p and 2 hours, Hobby at 1080p (Studio 720p) and 6 hours, Creator and above with longer ceilings and higher caps — but a single destination reconnect does not reset your stream clock or force a new recording session. Cloud recording (Hobby+) and local recording (Creator+) attach to the production session, not to each social handoff. If one destination flaps, your recording timeline should still be one continuous show.
What you should do when it happens live
First, check stream health and confirm only one destination is red. If the whole multistream is unhealthy, the problem is upstream — source, local network, or ingest — not a single platform. Second, do not restart Web Studio or the encoder just because one destination failed; that punishes the audiences that are still watching. Third, if self-heal does not bring the destination back after a few attempts, leave it failed for the rest of the show and fix the key, page permissions, or custom RTMP/SRT endpoint later. Fourth, after you end, use Flight Log and analytics (viewer counts on paid plans) to see whether the drop was a blip or a pattern on that destination.
One destination's outage is a distribution problem. Treating it like a production problem is how creators take four healthy platforms offline to chase one dead one.
Engineering tradeoffs we accept on purpose
We do not promise that a healed destination will receive a perfect frame-accurate catch-up of everything it missed. Platforms do not accept time-travel. When reconnect succeeds, that destination joins from "now." Viewers who were on that platform may have seen a freeze or a short offline state; viewers on the other platforms should not have. We also do not hide permanent auth failures behind endless soft retries. Honesty in the health UI beats a spinning "reconnecting" forever.
The harder work is back-pressure policy: how full a destination queue can get before we drop frames for that destination only, and how we keep encoder latency stable when one peer is slow but not fully dead. Slow is worse than dead in multistream design. A half-open connection that accepts ACKs slowly can stall a shared path; isolating queues and capping per-destination latency is what keeps the rest of the fan-out sharp.
Mid-stream destination failure is normal infrastructure, not a rare catastrophe. The job of a multistream system is to make the failure boring: isolate it, surface it, heal when healing is possible, and protect every other platform that is still doing its job. When that path is solid, you can run the show for the audiences that stayed — and fix the one that left without lighting the whole board on fire.