Legal
Privacy Policy
Last updated: October 16, 2026. These changes take effect on October 16, 2026.
The short version
Headroom runs locally on your machine. Your prompts, code, and files never leave your device or reach our servers. The App collects your email address, the plan and usage details of the Claude and ChatGPT accounts you connect, a device identifier, token savings statistics, anonymous usage events (via Aptabase), and crash reports (via Sentry). For visitors outside the European Economic Area and United Kingdom, the website uses Google Ads conversion tracking. In the EEA and UK, the website sets its own attribution and testing cookies only if you accept them. The website uses Simple Analytics for privacy-first page view statistics. We do not sell your data.
1. Who We Are and What This Policy Covers
Headroom is operated by Garm Tech B.V., registered in the Netherlands under Chamber of Commerce number 99602075, with registered address at Staalkade 6 O, 1011 JN Amsterdam, the Netherlands. Garm Tech B.V. is the data controller under the GDPR. If you have any questions about this Privacy Policy, email us at support@extraheadroom.com.
This policy covers two contexts: the Headroom desktop app and the extraheadroom.com website. Sections 2 through 6 relate primarily to the App. Section 2a covers data collected on the website.
2. What We Collect
We collect the following categories of data:
- Email address. Provided when you create a Headroom account. Used for authentication, sending sign-in codes, and communicating about your account or subscription. When the account is created we also record the country your IP address resolves to (not the IP address itself), so we can understand where our users are.
- Connected AI account details. To detect which Claude and ChatGPT plans you use, the App reads your account details from Anthropic and OpenAI and sends us, for each connected account: its email address, account ID, plan, organization and billing type, rate-limit tier, and how much of its 5-hour and weekly usage limits is used. Your Claude and ChatGPT sign-in tokens are only ever sent to Anthropic and OpenAI, never to us.
- Device identifier. A one-way SHA-256 hash of your computer's hardware ID, plus the ID of an existing open-source Headroom install on it, if any. The App also reports its version and your operating system.
- Token savings statistics. The App tracks the cumulative number of tokens saved through Headroom's local optimization. This aggregate count is synced to our servers so we can display it to you across sessions and track milestones. No prompt content or file data is included - only the numeric count. Alongside it, the App reports daily aggregate counts of requests per connected AI tool (for example Claude Code or Codex) and of rate-limit responses received from AI providers. These are numeric tallies only - no prompt content, file data, or request details are included.
- Anonymous usage events. The App sends named usage events to Aptabase, a privacy-focused analytics service. Each event includes: OS name and version, system locale, WebKit engine version, app version, and an anonymous session ID that resets after four hours of inactivity. No directly identifying data such as names or email addresses are attached. Events cover app lifecycle actions such as starting the app, completing setup, connecting an AI client, pausing or resuming the proxy, signing in, starting a checkout, and quitting the app.
- Crash and error reports. The App uses Sentry to capture errors and crashes. This may include stack traces, error messages, and technical context such as app version and OS. Each report also carries your device identifier (see above) and your Headroom plan, so we can tell which installation an error came from. From version 0.9.29 reports do not include your email address; earlier versions attached your Headroom account email. We configure Sentry to avoid capturing prompt or file content, but cannot guarantee that no personal data appears in diagnostic context such as error messages or variable state at the time of a crash.
From version 0.9.34 you can turn off the anonymous usage events, the crash and error reports, the daily per-tool tallies, and how much of each connected account's 5-hour and weekly usage limits is used, in the App's Settings under "Usage analytics and crash reports". The cumulative token count, the device details and the rest of the connected account details above are still sent, because your account and license depend on them.
2a. What the Website Collects
When you visit extraheadroom.com, we collect the following:
- Anonymous page view statistics. We use Simple Analytics, a privacy-first analytics service that collects no personal data, sets no cookies, and respects the Do Not Track browser setting. Simple Analytics records only aggregated, non-identifiable data such as page views and referrers.
- Advertising conversion data (non-EEA/UK visitors only). For visitors outside the European Economic Area and United Kingdom (both the country of your IP address and your system timezone must be outside them), we load Google Ads conversion tracking (gtag.js) and the OpenAI Ads pixel. This records when a visitor downloads the App, so we can measure the effectiveness of our advertising campaigns. Both set cookies and send conversion data to Google and OpenAI respectively. For EEA and UK visitors, these scripts are not loaded and no cookies are set.
The website does not require you to create an account or provide any personal data to browse it. If you submit a contact request, we collect your email address solely to respond to your enquiry.
2b. Cookies
The website sets these cookies of its own:
- _web_session (until you close your browser): keeps the site's forms secure and shows one-time notices. Always set; the site needs it to work.
- hr_consent (1 year): remembers your cookie choice. Set once you choose.
- hr_ref (90 days): set only when you open a friend's referral link, so the referral reaches your account when you sign in.
- hr_src, hr_src_at, hr_lp (1 year): which site or campaign first brought you here, when, and the page you landed on. When you sign in to the App through the emailed link, we save this on your account to learn which channels bring new users.
- cta_v (1 year): which wording of the download button you see, so we can compare versions.
- pwf_preview (30 days): set only by a private link we use to test pages.
In the EEA and UK (judged by the country of your IP address), hr_src, hr_src_at, hr_lp and cta_v are set only after you accept them on the cookie banner, and choosing Reject deletes them. Until you accept, the download button wording is picked anew on each page. Outside the EEA and UK they are set without asking, along with the advertising cookies described in section 2a. The website also stores in your browser that its signup popup has been shown, so it appears only once.
3. What We Do Not Collect
Headroom's core function is local prompt optimization. The App intercepts and compresses your Claude Code and Codex prompts entirely on your machine. We do not intentionally receive, store, or process your prompts, code, file contents, or any other data that Claude Code or Codex reads or writes. By design, the proxy runs locally and does not route your input data through our servers. As noted above, crash reports sent to Sentry may incidentally contain such data if it is present in diagnostic context at the time of an error; we configure Sentry to minimise this.
4. How We Use Your Data
- Email: to authenticate you, send sign-in codes, and communicate about your account or subscription
- Connected AI account details: to detect your Claude and ChatGPT plans, recommend and apply the matching Headroom plan, and understand how close users get to their usage limits
- Device identifier and connected account IDs: to offer one free trial per person and computer, and to detect a license shared beyond its terms
- Token savings count: to display your cumulative savings in the App and on your account
- Usage events: to understand feature adoption and improve the product
- Crash reports: to identify and fix bugs
We do not sell your data. For non-EEA/UK website visitors, we use Google Ads conversion tracking to measure the effectiveness of our advertising campaigns; this is based on anonymous download events, not your account data. If you arrived through an OpenAI ad, we report your first successful use of the App to OpenAI once, together with the ad-click identifier the OpenAI Ads pixel stored and a one-way SHA-256 hash of your email address, so OpenAI can attribute the install to that ad.
5. Legal Basis for Processing (GDPR)
Where the GDPR applies, we rely on the following legal bases:
- Performance of a contract (Art. 6(1)(b)): processing your email address, token savings statistics and connected AI account details to provide and manage your account and subscription.
- Consent (Art. 6(1)(a)): in the EEA and UK, the attribution and testing cookies in section 2b, and the first-visit source saved on your account from them, only after you accept them. You can withdraw consent at any time in section 2b.
- Legitimate interests (Art. 6(1)(f)): using your device identifier and connected account IDs to keep free trials and licenses fair.
- Legitimate interests (Art. 6(1)(f)): sending anonymous usage events to Aptabase and crash reports to Sentry to operate, maintain, and improve the App. Our legitimate interest in diagnosing issues and understanding usage is balanced against your interest in privacy; the data collected is minimal, pseudonymous, and not used for profiling.
You can stop the usage events and crash reports yourself in the App's Settings (from version 0.9.34). If you wish to object to other processing based on legitimate interests, contact us at support@extraheadroom.com.
6. Where Data Is Stored
Your session token is stored in your operating system's own credential store: the Keychain on macOS, Credential Manager on Windows, and the DBus Secret Service (gnome-keyring or kwallet) on Linux. All three are encrypted and access-controlled by the OS. On Windows and Linux, where a desktop session may have no credential store running at all, Headroom falls back to a file inside its own application data directory, restricted to your user account. Your token savings count and subscription status are stored on our servers.
7. Third Parties
- Polar. If you purchase a paid plan, your payment is processed by Polar. Polar receives your payment details directly; we do not store your card information. Polar's privacy policy governs their handling of payment data.
- Anthropic. When you use Claude Code, the App forwards your optimized prompts to Anthropic's Claude API on your behalf, exactly as Claude Code would without Headroom. Anthropic's privacy policy governs how they handle API requests.
- OpenAI. When you use OpenAI Codex, the App forwards your optimized prompts to OpenAI's API on your behalf, exactly as Codex would without Headroom. OpenAI's privacy policy governs how they handle API requests.
- Aptabase. Anonymous usage events are sent to Aptabase, a privacy-focused analytics service hosted in the EU. Aptabase does not receive your email address. Their privacy policy governs their handling of event data.
- Sentry. Crash reports and error data are sent to Sentry, a US-based service. Transfers are made under standard contractual clauses. This may include technical context such as stack traces and app version. From version 0.9.29 we do not include your email address in Sentry reports, but cannot guarantee it never appears in diagnostic context. Sentry's privacy policy governs their handling of this data.
- Simple Analytics. Website page view statistics are processed by Simple Analytics. No personal data or cookies are involved. Their privacy policy governs their handling of this data.
- Google Ads (non-EEA/UK website visitors only). Conversion data from the website is processed by Google LLC. Google Ads sets cookies and may transfer data to the United States. Google's privacy policy governs their handling of this data. This service is not loaded for EEA or UK visitors.
We do not share your email address with Aptabase or, from version 0.9.29, with Sentry, and we do not share it with Anthropic.
8. Your Rights
Under the GDPR you have the right to access, rectify, erase, restrict, or object to the processing of your personal data, and the right to data portability. You can exercise these rights by emailing support@extraheadroom.com. We will respond within one month.
You also have the right to lodge a complaint with a supervisory authority. In the Netherlands, this is the Autoriteit Persoonsgegevens (autoriteitpersoonsgegevens.nl).
9. Changes to This Policy
We may update this Privacy Policy from time to time. For material changes, we will notify you by email at the address associated with your account at least 14 days before the changes take effect, consistent with our Terms of Service. Non-material changes will be noted by updating the "Last updated" date above. We will not retroactively change how we handle data we have already collected without obtaining your consent where required by law.
If Garm Tech B.V. or Headroom is acquired, merged, or otherwise transferred, the personal data we hold passes to the successor only on the terms of this Privacy Policy, and the successor is bound by it. Any later change to those terms follows the notice requirements above.
10. Contact
Questions? Email us at support@extraheadroom.com.