If your order confirmation, shipping confirmation, or other transactional automation is not sending as expected, this guide walks you through the most common causes and how to fix them.
For the most reliable results, test your automation by placing a real order in your store under the conditions your automation trigger requires.
Before You Begin
Confirm these two steps are complete before troubleshooting further:
Publish changes – Saves your current workflow edits.
Start workflow – Makes the workflow live and allows it to send.
Saving without activating keeps the workflow paused. Activating without publishing new edits runs the last published version, not your current edits. Both steps must be complete for your automation to send correctly.
Note: Automations only trigger for orders placed after the workflow is active. Orders placed before you activate the workflow will not enter it.
Troubleshooting Process
Verify Order Data Sync
When a customer places an order in your store, you can verify that Omnisend received it by checking the customer's contact profile. Go to the contact profile and confirm the order appears with the correct status. Then check that status against your trigger settings.
To learn which order events appear in Omnisend based on your ecommerce platform, see Automation Trigger Settings.
Check Automation Settings
Trigger Type
Placed Order fires when an order is created in your store, regardless of whether payment has been received.
Paid for Order fires only when the order payment status changes to Paid.
If your automation should send only after a customer completes payment, use the Paid for Order trigger. Using Placed Order with a "paid" status filter can cause the automation to miss orders if the filter and trigger status do not match.
Audience Filters
Do you have an audience filter in your automation? For event-based triggers – such as Placed Order, Viewed Product, and Custom Event – Omnisend applies a ~15-second wait before evaluating segment membership. This covers most cases.
However, if you have a large or complex segment, the segment may still be refreshing when the check runs, which can cause contacts to be incorrectly excluded.
For the most reliable results with large segments, use a Conditional Split with a short delay block instead of a segment-based audience filter. This gives you full control over when the segment check runs, regardless of segment size.
Conditional Split Settings
Like the trigger filter, a Split Condition checks the order data passed with the trigger. You can only split based on order data that was present when the order triggered the workflow.
If you need to split based on contact data, add a short delay of a few minutes before the Conditional Split. This gives Omnisend time to sync the contact record.
Check Automation Reports
If the contact meets all your trigger conditions, they enter the workflow. In the Automation report, you will see:
Entered – The contact triggered the workflow.
Currently in – The contact entered the workflow and is waiting on a step.
Exited – The contact left the workflow early due to an exit condition.
Completed – The contact passed through all steps in the workflow.
In each block, you can also see how many contacts skipped or passed through it. Use these stats to pinpoint where your automation breaks down:
If a contact entered – the trigger is working correctly.
If a contact exited unexpectedly – check your exit condition settings.
If a contact skipped a block – check the contact's subscription status.
Note: In the message block settings (Email, SMS, Push Notification), you can choose whether to cancel the workflow for non-opted-in contacts or pass to the next stage.
The customer skips the block, in case they have not opted in to the corresponding channel in the workflow.
To check the full list of contacts who entered or were skipped, go to the Reports → Automation → click your selected automation to open its individual reports → Contact activity. If you are testing with your own email address, check your inbox and search by your sender address to confirm delivery.
Custom Event Automations
If your automation is triggered by a custom event, check the following:
The event is passed correctly:
If you are using the Omnisend API, verify the event under Store Settings → API → Custom events.
If you are using a third-party app, check within that app that the event is being passed correctly.
The event appears in the contact profile. Open the contact's profile in Omnisend and confirm the event is listed there. This is the most reliable way to verify Omnisend received it.
FAQ
Why are contacts being skipped in my order confirmation automation?
The most common reason is that the contact's email subscription status is Non-subscribed or Unsubscribed, and your Workflow Channel Settings are set to Subscribed contacts only. For transactional automations, go to the Trigger block → Workflow Channel Settings → Customize → Email and select Subscribed and Non-Subscribed or Any subscription status.
My automation is active, but hasn't been sent to any past orders. Why?
Transactional automations only trigger for orders placed after the workflow is active.
If you still need help getting to the bottom of the problem, feel free to contact us via in-app chat or at [email protected].





