How to use a Stream Deck for productive work

I’ve recently acquired an Elgato Stream Deck Mini after reading about it in German computer magazine C’t. For those who are not familiar with the Stream Deck, it’s essentially a programmable macro pad, but with the following features:

  • A small TFT screen behind each button, which shows what a button does, but can also show the state of certain things.
  • Folders, pages, and profiles, giving each Stream Deck (even the six-button Mini that I use) an unlimited amount of buttons.
  • Automatic profile switching based on which application is in use.
  • An easy to use configuration software.
  • A marketplace that offers stuff like icons, many of which are free.
  • And, very important, support for plugins, many of which are available for free from the marketplace (and you can even write your own).

There are several versions available with different button counts, the Stream Deck + also features four dials. But even the entry-level Mini can add a lot of benefit to your work setup. As the name implies the original target group are streamers, but the automation possibilities make it very useful for anyone who works with software that requires repetitive keypresses or mouse clicks.

Running programs

The most obvious use is to use the Stream Deck to launch programs. This is easily accomplished by configuring buttons with the Open action and selecting the program that you want to run. The software even automatically extracts the icon from the program file. It is also possible to configure buttons to open specific websites.


Traditional macro pad territory is pressing a button for some shortcut. Many programs offer many different keyboard shortcuts, which may be difficult to remember. Thanks to the small screens behind each button, it’s easy to create buttons that are self-explanatory. It is also possible to create multi-actions that run several shortcuts and other actions after each other, with a delay in between that can be configured. This comes in handy for actions that always ask for confirmation. QGIS e.g. always asks for confirmation when removing a layer from the current project. By configuring a multi-action consisting of Ctrl-D and Enter, this can be reduced to a single keypress, and you don’t even need to remember the shortcut. I also use the Stream Deck for Microsoft Visual Studio, as I can never remember the shortcuts for “Step Into” and “Step Over” during debugging. Shortcuts also come in handy for these annoying Fn + some narrow button at the top of your laptop combination, e.g. for increasing and decreasing volume.

Don’t forget to put the buttons for different programs into respective profiles, as this makes it possible to automatically switch between these.

My Visual Studio profile

Text snippets

It’s not something that I’ve used yet, but it is possible to insert text snippets at the press of a button. This should be very helpful e.g. in customer support.


While the things mentioned above already make a Stream Deck very useful, it’s the plugins that lift it to the next level. There are some nice gimmicks available like displaying a clock or your current CPU load, but some are extremely useful.

The Microsoft Teams plugin uses the Teams API to directly talk to Teams for things like muting your mic or raising your hand. There’s also a plugin for Visual Studio Code. But the best plugins must be some of those by a very prolific developer called BarRaider (documentation here), who also wrote a C# wrapper for plugin development:

  • Advanced Launcher starts programs, but lets you configure things like arguments, working directory, and whether to run as administrator.
  • Win Tools include a Mute Toggle that displays the current state, and several other Windows-related functions.
  • Super Macro is a more powerful version of the built-in shortcuts and multi-action functionality. Most importantly, it is possible to move the mouse to a given location and execute mouse clicks. This can be used to automate things that are normally available only via a menu. One example is deleting a scalar field in CloudCompare, a function that I use regularly when manually classifying point clouds. This normally requires diving down two menu levels. With Super Macro, this can be automated to a single button press.

Leave a comment

Your email address will not be published. Required fields are marked *