---
title: "Overview"
canonical_url: "https://apidocs.sportradar.com/resources/widgets/docs/bet3in1/overview"
markdown_url: "https://apidocs.sportradar.com/resources/widgets/docs/bet3in1/overview.md"
last_updated: "2026-08-18T10:42:07Z"
---

# Overview

**BET 3-in-1** is a lightweight floating entry point designed to streamline the integration of Sportradar's fan engagement tools by providing a single, customizable gateway to **Virtual Stadium**, **Bet Concierge**, and **StatsHub**.

Instead of managing multiple widget integrations, BET 3-in-1 gives your users instant access to all enabled products through one unobtrusive button — keeping your page clean while maximising engagement.

***

## Why Choose BET 3-in-1?

### One Integration, Multiple Products

Instead of managing multiple widget integrations, BET 3-in-1 gives your users instant access to:

![Virtual Stadium](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/product-virtual-stadium.png)

### Virtual Stadium

Social interaction meets live match visualization. Keep fans engaged with real-time chat, interactive graphics, and community features that turn passive viewers into active participants.

![Bet Concierge](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/product-bet-concierge.png)

### Bet Concierge

AI-powered betting intelligence at your users' fingertips. Deliver personalized insights, smart suggestions, and data-driven recommendations that drive betting action and user satisfaction.

![StatsHub](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/product-statshub.png)

### StatsHub

Deep statistical analysis for data-hungry users. Comprehensive match statistics, historical data, and performance metrics that inform smarter betting decisions.

***

## The User Experience

### Seamless & Intuitive

![Default State](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/placeholder-launcher-default.png)

### 1. Default State

A floating button in a fixed position. There when needed, unobtrusive when not.

![Smart Expansion](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/placeholder-launcher-expanded.png)

### 2. Smart Expansion

One click reveals up to three options in an animated menu.

![Instant Engagement](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/placeholder-product-modal.png)

### 3. Instant Engagement

Opens in an optimized modal on desktop or full-screen overlay on mobile.

***

## Key Benefits

### For Your Platform

- **Maximize Screen Real Estate** — One button instead of three separate widgets means more space for your core betting products and content.
- **Flexible Licensing** — Toggle products on/off based on your commercial agreements.
- **Increased Engagement** — Lower barrier to entry means more users discovering and using your premium features.

### For Your Users

- **Clean Interface** — No clutter, no confusion. A single button provides access to powerful features without overwhelming the page.
- **Instant Access** — Everything they need is just one click away — chat, AI insights, and statistics all in one convenient location.
- **Enhanced Experience** — Premium features presented in an intuitive, mobile-optimized interface that delights on every device.

***

## Customization & Branding

### Make It Yours

BET 3-in-1 is fully customizable to match your brand identity.

#### Sport-Specific Theme Variants

The launcher trigger icon adapts automatically to the sport of the current match.

![Soccer — Light](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/s_l.png)

### Soccer — Light

![Soccer — Dark](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/s_d.png)

### Soccer — Dark

![Basketball — Light](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/b_l.png)

### Basketball — Light

![Basketball — Dark](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/b_b.png)

### Basketball — Dark

![Tennis — Light](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/t_l.png)

### Tennis — Light

![Tennis — Dark](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/t_d.png)

### Tennis — Dark

![Ice Hockey — Light](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/h_l.png)

### Ice Hockey — Light

![Ice Hockey — Dark](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/h_d.png)

### Ice Hockey — Dark

![World Championship — Light](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/wc_bl.png)

### World Championship — Light

![World Championship — Dark](https://apidocs.sportradar.com/resources/widgets/static/img/bet-3in1/wc_b.png)

### World Championship — Dark

### Primary Button

- Custom SVG or PNG
- Your brand colors
- Transparent background
- 1:1 aspect ratio

### Menu Options

- Custom icons for each product
- Localized labels
- Configurable order
- Match your UI design

### Behavior

- Fixed positioning
- Smooth animations
- Responsive design
- Accessibility compliant

***

## Getting Started

To initialize BET 3-in-1 (`bet3in1`), add the following code to your page:

```html
<script>
    (function(a,b,c,d,e,f,g,h,i){a[e]||(i=a[e]=function(){(a[e].q=a[e].q||[]).push(arguments)},i.l=1*new Date,i.o=f,
    g=b.createElement(c),h=b.getElementsByTagName(c)[0],g.async=1,g.src=d,g.setAttribute("n",e),h.parentNode.insertBefore(g,h)
    )})(window,document,"script","https://widgets.sir.sportradar.com/sportradar/widgetloader","SIR", {
        language: 'en'
    });
    // BET 3-in-1
    SIR('addWidget', '#sr-widget', 'bet3in1', {
        entityId: "sr:match:{MATCH_ID}",
        sportIcons: {
            '1': 'https://example.com/custom-soccer-icon.svg',
            '2': 'https://example.com/custom-basketball-icon.svg'
        },
        products: {
            virtualStadium: {
                jwt: "{JWT}",
                channelId: "{CHANNEL_ID}",
                label: "Virtual Stadium",
                order: 1
            },
            betConcierge: {
                getJwt: () => yourAuthService.getToken(),
                label: "Bet Concierge",
                description: "AI Insights",
                order: 2
            },
            statsHub: {
                clientAlias: "{CLIENT_ALIAS}",
                label: "StatsHub",
                description: "Deep Stats",
                order: 3
            }
        }
    });
</script>
<div class="wl-wrapper">
    <div class="sr-wl-widget"></div>
</div>
```

**Enable only the products you license** — toggle individual products on/off with a simple configuration change.

### Required Parameters

- **widget-name**: `bet3in1`
- `MATCH_ID` — Sportradar Match ID. Passed as `entityId: "sr:match:50955863"` (preferred) or legacy `matchId: 50955863` (still supported)
- `JWT` — String or `getJwt` callback promise returning a signed JSON Web Token. Required for Virtual Stadium and Bet Concierge. See [JWT](https://apidocs.sportradar.com/resources/widgets/docs/tutorials/jwt.md)
- `CHANNEL_ID` — Virtual Stadium channel ID. Required when Virtual Stadium is enabled
- `CLIENT_ALIAS` — Your client alias for StatsHub URL generation. Required when StatsHub is enabled

***

## Product Configuration

### Adapter Registration

To enable betting functionality (e.g., adding a suggested bet from Bet Concierge to the betslip or using Flash Bet in Virtual Stadium), you must register an adapter. The adapter acts as a bridge between the Sportradar widget and your sportsbook's betslip API.

### Bet Concierge Adapter

Data adapter for Bet Concierge betting functionality.

[View Documentation](https://apidocs.sportradar.com/resources/widgets/docs/bet-concierge/data-adapter.md)

### Virtual Stadium Adapter

Adapter for Virtual Stadium Flash Bet integration.

[View Documentation](https://docs.vs.sportradar.com/docs/virtualStadium/web/adapter/overview)

### Authentication

For Virtual Stadium and Bet Concierge to function correctly, you must pass a valid JSON Web Token (JWT) representing the authenticated user.

> **Warning**
>
> **JWT Required Claims** — See the full documentation for required claims: [JWT Authentication Guide](https://apidocs.sportradar.com/resources/widgets/docs/tutorials/jwt.md)

### StatsHub Configuration

StatsHub requires you to complete a setup document. Download the latest version from the StatsHub demo page to get started.

> **Info**
>
> **StatsHub Setup** — [Download Setup Document](https://widgets.sir.sportradar.com/statshub-demo)

***

## Parameters

| Name                                | Type       | Attributes   | Default          | Description                                                                                                                                                                                |
| :---------------------------------- | :--------- | :----------- | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `entityId`                          | `string`   | **required** |                  | Sportradar entity identifier in `sr:match:{id}` format. Example: `"sr:match:50955863"`                                                                                                     |
| `matchId`                           | `string`   | deprecated   |                  | Still supported. Plain numeric Sportradar Match ID. Prefer `entityId` for new integrations                                                                                                 |
| `products`                          | `object`   | **required** |                  | Products configuration object                                                                                                                                                              |
| `products.virtualStadium`           | `object`   |              |                  | Virtual Stadium configuration                                                                                                                                                              |
| `products.virtualStadium.label`     | `string`   |              |                  | Custom label (default: 'Virtual Stadium')                                                                                                                                                  |
| `products.virtualStadium.icon`      | `string`   |              |                  | Custom icon URL                                                                                                                                                                            |
| `products.virtualStadium.order`     | `number`   |              |                  | Display order (1-3)                                                                                                                                                                        |
| `products.virtualStadium.channelId` | `string`   |              |                  | VS channel ID (required if enabled)                                                                                                                                                        |
| `products.virtualStadium.jwt`       | `string`   |              |                  | JWT token for authentication                                                                                                                                                               |
| `products.betConcierge`             | `object`   |              |                  | Bet Concierge configuration                                                                                                                                                                |
| `products.betConcierge.label`       | `string`   |              |                  | Custom label (default: 'Bet Concierge')                                                                                                                                                    |
| `products.betConcierge.description` | `string`   |              |                  | Custom description (default: 'AI Insights')                                                                                                                                                |
| `products.betConcierge.icon`        | `string`   |              |                  | Custom icon URL                                                                                                                                                                            |
| `products.betConcierge.order`       | `number`   |              |                  | Display order (1-3)                                                                                                                                                                        |
| `products.betConcierge.getJwt`      | `function` |              |                  | Function to get JWT token                                                                                                                                                                  |
| `products.betConcierge.useLegacy`   | `boolean`  |              | `true`           | Selects which Bet Concierge widget to mount. `true` (default) mounts the legacy `betConcierge` widget; `false` mounts `betConciergeNew`                                                    |
| `products.statsHub`                 | `object`   |              |                  | StatsHub configuration                                                                                                                                                                     |
| `products.statsHub.label`           | `string`   |              |                  | Custom label (default: 'StatsHub')                                                                                                                                                         |
| `products.statsHub.description`     | `string`   |              |                  | Custom description (default: 'Deep Stats')                                                                                                                                                 |
| `products.statsHub.icon`            | `string`   |              |                  | Custom icon URL                                                                                                                                                                            |
| `products.statsHub.order`           | `number`   |              |                  | Display order (1-3)                                                                                                                                                                        |
| `products.statsHub.clientAlias`     | `string`   |              |                  | Client alias (used to auto-generate URL)                                                                                                                                                   |
| `launcherTriggerImage`              | `string`   |              |                  | Custom primary button icon URL (SVG/PNG, 1:1 ratio, transparent bg)                                                                                                                        |
| `sportIcons`                        | `object`   |              |                  | Map of sport IDs to custom icon URLs. Overrides default sport icons on the trigger button. Example: `{ '1': 'https://example.com/soccer.svg', '2': 'https://example.com/basketball.svg' }` |
| `position`                          | `string`   |              | `'bottom-right'` | Position: 'bottom-right', 'bottom-left'                                                                                                                                                    |

***

## Theming Customization

BET 3-in-1 is fully customizable via CSS class selectors. See the dedicated page for the full reference including all classes, customization options, and code examples.

### Theming Customization

Full CSS class reference for trigger button, product buttons, overlay, and per-sport styling.

[View Documentation](https://apidocs.sportradar.com/resources/widgets/docs/bet3in1/customization.md)

***

## Related Resources

### Getting Identifiers

Learn how to obtain entity IDs (`sr:match:{id}`) required for widget configuration.

[Learn More](https://apidocs.sportradar.com/resources/widgets/docs/tutorials/getting-identifiers.md)

### JWT Authentication

Set up JSON Web Token authentication for Virtual Stadium and Bet Concierge.

[Learn More](https://apidocs.sportradar.com/resources/widgets/docs/tutorials/jwt.md)

### Tracking Guide

Implement analytics and monitoring for widget interactions and performance.

[Learn More](https://apidocs.sportradar.com/resources/widgets/docs/tutorials/tracking-guide.md)
