Skip to content

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.

Each command sends its event once, when it finishes:

CommandEventFields it adds
/gaia-initinitWhether 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-gaiasetupThe 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-gaiaupdateThe 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.

Besides its event and fields, each ping carries:

  • The GAIA version of your project
  • A broad platform: macos, linux, windows, or other
  • 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.

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.

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:

Terminal window
export GAIA_TELEMETRY_PING_DISABLE=1

With it set to 1, no command sends the ping.

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.