Azure Monitor · Rate Limits
Microsoft Azure Monitor Rate Limits
Azure Monitor surfaces multiple APIs each with separate rate limits - Log Ingestion API (Data Collection Rules), Logs Query API, Metrics API, Application Insights track API. Daily ingestion cap can be set per workspace. Query throttling is enforced per workspace and per user.
8 Limits
Throttle: 429
Rate LimitingObservabilityMicrosoft Azure
Limits
Log Ingestion API per DCR throughput data_collection_rule
see Azure Monitor service limits (default a few MB/sec per DCR)
Logs Query API queries per user per workspace user/workspace
200
Logs Query API concurrent queries per user user
5
Logs Query API maximum data scanned per query query
64 GB per query (Analytics tier default)
Logs Query API query timeout query
600
Application Insights track API per ingestion app_insights_resource
see App Insights ingestion sampling and rate caps
Daily ingestion cap (configurable) workspace
workspace-configurable; set to bound daily spend
Metrics API requests per subscription subscription
see Azure Monitor REST API limits
Policies
Honor Retry-After
When ingestion or query APIs return 429 / 503, wait the duration in Retry-After and retry with exponential backoff.
Use sampling
For Application Insights at high event rates, enable adaptive sampling to control cost and rate without code changes.
Daily cap to bound spend
Set workspace daily cap to prevent runaway ingestion; cap triggers an alert when hit and stops ingestion until reset.
Use the Logs Ingestion API (DCR-based) for high volume
New collectors should use the DCR-based Logs Ingestion API rather than the legacy Data Collector API for better throughput and schema control.
Batch and pre-aggregate metrics
Pre-aggregate high-cardinality custom metrics client-side and emit per minute rather than per request to control sample-count costs.