---
title: Custom Email Sends Too Early or at the Wrong Time
description: Custom email arriving as soon as the order is placed? Why On hold, New order and multiple triggers fire early, and which trigger to use instead.
url: "https://wpfactory.com/docs/custom-email-sent-at-wrong-time/"
updated: "2026-09-27"
category: Troubleshooting
---

# Custom Email Sends Too Early or at the Wrong Time

If a custom email from [Additional Custom Emails & Recipients for WooCommerce](https://wpfactory.com/item/custom-emails-for-woocommerce/) arrives the moment an order is placed, its trigger is firing earlier than you expect. The most common fix: open the email under **WooCommerce > Settings > Emails** and pick the status the order reaches later, such as **Order status updated to Processing**.

## Causes and fixes

1. **An offline payment method moves the order to On hold during checkout.** With payment methods such as Direct bank transfer or Check payments, WooCommerce creates the order as Pending payment and switches it to On hold while the customer is still on the checkout. So the triggers **Order status Pending payment to On hold** and **Order status updated to On hold** fire at checkout. This is expected, not a fault in Custom Emails.

   Fix: if the email should go out when you confirm the payment, use **Order status On hold to Processing** (or **Order status updated to Processing**) instead. To limit the email to one payment method, add it under **Order Options > Require payment gateways**.
2. **A "New order" trigger is selected.** Every trigger in the **New order** group runs when checkout creates the order, on both the classic and the block checkout. **New order (Any status)** sends for every new order, paid or not.

   Fix: to react to payment or fulfillment, switch to an **Order status updated to** or **Order status (A) to (B)** trigger.
3. **Several triggers are selected on one email.** The email is sent every time any selected trigger fires, and there is no check for an earlier send. Selecting both **Order status updated to On hold** and **Order status updated to Processing**, for example, sends the same email twice for a bank transfer order that is later paid.

   Fix: keep only the triggers you really need, or split them into separate custom emails (more than one custom email needs Pro).
4. **You want the email later, not at the status change.** Set **Delay** and its unit (seconds to weeks) on the email. Then add **Order Options > Require order status** (or **Exclude order status**) so a queued email is skipped if the order has moved on by the time it runs. Queued emails are listed at **WPFactory > Custom Emails > Scheduled**. Delay is free. See [how to send delayed and scheduled emails](https://wpfactory.com/docs/send-delayed-scheduled-emails/).

## How to confirm it is fixed

1. Go to **WPFactory > Custom Emails > General** (also reachable at **WooCommerce > Settings > Custom Emails > General**) and enable **Debug** under **Advanced Options**.
2. Place a test order with the payment method your customers use, then change its status the way you normally would.
3. Open **WooCommerce > Status > Logs** and select the `custom-emails-for-woocommerce` source. Each attempt starts with *Triggered [hook name]*, for example `woocommerce_order_status_pending_to_on-hold_notification`, so you can see exactly which status change sent the email.

For the full list of triggers and what each one listens to, see the [custom email triggers reference](https://wpfactory.com/docs/custom-emails-triggers-reference/). If the email does not send at all, see [custom email not sending](https://wpfactory.com/docs/custom-email-troubleshooting/).

## Still stuck?

Need a hand? Our team answers every ticket on the [Custom Emails support forum](https://wpfactory.com/support/item/custom-emails-for-woocommerce/). Include your Debug log and the email's trigger settings.

Related articles

- [Custom Email Preview Shows the Wrong or Old Content](https://wpfactory.com/docs/custom-email-preview-wrong-content/)
- [Send a Custom Email from the Order Screen](https://wpfactory.com/docs/send-custom-email-from-order-screen/)
- [Order Targeting: Send Custom Emails Only for Certain Orders](https://wpfactory.com/docs/advanced-admin-order/)
- [Custom Emails: Developer Hooks & Filters Reference](https://wpfactory.com/docs/custom-emails-developer-hooks-filters/)
- [Custom Emails: Free vs Pro Versions Compared](https://wpfactory.com/docs/pro-vs-free-versions-email/)
