A lightweight Windows program that performs a bandwidth test for Twitch.
TwitchTest is a free, open source program that allows you to easily measure your upload speed to each Twitch server. Picking a server with sufficient bandwidth, low RTT and a high quality rating will ensure the best results when streaming to Twitch.
A screenshot of the program. Here's what the different numbers mean:
Bandwidth: Fairly self explanatory - this is the bandwidth TwitchTest was able to sustain to the server. Note that TwitchTest will never go above 10mbps during testing and Twitch currently recommend a maximum of 6mbps (6000 kbps) when streaming.
Quality: This is a metric which tries to measure the overall stability / quality of the connection based on the rate at which data was sent and the number of re-transmitted packets. It's measured out of 100, and a quality rating of 80 or higher is recommended for a stable stream. If your internet connection is below 10mbps upload, quality numbers may be lower due to your ISP discarding data.
RTT: This is the time it took to establish the connection (Round Trip Time). Servers further away from you will have a higher RTT.
The TCP Window setting allows you to experiment with fine tuning certain TCP parameters. The default of 64k matches what OBS Studio uses. Other programs may use the system default. You probably shouldn't change this unless you really know what you're doing!
Note that speed test sites will not give you an accurate view of your potential upload speed to Twitch, as they are designed to measure your upload as a whole, not to a single site over a single connection. Some ISPs may also have poor routing or overloaded peering with Twitch which affects your maximum possible upload speed. When setting the bitrate in your streaming program, you'll want to leave around 500kbps spare for any games and other data that may need to be sent. Streaming at your absolute maximum bitrate will result in lag and possible dropped frames.
You must not already be streaming during the test, and although TwitchTest needs your stream key, your stream will not go live. Testing can take a long time, so it's best to select only regions close to you.
As of version 1.4, TwitchTest sends your settings and results to my server for analysis. Data is sent securely over HTTPS and will only be made available in anonymized, aggregate form, eg to show how a certain ISP compares relative to others. If you wish to opt out of this data collection, pass
--disable-data-upload on the command line when starting TwitchTest.
TwitchTest will work on all modern versions of Windows. The Visual Studio 2015 Runtime (vc_redist.x86.exe) is required (you'll get a missing VCRUNTIME140.DLL error otherwise). The program will prompt to launch as an administrator since connection quality statistics can only be measured under admin mode.
Download: twitchtest-1.4.zip (55 KiB).
TwitchTest is open source, licensed under the GPLv2. Source code can be found on GitHub.
If you find TwitchTest useful, please support my work by making a PayPal donation or using Bitcoin (1J6K7yYNC697aqNA9nM52CkwuFMDETQTYh) / Bitcoin Cash (18Hxu4ciWgiMVvyMMYpJMMF7mhqpVDxKGB). Thanks!
Added data sharing (see privacy notice above).
Show interface name and driver version on the main window.
Check for known buggy 3rd party drivers and warn user if found.
Updated for new Twitch API which requires client_id.
Save the last used stream key.
Add "Share" button which uploads a screenshot of the results to imgur.
First public version.