Metric telemetry: Application Insights data model

There are two types of metric telemetry supported by Application Insights: single measurement and pre-aggregated metric. Single measurement is just a name and value. Pre-aggregated metric specifies minimum and maximum value of the metric in the aggregation interval and standard deviation of it.

Pre-aggregated metric telemetry assumes that aggregation period was one minute.

There are several well-known metric names supported by Application Insights. These metrics placed into performanceCounters table.

Metric representing system and process counters:

.NET name Platform agnostic name REST API name Description
\Processor(_Total)\% Processor Time Work in progress... processorCpuPercentage total machine CPU
\Memory\Available Bytes Work in progress... memoryAvailableBytes Shows the amount of physical memory, in bytes, available to processes running on the computer. It is calculated by summing the amount of space on the zeroed, free, and standby memory lists. Free memory is ready for use; zeroed memory consists of pages of memory filled with zeros to prevent later processes from seeing data used by a previous process; standby memory is memory that has been removed from a process's working set (its physical memory) en route to disk but is still available to be recalled. See Memory Object
\Process(??APP_WIN32_PROC??)\% Processor Time Work in progress... processCpuPercentage CPU of the process hosting the application
\Process(??APP_WIN32_PROC??)\Private Bytes Work in progress... processPrivateBytes memory used by the process hosting the application
\Process(??APP_WIN32_PROC??)\IO Data Bytes/sec Work in progress... processIOBytesPerSecond rate of I/O operations runs by process hosting the application
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests/Sec Work in progress... requestsPerSecond rate of requests processed by application
\.NET CLR Exceptions(??APP_CLR_PROC??)\# of Exceps Thrown / sec Work in progress... exceptionsPerSecond rate of exceptions thrown by application
\ASP.NET Applications(??APP_W3SVC_PROC??)\Request Execution Time Work in progress... requestExecutionTime average requests execution time
\ASP.NET Applications(??APP_W3SVC_PROC??)\Requests In Application Queue Work in progress... requestsInQueue number of requests waiting for the processing in a queue


Name of the metric you'd like to see in Application Insights portal and UI.


Single value for measurement. Sum of individual measurements for the aggregation.


Metric weight of the aggregated metric. Should not be set for a measurement.


Minimum value of the aggregated metric. Should not be set for a measurement.


Maximum value of the aggregated metric. Should not be set for a measurement.

Standard deviation

Standard deviation of the aggregated metric. Should not be set for a measurement.

Custom properties

Metric with the custom property CustomPerfCounter set to true indicate that the metric represents the windows performance counter. These metrics placed in performanceCounters table. Not in customMetrics. Also the name of this metric is parsed to extract category, counter, and instance names.

Name-value collection of custom properties. This collection is used to extend standard telemetry with the custom dimensions. Examples are deployment slot that produced telemetry or telemetry-item specific property like order number.

Max key length: 150 Max value length: 8192

Next steps