Skip to content
Merged
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 33 additions & 1 deletion docs/core/tools/telemetry.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: .NET SDK and .NET CLI telemetry
description: The .NET SDK and the .NET CLI collect usage information and send it to Microsoft. Learn what data is collected and how to opt out.
author: KathleenDollard
ms.date: 02/24/2022
ms.date: 10/07/2025
---
# .NET SDK and .NET CLI telemetry

Expand Down Expand Up @@ -106,6 +106,17 @@ The telemetry feature collects the following data:
| >=8.0.100 | Whether library mode for mobile is used. |
| >=8.0.100 | Whether NativeAOT is used. |
| >=8.0.100 | Used Mono runtime pack version. |
| >=10.0.100 | Hashed project identifier for `dotnet run`. |
| >=10.0.100 | Application type of either file-based app or project-based for `dotnet run`. |
| >=10.0.100 | The launch profile name if specified for `dotnet run`. |
| >=10.0.100 | Whether a launch profile was specified for `dotnet run`.|
| >=10.0.100 | The applied launch settings model if any for `dotnet run`. |
| >=10.0.100 | Number of SDKs used for `dotnet run`. |
| >=10.0.100 | Number of PackageReferences for `dotnet run`. |
| >=10.0.100 | Number of ProjectReferences for `dotnet run`. |
| >=10.0.100 | Number of additional properties for file-based apps with `dotnet run`. |
| >=10.0.100 | Whether MSBuild was used for file-based apps with `dotnet run`. |
| >=10.0.100 | Whether Roslyn compiler was used for file-based apps with `dotnet run`. |

### Collected options

Expand Down Expand Up @@ -147,6 +158,27 @@ The `dotnet new` template instantiation command collects additional data for Mic
* `--framework`
* `--auth`

### dotnet run telemetry

The `dotnet run` command collects feature-based telemetry to help drive development and usage of file-based apps, starting with .NET SDK 10.0.100:

**Telemetry for all `dotnet run` executions:**

- Application type (file-based or project-based)
- Hashed project or file identifier
- Number of SDKs used
- Number of PackageReferences
- Number of ProjectReferences
- Launch profile usage (whether `--launch-profile` or `--no-launch-profile` was used)
- Whether the launch profile is a default profile
- Launch settings model applied if any

**Telemetry for file-based apps only:**

- Number of additional properties (for example, `#:property` directives)
- Whether MSBuild was used for building
- Whether the Roslyn compiler was used directly

## Crash exception telemetry

If the .NET CLI/SDK crashes, it collects the name of the exception and stack trace of the CLI/SDK code. This information is collected to assess problems and improve the quality of the .NET SDK and CLI. This article provides information about the data we collect. It also provides tips on how users building their own version of the .NET SDK can avoid inadvertent disclosure of personal or sensitive information.
Expand Down