You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PowerToys diagnostic data is completely optional for users and is off by default in v0.86 and beyond. Our team believes in transparency and trust. As PowerToys is open source, all of our diagnostic data events are in the codebase.
Additionally, this document aims to list each diagnostic data event individually and describe their purpose clearly.
Usage: Understanding usage and frequency rates for utilities and settings helps us make decisions on where to focus our time and energy. This data also helps us better understand what and how to move well-loved features directly into Windows!
Stability: Monitoring bugs and system crashes, as well as analyzing GitHub issue reports, assists us in prioritizing the most urgent issues.
Performance: Assessing the performance of PowerToys features to load and execute gives us an understanding of what surfaces are causing slowdowns. This supports our commitment to providing you with tools that are both speedy and effective.
Success story: Fixing FancyZones bugs with your help
FancyZones had numerous bug reports related to virtual desktop interactions. Initially, these were considered lower priority, since the assumption was that virtual desktops were not widely used, so we chose to focus on more urgent issues. However, the volume of bug reports suggested otherwise, prompting us to add additional diagnostics to see virtual desktop usage with FancyZones. We discovered that virtual desktop usage was much higher among FancyZones users. This new understanding led us to prioritize this class of bugs and get them fixed.
Transparency and public sharing
As much as possible, we aim to share the results of diagnostic data publicly.
We hope this document provides clarity on why and how we collect diagnostic data to improve PowerToys for our users. If you have any questions or concerns, please feel free to reach out to us.
Thank you for using PowerToys!
List of diagnostic data events
Note
We're in the process of updating this section with more events and their descriptions. We aim to keep this list current by adding any new diagnostic data events as they become available.
If you want to find diagnostic data events in the source code, these two links will be good starting points based on the source code's language:
Triggered when a user clicks on the Shortcut Conflict Control button in the PowerToys Settings UI Dashboard.
Microsoft.PowerToys.ShortcutConflictDetectedEvent
Triggered when keyboard shortcut conflicts are detected in the PowerToys Settings UI Dashboard.
Microsoft.PowerToys.ShortcutConflictResolvedEvent
Triggered when a keyboard shortcut conflict is resolved in the PowerToys Settings UI.
Microsoft.PowerToys.TrayFlyoutActivatedEvent
Indicates when the tray flyout menu is activated.
Microsoft.PowerToys.TrayFlyoutModuleRunEvent
Logs when a utility from the tray flyout menu is run.
Microsoft.PowerToys.UnInstall_Cancel
Triggered when the PowerToys uninstallation process is cancelled by the user before completion.
Microsoft.PowerToys.UnInstall_Fail
Triggered when the PowerToys uninstallation process fails to complete successfully due to an error.
Microsoft.PowerToys.Uninstall_Success
Logs when PowerToys is successfully uninstalled (who would do such a thing!).
Microsoft.PowerToys.UpdateCheck_Completed
Logs when an auto-update check completes, including success status, whether an update is available, and version information.
Microsoft.PowerToys.UpdateDownload_Completed
Logs when an update download completes, including success status and version.
OOBE (Out-of-box experience)
Event Name
Description
Microsoft.PowerToys.OobeModuleRunEvent
Triggered when a user clicks to run or launch a PowerToys module directly from the OOBE (out-of-box experience) interface.
Microsoft.PowerToys.OobeSectionEvent
Occurs when OOBE is shown to the user.
Microsoft.PowerToys.OobeSettingsEvent
Triggers when a Settings page is opened from an OOBE page.
Microsoft.PowerToys.OobeStartedEvent
Indicates when the out-of-box experience has been initiated.
Microsoft.PowerToys.OobeVariantAssignmentEvent
This event logs A/B testing assignments for experimental features, helping track which users are in control or alternate groups for feature experiments.
Triggered when the system is set to stay awake indefinitely.
Microsoft.PowerToys.AwakeNoKeepAwakeEvent
Occurs when Awake is turned off, allowing the computer to enter sleep mode.
Microsoft.PowerToys.AwakeTimedKeepAwakeEvent
Triggered when the system is kept awake for a specified time duration.
Color Picker
Event Name
Description
Microsoft.PowerToys.ColorPicker_EnableColorPicker
Triggered when Color Picker is enabled.
Microsoft.PowerToys.ColorPicker_Session
Occurs during a Color Picker usage session.
Microsoft.PowerToys.ColorPicker_Settings
Triggered when the settings for the Color Picker are accessed or modified.
Command Not Found
Event Name
Description
Microsoft.PowerToys.CmdNotFound_EnableCmdNotFound
Triggered when Command Not Found is enabled or disabled.
Microsoft.PowerToys.CmdNotFoundInstallEvent
Triggered when a Command Not Found is installed.
Microsoft.PowerToys.CmdNotFoundUninstallEvent
Triggered when Command Not Found is uninstalled after being previously installed.
Command Palette
Event Name
Description
Microsoft.PowerToys.CmdPal_BeginInvoke
Triggered when the Command Palette is launched by the user.
Microsoft.PowerToys.CmdPal_ColdLaunch
Occurs when Command Palette starts for the first time (cold start).
Microsoft.PowerToys.CmdPal_DockConfiguration
Tracks dock configuration at startup including whether the dock is enabled, dock side (top, bottom, left, or right), and the list of extension commands pinned to the start, center, and end sections of the dock.
Microsoft.PowerToys.CmdPal_ExtensionInvoked
Tracks extension usage including extension ID, command details, success status, and execution time.
Microsoft.PowerToys.CmdPal_OpenPage
Triggered when a page is opened within the Command Palette, tracking navigation depth.
Microsoft.PowerToys.CmdPal_OpenUri
Occurs when a URI is opened through the Command Palette, including whether it's a web URL.
Microsoft.PowerToys.CmdPal_ReactivateInstance
Triggered when an existing Command Palette instance is reactivated.
Microsoft.PowerToys.CmdPal_RunCommand
Logs when a command is executed through the Command Palette, including admin elevation status.
Microsoft.PowerToys.CmdPal_RunQuery
Triggered when a search query is performed, including result count and duration.
Microsoft.PowerToys.CmdPal_SessionDuration
Logs session metrics from launch to dismissal including duration, commands executed, pages visited, search queries, navigation depth, and errors.
Microsoft.PowerToys.CmdPalDismissedOnEsc
Occurs when the Command Palette is dismissed by pressing the Escape key.
Microsoft.PowerToys.CmdPalDismissedOnLostFocus
Triggered when the Command Palette is dismissed due to losing focus.
Microsoft.PowerToys.CmdPalHotkeySummoned
Logs when the Command Palette is summoned via hotkey, distinguishing between global and context-specific hotkeys.
Microsoft.PowerToys.CmdPalInvokeResult
Records the result type of a Command Palette invocation.
Microsoft.PowerToys.CmdPalProcessStarted
Triggered when the Command Palette process is started.
Crop and lock
Event Name
Description
Microsoft.PowerToys.CropAndLock_ActivateReparent
Triggered when the cropping interface is activated for reparenting the cropped content.
Triggered when an environment variable is added, modified, or deleted.
FancyZones
Event Name
Description
Microsoft.PowerToys.FancyZones_CLICommand
Triggered when a FancyZones CLI command is executed, logging the command name and success status.
Microsoft.PowerToys.FancyZones_CycleActiveZoneSet
Triggered when the active zone set is cycled through.
Microsoft.PowerToys.FancyZones_EditorLaunch
Occurs when the FancyZones editor is launched.
Microsoft.PowerToys.FancyZones_EnableFancyZones
Occurs when FancyZones is enabled.
Microsoft.PowerToys.FancyZones_Error
Triggered when an error occurs within the FancyZones module. This event logs critical errors to help diagnose and troubleshoot issues with FancyZones functionality, such as failures to set up Windows hooks or other system-level operations required for window management.
Triggered when the settings for specific zones are altered.
Microsoft.PowerToys.FancyZones_ZoneWindowKeyUp
Occurs when a key is released while interacting with zones.
Microsoft.PowerToys.FancyZonesEditorStartEvent
Triggered when the FancyZones Editor application starts. This logs the initialization of the editor UI, which is used to create and configure custom zone layouts.
Triggered when there is an error sending remapping configuration telemetry. This occurs when Keyboard Manager fails to report the loaded key and shortcut remap configurations.