# Connect your game to Analytics

> Public channel — documentation of app 4.1.0. Follow the availability notices of each service.

Source: [Connect your game to Analytics](/en/services/analytics/brancher/)

For the project owner, once Analytics is taken for the game.

Once Analytics is taken for a game, the Analytics entry in the bar of the My game tab loses its padlock, for the project owner. It opens the “Connect your game” step, done once. A status line says where the game stands, from the key to the first player:

| Status line | What it means |
| --- | --- |
| “Key to choose for Analytics” | Analytics has no key saved for your account yet. |
| “Key saved: a permission is missing on this game” | The key exists, but its test refuses a permission. |
| “Key ready: connect the game” | What is left is clicking Connect the game. |
| “Connected · in Studio, allow HTTP then publish your game, and wait for your first player” | The two Studio gestures, then a first player. |
| “First player measured on …” | The numbers are coming in. |

## The Analytics key

Analytics needs a Roblox Open Cloud key with its permissions. It does two things: it stores in your game’s Roblox secrets the key the module uses to send its measurements, and it reads every day the numbers Roblox measures itself on your game (discovery, thumbnails, audience, revenue). Its permissions:

| Roblox system | Permissions |
| --- | --- |
| `universe-analytics` | `universe.analytics:read` |
| `secret-store` | `universe.secret:read` and `universe.secret:write` |
| `universe` | `universe:read` |

You can choose between two keys:

-   **Your Roblox key**, the one in Settings, if you add these permissions to it: one key for all your services. Analytics receives a copy, with your agreement.
-   **A dedicated key**, created for Analytics only. Your Roblox key keeps its other services, and our servers only keep a key limited to Analytics.

Either way, the key is kept **encrypted on VibeStarter’s servers**: Roblox numbers are read every day, even when the app is closed. Once saved, it is no longer shown anywhere, and VibeStarter uses it for no other write in your game. **One key is enough for all your games**: it is saved for your account, not for a game. Your personal key also works for a group’s game, if your account has rights on that group. See also [Link your Roblox account and your Open Cloud key](/en/application/studio/compte-roblox/#analytics-with-your-key-or-a-dedicated-key).

## The three steps

1.  **Choose the Analytics key.** Two choices: Use your Roblox key and Use a dedicated key. The first is offered when your Roblox key exists and its last test does not rule it out; otherwise, the dedicated key is.
    
    **With your Roblox key**, the step first says where your key stands, from its last test in Settings:
    
    | What the step shows | What to do |
    | --- | --- |
    | “Your key has the Analytics permissions.” | Read the agreement, then send the copy (below). |
    | “Test your key first: the app reads at Roblox the permissions it has.” | Click Test your key. |
    | “Your key lacks: …” | Add these permissions in the Creator Hub, then Test again. |
    | “Your key does not cover this game: its permissions are limited to other experiences on Roblox. …” | Open the key to this game in the Creator Hub, then test it again. |
    | “You have no Roblox key in the app yet. …” | Open Settings: add your key with the Analytics permissions, then come back. |
    | “The Roblox key on this computer is not tied to your account: take it over or replace it in Settings.” | Open Settings. |
    | “Roblox did not say what permissions your key has. Test it again in a moment.” | Try again a bit later. |
    
    Open Settings leads straight to the “Analytics” line of Settings → Roblox → Who publishes what. When the key has the permissions, the agreement shows **before anything is sent**: “When you click “I agree: send a copy”, a copy of your Roblox key goes to VibeStarter’s servers, which keep it encrypted. They use it every day, even with the app closed, to read the Roblox figures of your connected games (revenue included) and to put the ingest key in the game. The copy carries every permission of your key; our servers only use the Analytics ones. If you replace your key in Settings, the copy is updated on its own. You can remove it here or in Settings → Roblox: your key then stays on this computer.” Nothing leaves before I agree: send a copy. The key’s value is not shown: the app reads it from your computer’s credential store and sends it itself.
    
    **With a dedicated key**, the step shows “Where to click in the Creator Hub” in pictures. Click Open the Creator Hub. At the top left, keep your account selected, even for a group’s game if your account has rights on that group. Click “Create API Key”, give it a name (for example “VibeStarter Analytics”) and add the three systems above to it, through “Select API System”. Leave “Restrict by Experience” off, add no IP address and pick “No Expiration”: one key for your account, which works on all your games, instead of a key to redo for each game. Click “Save & Generate Key”, copy the key, paste it in the “Analytics key” field, then click Save and test. Beforehand, the step says so: “When you click “Save and test”, the key goes to VibeStarter’s servers, which keep it encrypted. They use it every day, even with the app closed, to read the Roblox figures of your connected games (revenue included) and to put the ingest key in the game.”
    
2.  **Test the key on this game.** “The key is tested on this game as soon as it is sent.” The test tries each permission on this game and writes it in words: “OK”, “presumed”, “missing”, “refused on this game” or “cannot be checked right now”. Writing secrets is never actually tried: a complete key shows “Three permissions verified on this game; writing secrets is presumed (Roblox allows it, nothing was written).” A key that Roblox refuses outright (deleted, copied wrong, or disabled after 60 days without use) is not saved. Once the key is kept, the step says which one: “Analytics uses a copy of your Roblox key.” or “Analytics uses a dedicated key.”
    
3.  **Connect the game.** Click Connect the game. VibeStarter creates the game’s sending key and stores it in its Roblox secrets. **Nothing to install**: the Analytics module is already in your project (see [The module in your project](/en/services/analytics/brancher/#the-module-in-your-project)).
    

## Two gestures in Studio, once

Once the game is connected, the step draws the two gestures only Roblox Studio can make:

1.  **Allow HTTP requests.** Game Settings → Security → “Allow HTTP Requests”. Without it, the module sends nothing.
2.  **Publish your game.** File → Publish to Roblox: the module goes out with the played version.

The app cannot tick this box for you nor see it from here: the first player measured confirms everything is in place. The status line then turns to “First player measured on …”.

## Ask your agent for your funnels

The step also suggests asking your agent to track your game’s key steps: arrival, tutorial finished, first win, first purchase… Click Copy the request for my agent, then paste it into your agent’s conversation: it finds these steps in the code, makes the event plan with you, adds the events that mark them and defines the funnels. Analytics then shows you where players drop off, step by step, and the plan says whether each event arrives as planned: see [The event plan](/en/services/analytics/plan-evenements/). The app types nothing for you.

## When the test or the connection refuses

-   **A permission is “missing”**: open your key in the Creator Hub, add the permission, save, then click Test again. The key does not change; nothing to paste or send again.
-   **“Refused on this game”**: Roblox does not say why. Most likely your account has no rights on this game (or on its group), or the key is limited to other experiences. Otherwise it lacks the `secret-store` system permissions.
-   **“Roblox cannot find this game”**: check that the project is linked to your published game.
-   **“Your Roblox key is no longer on this computer, or is not tied to your account.”**: add it in Settings, or use a dedicated key.

To switch from your Roblox key to a dedicated key, or the other way round, click Change key: the step offers both choices again.

## Delete the Analytics key

The Analytics key can be removed in two places: in the “Connect your game” step, and in Settings → Roblox, “Analytics” line of Who publishes what. This line is always shown, **with or without a running Analytics subscription**, and even with no project open: you can always see which key Analytics uses and erase it. It gives the date it was saved and the games connected with it. The button depends on the key:

-   **A copy of your Roblox key**: Remove the copy (in the step, Remove the copy too). The app asks “Remove the copy of your key for all your games?” and adds: “Your key stays on this computer for your other services.” Remove the copy for all my games confirms, then “Copy removed for all your games. Your Roblox key stays on this computer.” Nothing to revoke at Roblox: your key still serves your other services there. If your key is no longer on this computer, the app says so: “Your key is no longer on this computer: after this, VibeStarter keeps nothing of it.”, then “Copy removed for all your games. Your key is no longer on this computer nor on our servers.”, and advises revoking it at Roblox. Deleting your Roblox key in Settings also offers to remove the copy at the same time: see [Replace or delete your key](/en/application/studio/compte-roblox/#replace-or-delete-your-key).
-   **A dedicated key**: Delete the dedicated key in Settings, Delete the key in the step. The app asks “Delete the Analytics key for all your games?” and reminds you: “Roblox keeps the key active: revoke it afterwards on create.roblox.com. VibeStarter cannot do it for you.” Delete for all my games confirms.

Either way, the key applies to all your games, and so does its deletion: the confirmation gives the list of games affected and warns: “In a game where Analytics is still active, measuring goes on, but VibeStarter will no longer be able to remove its ingest key when Analytics ends.” The key is then erased from our servers, and the app says what is left to do:

| Message | What it means |
| --- | --- |
| “Also revoke the key at Roblox: it stays active there.” | For a dedicated key, or when your Roblox key leaves the computer along with its copy: VibeStarter revokes nothing at Roblox. Do it in the Creator Hub (Open the Creator Hub). |
| “Measuring goes on for …: Analytics is active there and the ingest key stays in the game.” | This game’s module keeps sending measurements. The figures Roblox keeps (revenue, retention, players) are no longer read, and VibeStarter will not be able to remove the ingest key when Analytics ends. Save a new key to get both back. |
| “The ingest key is still in the Roblox secrets of …” | For a game whose Analytics has ended, VibeStarter removes the ingest key before forgetting your key; when it stayed, delete the “vibestarter\_analytics” secret in the Creator Hub (your game → Secrets), or save a new Analytics key and VibeStarter will remove it. |

## “Key refused by Roblox”

If Roblox refuses your key during the daily reading of its numbers, the step shows it at the top: the key was deleted, has expired or was disabled (create a new one and replace it), or it no longer has access to this game (check its permissions, then test again). At the next test, when Roblox says the key was not used for 60 days, the verdict names it: “Roblox disabled this key: it was not used for 60 days. Re-enable it in the Creator Hub, or create another one.” The module’s measurements are not affected. The warning goes away as soon as the next reading goes through. If Analytics uses a copy of your Roblox key, replace your key in Settings: the copy follows.

## The module in your project

Every project opened with app 4.0.0 contains the Analytics module. **As long as the game does not have Analytics, it sends nothing**: no network call, no line in Studio’s output; it only checks, inside the server, whether a sending key exists. It starts when the game is connected. It reaches your live game with your next publication from Studio, with the app open on the project; every place of the game must be published.

The “Analytics module in this game” setting, on the Overview and Analytics pages of My game, removes the module from the project. The app does not put it back afterwards: “Removed from this project: the app does not put it back.” On a game that has Analytics, the app warns you first: “This game has Analytics: without the module, no data will arrive after your next publication.”

## If no figures arrive

When the status line stays on “Connected · in Studio, allow HTTP then publish your game, and wait for your first player”, check in this order:

1.  “Allow HTTP Requests” is ticked in the game settings, in Studio.
2.  The game was published from Studio **with the app open on the project**, and every place of the game was published.
3.  The “Analytics module in this game” setting has not removed the module.
4.  A player has joined the live game: a test in Studio does not count.

## Learn more

-   [Game analytics](/en/services/analytics/)
-   [Analytics tiers](/en/services/analytics/paliers/)
-   [Link your Roblox account and your Open Cloud key](/en/application/studio/compte-roblox/)
-   [Publish your game and track its versions](/en/application/studio/publier/)
