One of the biggest complaints about RGB is the software ecosystem surrounding it. Every manufacturer has their own app, their own brand, their own style. If you want to mix and match devices, you end up with a ton of conflicting, functionally identical apps competing for your background resources. On top of that, these apps are proprietary and Windows-only. Some even require online accounts.

What if there was a way to control all of your RGB devices from a single app, on both Windows and Linux, without any nonsense? That is what OpenRGB sets out to achieve. One app to rule them all.


Lightweight User Interface

OpenRGB keeps it simple with a lightweight user interface that doesn't waste background resources with excessive custom ../../static/images and styles. It is light on both RAM and CPU usage, so your system can continue to shine without cutting into your gaming or productivity performance.

Eliminate Bloatware

If you have RGB devices from many different manufacturers, you will likely have many different programs installed to control all of your devices. These programs do not sync with each other, and they all compete for your system resources. OpenRGB aims to replace every single piece of proprietary RGB software with one lightweight app.

Open Source

OpenRGB is free and open source software under the GNU General static License version 2. This means anyone is free to view and modify the code. If you know C++, you can add your own device with our flexible RGB hardware abstraction layer. Being open source means more devices are constantly being added!


OpenRGB runs on Windows, Linux and MacOS. No longer is RGB control a Windows-exclusive feature! OpenRGB has been tested on X86, X86_64, Arm32, and Arm64 processors including Arm mini-PCs such as the Raspberry Pi.


OpenRGB provides a network-based Software Development Kit, which allows third-party software to control all of your RGB. This allows for game integrations, music visualization, ambient lighting, and anything else you can imagine. SDK bindings are available for multiple programming languages including C++, Python, C#, Java, and more. OpenRGB also includes an SDK client so you can synchronize multiple systems over the network.

Plugin Interface

OpenRGB provides a plugin interface. Plugins can add additional functionality to the OpenRGB user interface. These can provide new features without having to run external software. Existing plugins include an effects engine, an E1.31 data receiver, and a visual layout editor.

Supported Devices

The device categories listed here support OpenRGB and the specific devices listed have been tested to work with OpenRGB. If your specific device isn't listed, that doesn't necessarily mean it won't work with OpenRGB, just that it hasn't been tested before.