この記事の目次
Claude Codeのオプトアウト設定は2系統あります。会話やコードをモデル学習に使わせない設定は、Free・Pro・Maxのアカウントなら claude.ai のプライバシー設定で切り替えます。Team・Enterprise・APIキー利用は商用規約が適用され、顧客が提供を選ばない限り学習に使われません。もう一方の、利用メトリクスやエラー情報の送信(テレメトリ)を止める設定は、環境変数 DISABLE_TELEMETRY などを Claude Code 側に設定して行います。設定する場所も対象も違うので、2つは分けて確認します。
Claude Codeの利用データは学習に使われるのか:プランで決まる
公式の Data usage ページでは、学習の扱いをプランで2つに分けています。
| 利用形態 | 学習への利用 | 標準の保持期間 |
|---|---|---|
| Free・Pro・Max(消費者向け) | 本人が選ぶ。設定がオンなら Claude Code での利用分も学習対象 | 許可した場合5年、許可しない場合30日 |
| Team・Enterprise・API・他社クラウド経由・Claude Gov(商用) | 顧客が提供を選ばない限り学習に使わない | 30日 |
消費者向けについては、公式に「Claude Codeをこれらのアカウントから使う場合も含む」と明記されています。Pro や Max にログインして Claude Code を使っているなら、claude.ai 側のデータ利用設定がそのまま Claude Code の利用分にも及びます。
商用でも、顧客がモデル改善へのデータ提供を選んだ場合は例外です。その一例が、組織の管理者が明示的に参加する Development Partner Program です(Anthropic の API 限定)。
自分がどちらに当たるかは、Claude Code にどの利用経路でログインしているかで判断します。Pro・Max のサブスクリプションでログインしていれば消費者向け、APIキーでの利用や Team・Enterprise のアカウントで使っていれば商用側です。ログイン方式の違いはClaude Codeのログイン方法で扱っています。
法律・税務上の助言ではありません。契約や利用の可否は、規約の原文または専門家にご確認ください。
Pro・Maxで学習利用をオフにする手順
Free・Pro・Max の学習設定は、Claude Code の中ではなく claude.ai のプライバシー設定で変えます。公式が示している設定ページは次のとおりです。
- claude.ai/settings/data-privacy-controls
ここで学習への利用を許可しない状態にすると、保持期間は公式の記述で5年から30日になります。設定はいつでも変更できると書かれているので、あとから戻すことも可能です。
この学習設定で変わるのは、学習への利用可否と、それに結び付いた保持期間です。利用状況などの送信は、次の節の環境変数で別に止めます。
Claude Codeのテレメトリを止める環境変数はどれか
公式によると、Claude Code が送る運用テレメトリは「使用メトリクス」と「エラーレポート」の2種類です。それぞれ個別に止めることも、関連する通信をまとめて止めることもできます。
| 環境変数 | 止まるもの | 注意点 |
|---|---|---|
DISABLE_TELEMETRY |
使用メトリクス(レイテンシ、信頼性、利用傾向) | 0 や false でも停止のまま。戻すには変数を外す |
DO_NOT_TRACK |
DISABLE_TELEMETRY と同じ |
通常の真偽値として読まれ、0 ならテレメトリはオンのまま |
DISABLE_ERROR_REPORTING |
エラーレポート(Claude Code 内部のエラーメッセージとスタックトレース) | 0 や false でも停止のまま |
DISABLE_FEEDBACK_COMMAND |
/feedback と、同じ経路を使う /bug・/share |
旧名 DISABLE_BUG_COMMAND も有効 |
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY |
「How is Claude doing this session?」のセッション品質アンケート | DISABLE_TELEMETRY などを設定した場合も無効になる |
DISABLE_AUTOUPDATER |
バックグラウンドの自動更新 | 手動の claude update は使える |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC |
自動更新、テレメトリ、エラーレポート、/feedback、リリースノートなど必須でない通信をまとめて |
0 や false でも停止のまま |
送信内容について、公式は次のように説明しています。
- 使用メトリクスには、コード・プロンプト・ファイルパスは含まれません。
- エラーレポートは、秘密情報やファイルパス、メールアドレスなどの既知のパターンを伏せたうえで送られます。有効になるのは、Pro または Max でサインインし、v2.1.198 以降を Claude API に直接つないで使い、組織が ZDR や HIPAA の契約を結んでいない場合だけです。
/feedbackを実行すると、コードを含む会話履歴のコピーが Anthropic に送られ、5年間保持されます。
送信を最小にしたいなら CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC、メトリクスだけ止めたいなら DISABLE_TELEMETRY が出発点です。
止めると使えなくなる機能
DISABLE_TELEMETRY と CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC は、機能フラグの取得も止めます。公式はこの影響で Remote Control が使えなくなる場合があると書いています。DISABLE_ERROR_REPORTING にはこの影響はありません。また CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC は自動更新も止めます。
Bedrock・Agent Platform などを使っている場合の既定
Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry、Claude Platform on AWS 経由で使っている場合、エラーレポート・テレメトリ・バグ報告は既定で無効です。ただしセッション品質アンケートと、後述する WebFetch の安全確認はプロバイダに関係なく動きます。
環境変数をシェルとsettings.jsonのどちらに書くか
公式の Environment variables ページは、環境変数の置き場所としてシェルと settings.json の2つを挙げています。違いは持続範囲です。シェルで設定した変数はそのターミナルの間だけ有効で、settings.json に書いた変数は claude を起動するたびに適用されます。
シェルで設定する
macOS・Linux・WSL では、claude を起動する前に export します。
export DISABLE_TELEMETRY=1
claude
毎回効かせたい場合は、この export の行を ~/.zshrc や ~/.bashrc に追記します。Windows の PowerShell では $env:DISABLE_TELEMETRY = "1" の形で設定します。
settings.jsonに書いて固定する
公式には、環境変数はすべて settings.json に書けるとあります。env キーの下に並べると、どのターミナルからどう起動しても効きます。
{
"env": {
"DISABLE_TELEMETRY": "1"
}
}
書く場所によって、誰に効くかが変わります。
| ファイル | 適用範囲 |
|---|---|
~/.claude/settings.json |
自分の全プロジェクト |
.claude/settings.json |
そのプロジェクトで作業する全員(ソース管理に入れる) |
.claude/settings.local.json |
自分のこのプロジェクトだけ |
| managed settings | 組織の全員(管理者が配布) |
個人で止めたいだけなら ~/.claude/settings.json が扱いやすい置き場所です。保存すると、実行中のセッションにも新しい値が反映されます。ただし変数を削除した場合は、次に claude を起動したときから反映されます。settings.json の構造やほかのキーはClaude Codeのsettings.json設定ガイドにまとめています。
チームや組織でオプトアウト設定を統一するには
各メンバーのシェル設定に依存せずに統一するには、managed settings を使います。公式の managed settings のページは、全開発者のテレメトリを止める管理設定として、managed settings の env ブロックで DISABLE_TELEMETRY を配布する手順を示しています。書き方は上の settings.json と同じ形です。値が 1 なら、利用者に承認ダイアログを出さずに適用されます。
managed settings は優先順位の最上位にあり、利用者が自分の settings ファイルや --settings で上書きすることはできません。優先順位は高い順に次のとおりです。
- managed settings
- 起動時にコマンドラインで渡す
--settings(そのセッションのみ) .claude/settings.local.json.claude/settings.json~/.claude/settings.json
settings ファイル内の env ブロックもこの順位に従います。
組織で止める場合の副作用として、テレメトリを止めた開発者の分は、組織の analytics ダッシュボードに使われる利用データも送られなくなります。企業で導入するときの論点はClaude Codeのセキュリティを企業で検討する際の論点で扱っています。
オプトアウト設定が効いているかを確かめる方法
設定が効いているかは、シェルの値、読み込まれた設定ファイル、値の書き方の順に確認します。
1. シェルの変数を表示する
シェルで設定した場合は、同じターミナルで変数を表示します。
echo $DISABLE_TELEMETRY
このコマンドは、そのシェルでの変数の値を表示します。PowerShell では echo $env:DISABLE_TELEMETRY です。
2. /statusで読み込まれた設定ファイルを見る
settings.json に書いた場合は、Claude Code の中で /status を実行します(公式の Settings ページ)。Status タブの Setting sources 行に、そのセッションで読み込んだ settings ファイルが並びます。組織の managed settings が効いていれば、ここに表示されます。
この行で分かるのは、どのファイルを読んだかまでです。どのキーがどのファイルから来たかは表示されません。書いたファイルが一覧に出ていないなら、置き場所かファイル名を見直します。
3. claude doctorで拒否された項目を確認する
設定ファイルの項目が拒否された場合は、claude doctor で一覧を確認できると公式は説明しています。
claude doctor
よくある誤り:0やfalseで戻そうとする
DISABLE_TELEMETRY、DISABLE_ERROR_REPORTING、CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC は、値が空でなければ停止として扱われます。0 や false を入れても停止のままで、元に戻すには変数自体を外す必要があります。一方 DO_NOT_TRACK は通常の真偽値として読まれるので、0 ではテレメトリはオンのままです。同じ「止める」変数でも読み方が違います。
確認できないこと
ここまでの手順で確認できるのは、シェルの値と、Claude Code が読み込んだ設定ファイルです。/status の Setting sources 行は、どのファイルが各キーを供給したかまでは示しません。また、これらの手順は実際に通信が止まったことを検証するものではありません。学習設定は claude.ai の設定ページで変更します。
オプトアウトしても送られるもの・手元に残るもの
公式の Data usage ページによると、テレメトリを止めても次の通信やデータは残ります。
- モデルとのやり取り: プロンプトとモデルの出力は、TLS 1.2 以上で暗号化されて送られます。Claude Code がモデルとやり取りするための通信です。
- WebFetch の安全確認: URL を取得する前に、ホスト名だけを
api.anthropic.comに送ってブロックリストと照合します。URL 全体やページ内容は送られません。これはCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICでは止まらず、settings のskipWebFetchPreflight: trueで無効化します。無効化するとブロックリストを参照せずに取得するため、公式は WebFetch の権限ルールとの併用を勧めています。 - 公式プラグインマーケットプレイスの自動インストール: これも一括停止の対象外で、
CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALLで止めます。 - 手元のトランスクリプト: セッションを再開できるよう、
~/.claude/projects/に平文で既定30日保存されます。期間はcleanupPeriodDaysで調整できます。保存場所と中身はClaude Codeのエラーログの保存場所と読み方で説明しています。
セッション品質アンケートで記録されるのは評価だけで、続けて出るトランスクリプト共有の質問で Yes を選んだ場合に限り会話の記録がアップロードされます(最大6か月保持、学習には使われないと明記)。
会話内容が外部に出るリスク全般はClaude Codeの情報漏洩リスクを確認する手順、規約上の扱いはClaude Codeの利用規約で扱っています。
公式の記述が変わったときに見直すところ
この記事の内容は、2026年10月19日に Claude Code 公式ドキュメント(Data usage、Environment variables、Settings、Managed settings の各ページ)と照合したものです。プラン別の学習の扱い、保持期間、エラーレポートが有効になるバージョン条件、各環境変数の挙動は、Claude Code の更新や規約の改定で変わる可能性があります。見直すときは、Data usage ページにある「Data training policy」と「Telemetry services」の節を確認してください。