Skip to content

Recommendation

Situational

Disable for privacy: PowerShell 7+ sends usage data on every launch, and BoosterX recommends turning it off on gaming PCs, where PowerShell is used occasionally.

There is no noticeable performance impact — only a running pwsh session sends data, not a background process.

Main effect
Disabling PowerShell telemetry
FPS and memory
See the research

Telemetry is part of PowerShell 7+ (the pwsh executable). According to the about_Telemetry documentation, the OS and PowerShell versions, launch parameters without values and the execution policy are sent at startup, and during a session information about imported modules and enabled experimental features is sent. Windows PowerShell 5.1, built into Windows, does not have this telemetry: only pwsh collects it. Disabling affects exactly this data; security logs, Script Block Logging and command history are configured separately and are not touched by the setting.

Distinguish the products: $PSVersionTable in the pwsh console shows 7.x, in the built-in PowerShell — 5.1. The documented opt-out is the POWERSHELL_TELEMETRY_OPTOUT environment variable, which takes effect before the process starts. Starting with PowerShell 7.6.2 on Windows, disabling is also available through the general “Settings” → “Privacy & security” → “Diagnostics & feedback”. Do not disable protective logging according to third-party instructions, mistaking it for telemetry.

Start a new PowerShell 7 session and run $Env:POWERSHELL_TELEMETRY_OPTOUT: the variable must be set — environment variables are read when the process starts. Verify the composition of the collected data against the about_Telemetry page.

Open “Optimization” → “Privacy” → “Dev tools and CLI” → “PowerShell Telemetry” and switch the toggle to “Enabled”: BoosterX will apply the PowerShell telemetry opt-out. Click “Apply”. If “Instant apply” is enabled, a separate button is not required. To revert, switch the toggle to “Disabled” and apply the change again: BoosterX will return Windows to its default state with PowerShell telemetry enabled; new PowerShell sessions will pick up the variable.

Last checked: 2026-09-19.