19. Stream Not Reaching Twitch
Troubleshooting issues specific to streaming to Twitch.
19.1 Common Issues
| Issue | Description |
|---|---|
| Transcoding Quality | Stream looks worse on Twitch than expected, poor video quality |
| Ingest Server Issues | Stream works intermittently, connection failures |
| Stream Not Appearing | OBS shows streaming but nothing appears on Twitch |
| Debug Logs | How to check Twitch-specific logs and error messages |
19.2 Transcoding Quality
Issue: Stream looks worse on Twitch than expected
These settings apply only when TWITCH_PARTNER=FALSE (the default). In partner mode the relay passes the stream through unchanged, so set quality in OBS instead.
Solution: In env/relay.env, raise the bitrate or use a slower encoder preset:
# Video bitrate is TWITCH_KBITS_PER_VIDEO_FRAME × TWITCH_FPS: 100 × 60 = 6000 kbps (default 75 × 60 = 4500)
TWITCH_KBITS_PER_VIDEO_FRAME=100
# Better quality per bit, but uses more CPU (default: medium)
TWITCH_X264_PRESET=slow
Recreate the container so it reads the new values:
While streaming, check the relay's CPU use:
If CPU % stays near the machine's limit, set TWITCH_X264_PRESET back to medium.
Watch the stream on Twitch to confirm the quality changed.
See Twitch Configuration for all settings.
19.3 Ingest Server Issues
Issue: Stream works sometimes, fails other times
Check: Try a different ingest server. Set TWITCH_ENDPOINT in env/relay.env to a region code from Twitch's ingest list. The code is the first part of each url_template host, for example use20 from rtmp://use20.contribute.live-video.net/app/{stream_key}:
Other examples: usw20 (US West, Oregon), euc10 (Europe, Frankfurt). Set one value only, with no comment on the same line. The default is use10 (US East, N. Virginia). For older names such as jfk, see TWITCH_ENDPOINT.
Recreate the container so it reads the new value:
Verify connectivity: Test that the relay can open a Real-Time Messaging Protocol (RTMP) connection (TCP port 1935) to Twitch:
Replace <TWITCH_ENDPOINT> with your TWITCH_ENDPOINT value (default use10). A working connection prints open (the IP address will differ):
If the command does not print open, outbound port 1935 is blocked between the relay and Twitch. If it prints open, stream for a while on the new endpoint to confirm the drops have stopped.
19.4 Stream Not Appearing
19.4.1 Symptoms
- OBS shows "Streaming" but stream doesn't appear on Twitch
- No errors in OBS
19.4.2 Possible Causes
19.4.2.1 Service Not Enabled
Check: Look at container logs during startup:
When Twitch is enabled, one of these lines appears, depending on TWITCH_PARTNER:
Twitch Partner configuration complete, and service enabled.
Twitch Non-Partner configuration complete, and service enabled.
If Twitch is not enabled, this line appears instead: TWITCH_KEY is not set. Skipping Twitch configuration.
Solution: If Twitch is missing:
- Verify TWITCH_KEY is set in env/relay.env
Recreate the container so it reads the new value:
Confirm the service is enabled:
19.4.2.2 Wrong Stream Key
A key that is well-formed but wrong is accepted by the relay. The relay cannot tell it is wrong, and the log may show nothing.
Check: Confirm the relay can reach Twitch:
Then start streaming and open Stream Manager. If the command above prints open and Stream Manager shows no incoming stream, the key is the likely cause.
Solution: Copy the key again from Twitch dashboard into env/relay.env.
Recreate the container so it reads the new value:
Confirm the service is enabled:
19.4.2.3 Platform-Specific Issues
- Verify stream key hasn't expired
- Check Twitch dashboard for account status
- Ensure you're not already streaming from another source
19.4.3 Confirm the Fix
Start streaming in OBS and open Twitch Stream Manager. The stream shows as live.
19.5 Debug Logs
For the startup lines every service prints, and which ones mean the container stopped, see Check Service Status. For more detail while streaming, see Increase Log Verbosity.
19.6 See Also
- Troubleshooting Overview - Main troubleshooting guide
- Connection Issues - Network and connectivity problems
- Twitch Service - Twitch configuration details