Select Page

Let’s not kid ourselves, watching esports can be somewhat challenging at times. With screens full of information constantly being thrown at viewers, even experienced fans can sometimes struggle to know what’s happening. MOBAs are especially guilty of this – Dota 2 is a game with 119 heroes (at the time of this writing) each of whom have 4 or more abilities and carry up to 11 items. It’s a lot of information to process even for the most dedicated fans, but it’s particularly hard for beginners.

Esports broadcasters have long been chasing ‘non-endemic viewers’ similar to traditional sports – hoping to become the next big spectator sport. But this vision is naive because it ignores just how complex these games are and how high the barriers to entry are for viewership. With our Dota 2 product, we set out to re-imagine the MOBA viewing experience for both beginners and experienced players.


If you’ve heard of StatsHelix before it’s probably from our work in Counter-Strike. Our data visualizations have powered interactive scoreboards, stats, and minimaps at the last 3 Majors, and our post-match analysis and highlight software have been at every Dreamhack this year.

We’ve built our business on enhancing broadcasts for fans and drew on our experience in CS:GO when deciding what features to implement for Dota 2. Although they’re two very different games, viewers want similar information to help them keep track of who’s winning and by how much. We recently launched the StatsHelix Dota 2 Companion Extension with our pilot partner Oceanic Esports Dota 2 League. Here’s a look at the features and tech that went into it.


Viewers can open and close the scoreboard on-demand.


  • Hero ability descriptions: we wanted to make sure that anyone watching a Dota 2 match wouldn’t ever need to leave the stream to learn what a hero does. This helps new players understand what’s going on when spectating a hero they’ve never played before. Seasoned players can see details like damage values and timing numbers as if they were in game, which is valuable because these are routinely fine-tuned by Valve in gameplay patches.
  • Cooldowns: we also display every hero’s cooldowns for all their abilities. This is something we know that experienced players track instinctively, but was entirely impossible to show on a plain video stream. It is now at the fingertips of every single viewer. When we developed it, we didn’t intend for the feature to be so important, but we’ve noticed some viewers leaving this menu open for minutes at a time!
  • Items and talent tree: understanding how a hero is built and played is critical. Every single action a hero can take – from attacking, to moving, to farming – is impacted by items and talents. Sometimes this has game-changing effects: when Axe gets his Blink Dagger, he fundamentally changes how every other hero can interact with him. Broadcasters can easily miss crucial item purchases in a hectic game, but our extension lets viewers see every item carried by each Hero as well as which talents they’ve selected.
  • Scoreboard and gold graph: this is something we knew viewers would want from our experience in Counter-Strike. The ability to open the scoreboard or gold graph at any point in the game is one of the most requested features by viewers because it lets them see how every player is doing in real time. We also added players’ buyback status, which is typically only shown when heroes are dead, so viewers have a better idea of the strategic decisions that teams make.

We also started tracking how our extension is used. Broadcasters already had some access to basic analytics, but these naturally could not show which features inside the extension users prefer. This information is crucial: not only for us when we work on improving our extension, but also for the broadcasters to better understand how their programming is experienced by viewers.

We set up our own tracking, which anonymously collects how long viewers use certain features, and gathers statistics about how our extension is displayed. We also added an anonymous feedback button, which helped us collect lots of very valuable feedback, and some… other kinds of feedback:

user feedback

User feedback has been… positive 🙂


This is one of our most tech-packed projects to date, and the first to feature StatsHelix ESS (Entity Sync System), our system for transporting game data at scale.

Games produce a tremendous amount of data. Getting it to the viewer’s browser, and displaying it efficiently is quite a challenge. ESS allows us to do just that, and knows exactly which part of the UI to update and when. The end result is a smooth and lightweight overlay that updates in real time using minimal bandwidth.

Looking forward:

At StatsHelix, we’re always looking for new ways to enhance viewing experiences using data. We’re already brewing new ideas for version 2 of this extension, and if you want to discuss in more detail, we’re happy to chat. Reach out to us at

Share This