> For the complete documentation index, see [llms.txt](https://docs.gamepot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gamepot.io/basics/gamepot-3.0/images-and-media/editor/concurrent-users.md).

# Concurrent Users

Through the Gamepot dashboard, you can easily check the concurrent users (CCU) who have logged in to the Gamepot SDK.

Tracking concurrent users within the game SDK is an important metric for evaluating game performance and user experience. To support this, we provide a free socket server that automatically connects to the server upon client connection and collects and analyzes data every minute.

## How to Use <a href="#undefined" id="undefined"></a>

The user count starts automatically when the user logs in through the Gamepot SDK without the need for additional calls.

## Manual Connection <a href="#undefined" id="undefined"></a>

If you want to manually manage user aggregation, you must set `setAutoConnect(false)`. The default setting is `true`. This must be configured before login to work properly. It is recommended to execute it before `initialize`.

To connect to the server, call the following method:

{% tabs %}
{% tab title="Android" %}

```kotlin
NBase.setAutoConnect(false)
NBase.connect()
```

{% endtab %}

{% tab title="iOS" %}

```swift
NBase.setAutoConnect(false)
NBase.connect()
```

{% endtab %}

{% tab title="Unity" %}

```csharp
NBase.setAutoConnect(false)
NBaseSDK.NBase.connect();
```

{% endtab %}
{% endtabs %}

## Disconnect <a href="#undefined" id="undefined"></a>

To disconnect from the user aggregation server, call the following method:

{% tabs %}
{% tab title="Android" %}

```kotlin
NBase.disconnect()
```

{% endtab %}

{% tab title="iOS" %}

```swift
NBase.disconnect()
```

{% endtab %}

{% tab title="Unity" %}

```csharp
NBaseSDK.NBase.disconnect();
```

{% endtab %}
{% endtabs %}
