top of page

Make your heart rate influence your VTube Studio avatar directly

Updated: Oct 25, 2022

VTubing is a world where creative freedom strives. You can quite literally create your avatar from scratch to better fit your personality. Unfortunately, though, some ways of expression are sacrificed in the process. Human emotions manifest themselves in very complex ways and not all of them can be conveyed to their fullest extent with only face or body tracking and manual tweaks to the avatars’ appearance.

Heart rate detection has been a staple in Vtubers’ toolboxes for a while. We are really grateful for all the members of this community who are willing to go an extra mile to better express their emotions via their avatars and outlays. And we are not the only ones who are interested. Skeletom (Tom Farro) released a plugin for VTube Studio that allows your heart rate to impact the looks and animations of your avatar.

You get nervous, frightened or excited, your heart rate rises, and your avatar turns red (or some other color) in the face and breathes faster. It’s as simple as that. And the set-up process isn’t complicated either.

What you need to get started

Your whole setup before downloading the plugin should look like this: Vtube Studio downloaded and installed, Pulsoid account set up and connected to your compatible heart rate monitor via our IOS or Android app, your monitor charged and ready to read your heart rate. After everything is done, install the plugin and launch it. It should automatically connect to VTube Studio. From there on you’ll need to set the minimum and maximum heart rate values to define the interval on which the plugin will activate.

VTube Studio and plugin download links

For this plugin to work you’ll need your VTube Studio set up first. It can be downloaded for free here.

The latest version of the plugin itself can be found here. Or here.

Connecting your Pulsoid account

More information about setting up your Pulsoid account and connecting your monitor to our app can be found here. Now let's connect the plugin to it.

You can connect your Pulsoid account by clicking the 'Login' button in the plugin. You will be asked to grant this plugin permission to connect to your account. After that you'll get an 'Authentication Token' which you can paste into the plugin.

Plugin parameters and configuration

After everything is connected you get access to Art Mesh Tint modules and Custom Tracking Parameters. Art Mesh Tint allows you to gradually change the color of particular elements of your avatar.

Custom Tracking Parameters include:

  • VTS_Heartrate_Linear: A value that scales from 0.0 to 1.0 as your heart rate moves across the expected range.

  • VTS_Heartrate_Pulse: A value that oscillates between 0.0 and 1.0 with a frequency exactly matching your heart rate.

  • VTS_Heartrate_Breath: A value that oscillates between 0.0 and 1.0 with a frequency slower than Pulse, suitable for controlling your model's ParamBreath output.

Check out the official VTube Studio documentation to see how these parameters can be incorporated into your models' behaviours and animations. Basically, you can drive any motion in your avatar, based on your heart rate

. The ability to trigger animations/toggle emotions at certain heart rate thresholds is planned to be added natively in the future.

We are really thankful to Skeletom for his involvement in the development of heart rate streaming. You can write him some kind words, report a bug or ask a question related to this plugin on his Twitter page or via

Update: Tom continually updates this plugin. Here are some features you may find useful:

-Multiple settings profiles supported for one model. Good for tweaking your model's behaviour to better fit your activities: chill just chatting, horror games or workouts.

-Automatic expression and hotkey triggering at desired heart rate thresholds.

-11 new parameters for controlling props animations or whatever your heart (wink-wink) desires. You can find the full list of available parameters here.

-Its own API to use parameter calculated by this plugin in your own solutions and other apps.



Recent Posts
bottom of page