Microsoft Sentinel
Cloud and workloads

Handle Ingestion Delay in Microsoft Sentinel

In brief

The page received wording, formatting, metadata, and link updates. Its related-content links now point to scheduled analytics rules, alert customization, template management, and data connector health guidance.

What Defender admins need to know

No administrator action is stated. Administrators may benefit from the updated terminology and related-document links when troubleshooting ingestion delays.

Summaries are generated from the documentation change itself.

Documentation change

The comparison below shows only the changed extract. Use the full-page view for complete context.


title: Handle ingestion delayIngestion Delay in Microsoft Sentinel description: Handle ingestion delay in Microsoft Sentinel scheduled analytics rules. ms.author: guywild author: guywi-ms ms.reviewer: noak ms.topic: how-to ms.date: 06/15/07/02/2026 ai-usage: ai-assisted ms.custom: msecd-doc-authoring-10141016

#Customer intent: As a security analyst, I want to handle data ingestion delays in scheduled analytics rules so that I can ensure accurate and timely threat detection.

WhileAlthough Microsoft Sentinel can ingest data from connected data sources, ingestion time for each data source maymight differ in different circumstances.

This article describes how ingestion delay might impact your scheduled analytics rules and how you can fix them to cover these gaps.

Use the following approach to account for ingestion delay in scheduled analytics rules.

To solve the issue, you need to know the delay for your data type. For this example, you already know the delay is two minutes.

For your own data, you can understand delay using the Kusto ingestion_time() function, and calculating the difference between TimeGenerated and the ingestion time. For more information, see Calculate ingestion delay.

After determining the delay, you can address the problem as follows:

  • Increase the look-back period.: Basic intuition tells you that increasing the look-back period size will help. Since your look-back period is five minutes and your delay is two minutes, setting the look-back period to seven minutes will help address this problem. For example, in your rule settings:

    :::image type="content" source="media/ingestion-delay/set-look-back.png" alt-text="Screenshot that shows setting the look-back window to seven minutes.":::

    :::image type="content" source="media/ingestion-delay/longer-look-back.png" alt-text="Diagram that shows seven-minute look back windows with a delay of two minutes." border="false":::

  • *Handle duplication:. Only increasing the look-back period can create duplication, because the look-back windows now overlap. For example, a different event may look as shown in the following diagram:

    :::image type="content" source="media/ingestion-delay/overlapping-look-back.png" alt-text="Diagram showing how overlapping look-back windows create duplication." border="false":::

    SinceBecause the event TimeGenerated value is found in both look-back periods, the event fires two alerts. You need to find a way to solve the duplication.

  • Associate the event to a specific look-back period.: In the first example, you missed events because your data wasn't ingested when the scheduled query ran. You extended the look-back to include the event, but this caused duplication. You have to associate the event to the window you extended to contain it.

    Do this by setting ingestion_time() > ago(5m), instead of the original rule look-back = 5m. This setting associates the event to the first look-back window. For example:

| where ingestion_time() > ago(rule_look_back)


See more information on the following items used in the preceding example,example in the Kusto documentation:

- [***let*** statement](/kusto/query/let-statement?view=microsoft-sentinel&preserve-view=true)
- [***where*** operator](/kusto/query/where-operator?view=microsoft-sentinel&preserve-view=true)
- [***ago()*** function](/kusto/query/ago-function?view=microsoft-sentinel&preserve-view=true)

## Calculate ingestion delay

By default, Microsoft Sentinel scheduled alert rules are configured to have a 5-five-minute look-back period. However, each data source maymight have its own, individual ingestion delay. When joining multiple data types, you must understand the different delays for each data type in order to configure the look-back period correctly.

The **Workspace Usage Report**, provided in Microsoft Sentinel out-of-the-box, includes a dashboard that shows latency and delays for the different data types flowing into your workspace.


:::image type="content" source="media/ingestion-delay/end-to-end-latency.png" alt-text="Screenshot of the Workspace Usage Report showing End to End Latency by table":::

## Next steps

For more information, see:Related content

- [Create customa scheduled analytics rules to detect threats]rule from scratch](detect-threats-custom.create-analytics-rules.md)
- [Customize alert details in AzureMicrosoft Sentinel](customize-alert-details.md)
- [Manage template versions for your scheduled analytics rules in AzureMicrosoft Sentinel](manage-analytics-rule-templates.md)
- [Use[Monitor the health monitoring workbook]of your data connectors](monitor-data-connector-health.md)
- [Log data ingestion time in Azure Monitor](/azure/azure-monitor/logs/data-ingestion-time)