gotelemetry
Collect and send Go program telemetry
TLDR
Enable telemetry uploading
Disable telemetry uploading
Run a Web Viewer for local telemetry data
Print the current telemetry environment
Display help for a specific subcommand
SYNOPSIS
gotelemetry
DESCRIPTION
The gotelemetry command is a lightweight utility script, primarily available as an Arch Linux AUR package, designed to disable telemetry data collection in the Go programming language toolchain.
Since Go 1.18, the Go team introduced opt-in anonymous usage telemetry to improve the language and tools. This data is stored in ~/.config/go/telemetry.json and includes metrics on builds, tests, and module usage, sent periodically to Google servers.
gotelemetry simplifies opting out by:
- Removing all telemetry.json* files from the user's Go config directory.
- Appending export GOTELEMETRY=off to the user's ~/.profile (or equivalent shell profile) to persistently disable telemetry via environment variable.
It requires no arguments and provides feedback like 'Go telemetry disabled. Please log out and log back in.' This tool is unofficial but popular among privacy-conscious users who prefer not to contribute data. Note that Go's telemetry is already opt-in by default, but once enabled (e.g., after first run), this script ensures permanent disablement across sessions.
CAVEATS
Modifies user files (~/.profile, ~/.config/go/); requires logout/relogin for env var effect. Not an official Go tool; use at own risk on non-Arch systems.
OFFICIAL ALTERNATIVES
Set env var manually: export GOTELEMETRY=off or go env -w GOTELEMETRY=off. Delete ~/.config/go/telemetry.json*.
INSTALLATION
Arch: yay -S gotelemetry or equivalent AUR helper. Source available on GitHub/AUR.
HISTORY
Developed around 2022 coinciding with Go 1.18 telemetry introduction. Maintained as AUR package (gotelemetry) for Arch Linux users, with updates tracking Go releases.


