Overview
The Elgato Stream Deck MK.2 is a dedicated hardware controller equipped with 15 customizable LCD keys, functioning as a programmable macro pad and control surface. It is engineered to provide tactile control over software applications and system functions, aiming to reduce reliance on keyboard shortcuts and mouse clicks during complex tasks. The device targets content creators, live streamers, video editors, audio engineers, and developers who require immediate access to a range of commands and automations.
Each LCD key on the Stream Deck MK.2 can be customized with icons and assigned to trigger single or multi-action commands. These actions can range from launching applications, switching scenes in streaming software like OBS Studio or Twitch Studio, adjusting audio levels, to executing complex sequences of operations across multiple applications. The underlying Stream Deck software allows users to create profiles that automatically switch based on the active application, providing context-sensitive controls. This functionality is particularly useful in environments where rapid task switching and precise command execution are critical, such as during live broadcasts or intensive editing sessions.
Developers can extend the Stream Deck's capabilities through its SDK, enabling the creation of custom plugins. These plugins allow the Stream Deck to interact with a broader array of third-party applications and services, integrating specialized tools directly into a user's workflow. This extensibility positions the Stream Deck MK.2 not just as a consumer peripheral, but as a flexible interface for custom automation solutions. Its design emphasizes immediate feedback via dynamic LCD key icons, which can change based on the state of an application or system, offering visual confirmation of executed commands or active functions. This visual feedback, combined with tactile key presses, aims to enhance efficiency and reduce mental load during demanding operational sequences.
While often associated with streaming, its utility extends to any professional workflow benefiting from macro key assignments and rapid application control. For instance, developers might use it to trigger build commands, run scripts, or navigate IDEs, while video editors could assign common cut, trim, or effect application functions. The Stream Deck MK.2 is a component within Elgato's broader ecosystem of creator tools, which includes capture cards and lighting solutions, all managed through integrated software platforms.
Key features
- 15 Customizable LCD Keys: Each key features a dynamic LCD display that can show custom icons, providing visual feedback for assigned actions or application states.
- Multi-Action Functionality: Users can program a single key to trigger a sequence of actions, enabling complex automations with one press.
- Profile Switching: The Stream Deck software automatically detects the active application and switches to a corresponding key profile, offering context-sensitive controls.
- Hot Swappable Faceplate: Allows for aesthetic customization and personal branding (Elgato documentation).
- Adjustable Stand: Provides three angle options for ergonomic placement on a desk.
- USB-C Connectivity: Connects to the host system via a detachable USB-C to USB-A cable.
- Stream Deck SDK: Enables developers to create custom plugins using C++ or JavaScript, extending functionality to integrate with additional software and services (Elgato Developer Documentation).
- Direct Integrations: Built-in support for popular streaming platforms (Twitch, YouTube), creative software (OBS Studio, Adobe Premiere Pro), and audio tools (Wave Link).
Pricing
The Elgato Stream Deck MK.2 is offered as a single hardware purchase, with software provided free of charge upon acquisition. The pricing structure is a one-time cost for the physical device.
| Product | Price (USD) | Details | As Of |
|---|---|---|---|
| Elgato Stream Deck MK.2 | $149.99 | 15 customizable LCD keys, included software. | 2026-06-11 (Elgato Pricing Page) |
Common integrations
The Elgato Stream Deck MK.2 integrates with various software applications and services, primarily focusing on content creation and live streaming workflows. The SDK further expands its integration capabilities.
- OBS Studio: Scene switching, source toggling, audio control (Elgato OBS Studio Setup Guide).
- Twitch: Chat commands, stream marker creation, clip recording.
- YouTube: Live stream control, chat moderation.
- Spotify: Playback control, track skipping.
- Adobe Creative Suite: Custom actions for Photoshop, Premiere Pro, and After Effects.
- Discord: Mute/unmute, push-to-talk.
- Wave Link: Audio mixing and routing for Elgato's audio ecosystem.
- VoiceMod: Voice changer activation and profile switching.
Alternatives
Several products offer similar functionality to the Elgato Stream Deck MK.2, ranging from dedicated control surfaces to highly customizable mechanical keyboards.
- LoupeDeck: Offers control surfaces with dials, buttons, and touchscreens, often tailored for photo and video editing (LoupeDeck Official Site).
- Razer Stream Controller: A direct competitor featuring customizable buttons, touch screen, and haptic feedback, developed in partnership with LoupeDeck (Razer Stream Controller Product Page).
- Keychron Q-series (via QMK/VIA): Mechanical keyboards with QMK/VIA compatibility allow for extensive key remapping and macro creation, transforming them into powerful custom control pads (Keychron Official Site).
Getting started
To develop a basic plugin for the Elgato Stream Deck, developers leverage the Stream Deck SDK. The following example outlines a minimal C++ plugin structure that responds to a key press and logs a message. This requires setting up the development environment as per the Elgato Stream Deck SDK overview.
#include "ESDSDKDefines.h"
#include "ESDBasePlugin.h"
class MyPlugin : public ESDBasePlugin {
public:
MyPlugin() = default;
virtual ~MyPlugin() = default;
void KeyDownForAction(const std::string& inAction, const std::string& inContext, const json &inPayload, const std::string& inDeviceID) override {
// Example: Log a message to the console when a key is pressed down
// In a real plugin, you might trigger an application command or API call here.
ESDDebugMsg("Key down detected for action: %s\n", inAction.c_str());
// You could also send a message back to the Stream Deck UI
// SetTitle(inContext, "Pressed", kESDTargetSoftware);
}
// Other necessary overrides for ESDBasePlugin
void KeyUpForAction(const std::string& inAction, const std::string& inContext, const json &inPayload, const std::string& inDeviceID) override {}
void WillAppearForAction(const std::string& inAction, const std::string& inContext, const json &inPayload, const std::string& inDeviceID) override {}
void WillDisappearForAction(const std::string& inAction, const std::string& inContext, const json &inPayload, const std::string& inDeviceID) override {}
void DeviceDidConnect(const std::string& inDeviceID, const json &inDeviceInfo) override {}
void DeviceDidDisconnect(const std::string& inDeviceID) override {}
void DidReceiveSettings(const std::string& inAction, const std::string& inContext, const json &inPayload, const std::string& inDeviceID) override {}
void DidReceiveGlobalSettings(const json &inPayload) override {}
};
// Main entry point for the plugin (implementation depends on OS and SDK setup)
// This typically involves creating an instance of MyPlugin and running the event loop.
This C++ snippet illustrates the core structure for handling key press events. The KeyDownForAction method is invoked when a user presses a key assigned to this plugin's action. Within this method, developers can implement custom logic, such as interacting with external APIs, executing system commands, or communicating with other running applications. The Stream Deck SDK handles the communication between the hardware, the Stream Deck software, and the plugin, abstracting away the low-level details of device interaction.