Azure Communication Services Email remains OutForDelivery and never reaches recipient mail server

Pim Vrolijks 20 Reputation points
2026-08-28T19:57:53.3633333+00:00

We sent one transactional test email through Azure Communication Services Email using a verified custom sender domain.

The send operation was accepted successfully. Diagnostic logging was enabled before sending.

Log Analytics shows:

  • one message-level OutForDelivery event;

zero recipient-level events;

no SMTP status code;

no enhanced SMTP status code;

no Delivered, Failed, Bounced, Suppressed, Quarantined or FilteredSpam event;

no corresponding EmailSendMailOperational record.

The recipient email provider checked its inbound SMTP logs and confirmed that the message never reached its mail platform. Other external email to the same mailbox is delivered normally.

The email volume is extremely low, so rate limiting is unlikely.

Questions:

What can cause ACS Email to remain at OutForDelivery without producing a recipient-level event?

Why can EmailStatusUpdateOperational contain a message-level event while EmailSendMailOperational contains no corresponding record?

Is there a free escalation route for a server-side message trace when the Azure subscription uses Basic Support?

The ACS Message ID and recipient address are intentionally omitted from this public question but are available through a private support channel if required.We sent one transactional test email through Azure Communication Services Email using a verified custom sender domain.

The send operation was accepted successfully. Diagnostic logging was enabled before sending.

Log Analytics shows:

one message-level OutForDelivery event;

zero recipient-level events;

no SMTP status code;

no enhanced SMTP status code;

no Delivered, Failed, Bounced, Suppressed, Quarantined or FilteredSpam event;

no corresponding EmailSendMailOperational record.

The recipient email provider checked its inbound SMTP logs and confirmed that the message never reached its mail platform. Other external email to the same mailbox is delivered normally.

The email volume is extremely low, so rate limiting is unlikely.

Questions:

What can cause ACS Email to remain at OutForDelivery without producing a recipient-level event?

Why can EmailStatusUpdateOperational contain a message-level event while EmailSendMailOperational contains no corresponding record?

Is there a free escalation route for a server-side message trace when the Azure subscription uses Basic Support?

The ACS Message ID and recipient address are intentionally omitted from this public question but are available through a private support channel if required.

Azure Communication Services

Answer accepted by question author
TP 163.1K Reputation points Volunteer Moderator
2026-08-29T14:08:23.3+00:00

Hi Pim,

Have you tested sending a message to this same recipient using Azure-managed domain (<guid>.azurecomm.net) to see if the message is delivered? If not please test and reply back with your results.

Please note that ACS email logs don't cover all failure scenarios in comprehensive way, as compared to running your own email server. I'm not implying you should run your own server, just that you don't have the same ability to trace through each discrete step that occurs before message reaches recipient's email server/security gateway.

Thanks.

-TP

Was this answer helpful?

1 person found this answer helpful.

2 additional answers

Sort by: Oldest
  1. SHOUMIK CHAKRAVARTY 575 Reputation points
    2026-08-29T02:29:55.1533333+00:00

    FirstOutForDelivery is a message-level status, not a delivery outcome. The email logs doc splits the two: message-level events have no RecipientId and carry Dropped, OutForDelivery or Queued. Recipient-level events carry a RecipientId and the actual result — Delivered, Failed, Bounced, Quarantined, FilteredSpam, Suppressed or Expanded.

    So what you have is the send operation handing off, with no per-recipient outcome recorded. The missing SMTP status code fits too — the doc describes it as the code "returned from the recipient email server," and no code was captured, which lines up with what the recipient's provider told you.

    Second — the gap between the two tables is most likely the diagnostic setting rather than anything about the message. They're separate log categories and each has to be ticked individually:

    "Under diagnostic setting name, select Email Service Delivery Status Update Logs, Email Service Send Mail logs, and Email Service User Engagement Logs to enable email logs."

    The three email categories in the diagnostic setting — each has to be ticked individually:

    email-diagnostic-log

    If only Delivery Status Update was selected, you'd see exactly this — status records, no send-mail records. Worth confirming all three are on before reading anything into it.

    Third — there isn't a free route. The support guidance is explicit: "Azure provides unlimited support for subscription management, which includes billing, quota adjustments, and account transfers. For technical support, you need a support plan." A server-side message trace is technical, so Basic won't cover it.

    Help make this community better for everyone: if this answer resolved your issue, please accept it or leave an upvote. If not, share more details in a comment so we can continue the discussion and find the right solution.

    Was this answer helpful?


  2. Golla Venkata Pavani 7,530 Reputation points Microsoft External Staff Moderator
    2026-08-30T17:35:37.61+00:00

    Hi @Pim Vrolijks

    Thank you for reaching us regarding the issue.

    According to the ACS Email logs documentation:

    • Message-level events (no RecipientId) use the statuses Queued, OutForDelivery, or Dropped.
    • Recipient-level events (with RecipientId) and any SMTP / enhanced SMTP codes appear only for terminal outcomes: Delivered, Failed, Bounced, Suppressed, Quarantined, or FilteredSpam.

    OutForDelivery simply means ACS accepted the message and handed it off. The absence of further recipient-level events indicates that no terminal delivery report was generated.

    Recommended actions (directly from Microsoft documentation)

    1. Fully re-verify the custom domain In the Email Communication Services resource → Provision Domains, confirm that Domain, SPF, DKIM, and DKIM2 all show Verified.
      • SPF must use the hard-fail mechanism (-all).
      • Validate the published records externally with nslookup (or equivalent).
    2. Publish an MX record for the custom domain Microsoft explicitly recommends an MX record even though ACS is outbound-only: “Although Azure Communication Service only supports outbound email messages, we recommend that you set up an MX record to improve the reputation of your sender domain. An email message from a custom domain that does not have an MX record can be labeled as spam by the email provider of the addressee.” Point the MX record at a valid mail server that can accept messages for the domain (or at least resolves cleanly). Verify with: nslookup -q=MX <your-custom-domain> 8.8.8.8
    3. Publish a DMARC record lists DMARC configuration as an admin responsibility for verified sender domains and recommends:
      • Policy p=reject where possible (otherwise p=quarantine).
      • Inclusion of a rua tag pointing to a monitored mailbox. Azure-managed domains ship with p=reject; custom domains do not inherit this automatically.
    4. Confirm the domain is connected On the Communication Services resource > Email > Domains, verify the custom domain is listed as connected and that the data locations of the two resources match.
    5. Continue monitoring with the available diagnostics
      • Query ACSEmailStatusUpdateOperational by CorrelationId (Message ID) for both message-level and any late recipient-level rows.
      • Subscribe to Event Grid Microsoft.Communication.EmailDeliveryReportReceived events.
      • Use the portal Try Email feature and the Email Insights blade.

    Reference:
    https://learn.microsoft.com/en-us/azure/communication-services/concepts/email/email-domain-configuration-troubleshooting
    https://learn.microsoft.com/en-us/azure/communication-services/concepts/email/email-authentication-best-practice

    Kindly let us know if the above comment helps or you need further assistance on this issue.

    Please "accept" if the information helped you. This will help us and others in the community as well.

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.