Live Streaming

Boost Engagement with Second Screen Experiences

Oliver Carson on Feb 27, 2025
Boost Engagement with Second-Screen Experiences

In today's online entertainment, audiences expect more interactivity alongside traditional live experiences. It allows them to feel more involved with the experience and creates new revenue opportunities previously unavailable to the broadcast, creating a more personalized experience.

One such method to boost engagement is to incorporate a second screen alongside the viewing experience on the primary screen, commonly with a mobile device, such as a phone or tablet. With a second screen, viewers have more interactive features that augment the live experience, such as:

  • Direct Communication: Live chat and emoji pop-ups.

  • Gamification: Voting/polls, betting, and predictions.

  • Score-Based Incentives: Receive rewards, exclusive content, and even prizes based on live-stream performance.

  • In-the-Moment Giveaways: Rewards triggered by in-stream moments, entering a contest, or achieving a high score based on a leaderboard.

  • Personalized Achievements: Provide viewers custom rewards for watching a certain amount of hours, how long they’ve been a watcher, or through being a premium member.

  • Shopping and Promotions: Place live product/service placements at certain times in the experience, allowing viewers to purchase.

These interactive features on a second screen have proven successful in driving engagement and enhancing the user experience. Twitch, YouTube, Facebook, Instagram, TikTok, and other social media platforms are live-streaming platforms that encourage user engagement using a second screen, with interactive features such as emoji flair, live chat, promotions, predictions, and more. Several leading companies in the sports, media, and entertainment industry such as DAZN, LiveLike, and Veeps have all leveraged PubNub to overcome engagement challenges and sync real-time interactions at scale.

Continue reading to learn more about how to implement these second-hand experiences into your platform’s live experiences, as well as how to effectively monitor and add new revenue opportunities.

PubNub Features Breakdown

Before we dive into the different features a second-screen experience can bring to your entertainment experience, let’s break down some of the common PubNub features that you’ll need to remember at a high level. Keep in mind that PubNub offers more features than the list below, but for this article, the following are discussed:

  • Publish/Subscribe (Pub/Sub): Cornerstone of in-app messaging. Publish (send) and Subscribe to receive messages in <30ms latency with global delivery.

  • Channels: Mechanism to transmit data between devices.

  • Messages: Contain any kind of serializable data, like objects, numbers, and UTF-8 encoded strings, typically in JSON.

  • Presence: Gives you visibility into who is currently subscribed to a channel (online/offline status), as well as providing the ability to track custom state information.

  • App Context: Store and manage metadata for users, channels, and relationships between them.

  • Access Manager: Set rules that allow only a selected client(s) to access specific channels and user metadata.

  • Events & Actions (E&A): Capture critical real-time events and route them to third-party systems.

  • Illuminate: Observe, respond, and refine strategies with real-time decisioning and analytics capabilities, allowing you to tailor strategies and run experiments, even while your app is live.

Be sure to return to this section for a reference as we go through the different features. To start, you’ll need to create and manage your application through the Admin Portal, where you’ll be able to obtain your publish and subscribe keys necessary to communicate on the PubNub platform, as well as enable features such as App Context and configuring other products such as Illuminate. You can learn more about getting started through our documentation.

Building Second-Screen Experiences

As you learn how to incorporate second-screen experiences into your platform, keep in mind what features would make sense for your platform. If your live experience audience consists of children, you’ll want to remove online social interaction features like chat, betting/polls, while keeping personal achievements and appropriate rewards to encourage and reward their behavior. If your live experience is aimed at sports fans, implementing sports betting, personalized achievements, shopping promotions related to the experience, and chatting would enhance the experience amongst those fans.

The best part of each feature is that you can cherry-pick which features you would like to implement. PubNub is platform, SDK and device-agnostic, so you won’t have to rely on your entire ecosystem being built on it and different applications can communicate with one another.

Please keep in mind that each feature listed below provides an overview and starting code. Code will be shared to discuss new features or topics, so you should refer to these sections and combine them into similar subscription sets and channels to keep things more concise for your integration.

Finally, the presented code is provided using our JavaScript SDK, but we have native Kotlin and Swift SDKs, as well as Chat SDKs that are focused on integrating chat quickly into your application.

Direct Communication

Direct communication such as text chat and emojis is a simple, but valuable feature for viewers to express their thoughts. Even the most shy of viewers can express their emotions about the current game, event, or stream using standard emojis or custom emojis earned through achievements or as a premium member (more on this later).

DAZN’s live chat keeps viewers engaged on their second screen during live events

Some platforms either don’t display the live chat due to the type of event or you do not have the screen space for the chat - this is exactly where you can have a second screen handle the chat functionality. Display the text messages coming in and allow viewers to chat with one another in a public chat, including both text and emoji-based messages.

PubNub is well known for its chat implementation - here are the basic implementation/features necessary to get you started for basic in-app messaging functionality:

  • In-App Messaging: Use Pub/Sub Messaging for instant communication.

  • Emoji Reactions: Allow users to send real-time emoji reactions, as well as display certain emojis.

  • Message Persistence: Store and retrieve chat history for new viewers.

You can and should expand this functionality with additional content, such as loading the chatter’s profile image alongside their message, translate the message, and detect or transform profane, hateful, and sexual messages using custom or integrated profanity filtering using Functions or even log the different types of messages for data gathering in the future using E&A!

Additionally, BizOps Workspace can be used to manage and moderate messages and viewers during these live stream experiences, flagging specific users for potentially inappropriate messages, allowing you to block them and create a more inclusive, safe environment.

Gamification and Score-Based Incentives

Gamifying the experience on a second screen encourages more interaction between the viewer and the experience. It creates more engaging experiences: viewers can express their opinion by voting through a poll set up by the live moderators, compete in quizzes and trivia, or, depending on your country’s regulation laws, set up betting & wagering, where viewers can bet real money based on the outcome of a match or specific outcome of a wager. If you don’t want to implement real currency, you can implement predictions, which is essentially the same logic as betting & wagering, except viewers would place bets with platform currency that can only be earned through watch time.

Twitch Predictions utilize “channel points”, non-currency earned through watching the channel to gamble

Viewers who perform well on the previously mentioned polls, wagers, or predictions can be rewarded with incentives, such as custom emotes, profile pictures, discounted tokens to place wagers with, and so on. The rewards should be something that viewers can display in the chat to be able to show off their success or utilize towards future wagers/predictions.

To implement this gamified functionality, you’ll be utilizing some similar features as before, as well as some new functionality, including App Context and Illuminate:

  • Clients vote via Pub/Sub and Functions/server-side processes results. Polls are displayed in real time to the clients.

  • App Context stores viewer profile information (wallet, balance, past predictions).

  • Functions or server-side logic process both predictions/wages. Send information back to the client, updating App Context user information. Functions Code (refer to the above glossary section to learn how to set up Functions for your app in the Admin Portal). Moderators finalize the poll, wager, or bet to send out results:

  • Clients receive new information that displays real-time stats. Update App Context information with relevant data.

  • Illuminate captures user participation based on App Context updates, triggering rewards for game-based achievements. Rewards are delivered via App Context for the User ID or a unique channel name for the user to update the client side.

Configure a Business Object and Decision for Illuminate in the Admin Portal. Create a Business Object that is looking for App Context updates on the viewer’s score, participation amount, the number of won predictions/wages, and so forth:

Create a new Business Object in the Admin Portal for Illuminate to capture App Context updates

You would then set up the Decisions that will trigger actions based on specific conditions to reward players based on various thresholds that you set. For instance, perhaps you want to reward players for participating in five or more polls or if they have an 80% or higher win rate on wager matches or you can even capture event-based Decisions rather than metric aggregation, meaning anytime an event occurs.

The Decision is triggered when the viewer has achieved the thresholds that you have set, which is caught by the code we set up earlier. And the best part? You can update these thresholds or change the rewards at any time, without needing to restart or perform patch maintenance for your platform.

It’s highly recommended to follow our Illuminate documentation when setting up your Business Objects and Decisions. Although focused on games, you can follow this in-depth guide on setting up Illuminate for your application, as it goes into detail about each key component.

  • UI updated client-side via App Context or Messages to reflect new rewards & incentives captured from updates via Illuminate.

Combining all of these elements together allows your viewers to gamify their experience on their second screen while the entertainment is taking place, allowing them to feel more involved, and enhancing the viewer experience and audience interaction. This fan engagement comes with the bonus of rewarding viewers for their achievements!

In-the-Moment Giveaways

To help keep viewers engaged and ensure their viewer experience is positive for them to remain at the event, you can create giveaways that allow viewers to enter based on certain criteria to win or earn various prizes. These giveaways can appear on the second screen, as a pop-up with a timer set to expire to remind viewers that a giveaway will occur soon. Prizes such as profile images, emotes, premium memberships, and discounts on account currency are a great way to not only provide viewers with a gift to help improve engagement but also to provide them with interactive elements that will keep them coming back to your platform.

Giveaways are a great way for players to stay and be engaged with the event

To implement in-the-moment giveaways on the second screen, you’ll need to implement the following:

Promotions and giveaways work-flow diagram for second-hand experiences

  • Utilize Presence to track players and their participation status.

  • Once the giveaway is complete, send a message containing the User IDs to be captured by Illuminate.

  • You’ll set up the Business Objects in Illuminate to capture this data and set up Decisions to assign the events based on the giveaway reward. Update the user’s App Context data with these new rewards.

  • The client listens then for user updates, displaying the new rewards if appropriate.

Personalized Achievements

Rewarding players with long-term achievements is a fantastic and proven way to encourage more watch-time. Viewers can unlock rewards by watching a certain number of games, total watch time of live entertainment streams, completing some goals, or participating in several wagers, predictions, and polls.

17Live and other platforms run quests for viewers to complete missions to earn rewards, such as emotes and player icons

The rewards should allow the viewer to feel that they have accomplished something worth attaining the achievement. Profile icons or specific emotes are a great way to show off while they chat on the second screen. Discount codes for wager currency or premium subscriptions are another fantastic, albeit more private, reward to keep viewers engaged on your platform.

To implement personalized achievements, you’ll need to implement the following logic using both the previous features of updating App Context and Illuminate:

  • When user metadata is updated via App Context (through the previously mentioned features), Illuminate will capture the event via Business Objects related to personalized achievements. The Business Object should be metric-based, dependent on the number of games watched, “viewer” level (which can pertain to several factors), or the number of wagers participated in:

  • Create a Decision that would trigger based on certain thresholds - did the viewer increase their account level? Did they participate in three wagers? Did they watch one match to gain the first achievement? Depending on the metric/event, the rewards will be distributed and saved to the user’s metadata profile.

  • On the client side, the information is synced and displayed to the viewer, similar to the in-the-moment giveaways feature above. You should work with your product and monetization teams on the best tactics to adjust the achievement rewards that work well with viewers.

Shopping & Promotions

Many entertainment streams are now sponsored by various companies, allowing platforms to put on bigger stream productions due to the sponsorship money they receive. These products/services are ideally useful to the viewer so they can purchase or sign up for the product/services.

YouTube Live promotion on the second screen enables viewers to engage with the link. This provides a sponsorship opportunity for the channel to increase its revenue income.

However, keep in mind the information that is displayed to viewers - it should be unintrusive, such as displaying a pop-up on the second screen near the chat window with a timer that can also be minimized. If viewers do click on the promotion, include useful information about the types of viewers that click on the promotion to be used for future analytical data to determine if tactics need to be changed.

To implement shopping and promotions on the second screen, you’ll utilize Pub/Sub messaging and Events and Actions to log the data for future use.

Shopping and promotions work-flow diagram for second-hand experiences

  • The server side should have scheduled promotions utilizing tools such as cron. Promotions should automatically trigger at set intervals, sending pub/sub messages that contain relevant information about the promotion, such as the name of the promotion, specific details about the promotion, and the link to the purchase page.

  • On the client side, handle the messages that come in by subscribing to the specific shopping-promotions channel. A pop-up on the second screen should appear near the chat and be displayed based on the ttl parameter. Ensure users can close the pop-up if they are not interested in minimizing the promotion. The client-side should also capture any clicks on the links associated with the promotion to log to a separate channel that can be logged by Events and Actions for future review.

  • You would set up the Events & Actions interaction in the Admin Portal, by selecting the messages Event Source and utilizing the information above. You can filter using basic, predefined filters for data such as the channel or sender ID or utilize Advanced JSON Path to query for custom data. Follow this guide for Advanced JSON formatting tips. For more details on setting up Event Source in general, check out our documentation.

You would then utilize an Action that fits your platform's needs for logging the information, such as via a Webhook or Amazon S3, SQS, or Kinesis integration. Learn more about the different types of Actions that would suit your platform by reviewing our documentation.

What’s Next?

Second-screen experiences enable viewers to engage with live TV shows and digital entertainment experiences that would normally not be possible. With second screen technology, viewers can chat with others, interact with polls, place wages and predictions, enter into giveaways to obtain rewards, and even earn personalized achievements to display for others to see.

This second screen engagement can also be extremely beneficial for monetization: you have options to increase your revenue for viewers to be able to place wagers, work towards earning emotes/icons, and even earn sponsorship revenue for clicking on shopping and promotion links. This encourages viewers to come back to your platform to earn more rewards for these interactive experiences, increasing retention and conversion rates.

You can learn more about how you can rely on PubNub to power your interactive experiences by following our resources or signing up for a free PubNub account to get started building today:

Feel free to get in touch with us anytime to explore how you can enhance your platform with second-screen experiences.