Telemetry
GAIA sends one small usage ping when /gaia-init, /setup-gaia, or /update-gaia finishes. This ping is GAIA’s only telemetry. It tells GAIA’s maintainer how many projects use GAIA, which setup options they choose, and which platforms they run on, so future work goes where it helps the most people.
The three events
Section titled “The three events”Each command sends its event once, when it finishes:
| Command | Event | Fields it adds |
|---|---|---|
/gaia-init | init | Whether you answered the setup questions yourself or let GAIA pick the defaults (interactive or automatic), and how many languages the app has (0 if you removed i18n) |
/setup-gaia | setup | The kind of setup (init for a new project, clone, or reconfigure), how you connected GitHub (create, adopt for an existing repo, or manual), and whether the sandbox is on (on or off) |
/update-gaia | update | The GAIA version you updated from and the version you updated to |
A field is sent only when the run has a value for it. A /setup-gaia re-run that settles no new setup choice sends no ping. An /update-gaia run that is interrupted and then run again can send its event twice.
What every ping carries
Section titled “What every ping carries”Besides its event and fields, each ping carries:
- The GAIA version of your project
- A broad platform:
macos,linux,windows, orother - An install ID (
projectId)
The install ID is pseudonymous: it is the same for every ping from one install, so the three events from one project can be counted together, but it contains nothing readable about you or your project. It identifies an install, not a person.
How it is sent
Section titled “How it is sent”The ping is a single request to telemetry.gaiareact.com. GAIA waits at most two seconds for a reply, ignores any network error, and never fails the command that sent it.
Turning it off
Section titled “Turning it off”Set GAIA_TELEMETRY_PING_DISABLE to 1. Ask Claude to add it to the env block of .claude/settings.local.json (your machine only, not committed), then restart Claude Code:
Set GAIA_TELEMETRY_PING_DISABLE to 1 in the env block of .claude/settings.local.json.That covers this project. To cover every project on your machine, including a new one before /gaia-init runs, export it in your shell profile instead, then open a new terminal and restart Claude Code:
export GAIA_TELEMETRY_PING_DISABLE=1With it set to 1, no command sends the ping.
Not the usage ledger
Section titled “Not the usage ledger”The cost and usage ledger is a different thing. It records model calls, tokens, and cost in a file on your machine, and it is never sent anywhere. The ping carries none of it.