View Categories

Product-Level Lead Times

Product-level lead times let you set custom processing times for individual products or variations.

Use this when specific products need more or less time before dispatch than your default store settings.

What is product-level lead time? #

Product-level lead time controls the processing time before dispatch for a specific product.

It does not replace the delivery time after dispatch.

For example:

Default store processing time: 0–1 days
Product lead time: 5–10 days
Transit time: 2–3 days

The product will use the 5–10 day processing time before adding the transit time.

When to use product-level lead times #

Use product-level lead times for:

  • handmade products
  • made-to-order products
  • preorder products
  • backorder products
  • bulky or freight items
  • products that need preparation
  • products that ship from a slower warehouse
  • products that require customization

Where to configure product-level lead time #

To configure a product lead time:

  1. Go to Products in your WordPress admin.
  2. Edit the product.
  3. Find the Delivery Promise product data section.
  4. Choose Custom product lead time.
  5. Enter the minimum and maximum processing days.
  6. Save or update the product.

Lead time mode #

Each product can use one of these modes:

Use global rules and defaults #

The product uses your default Delivery Promise settings and matching delivery rules.

Use this for most normal products.

Custom product lead time #

The product uses its own processing time before dispatch.

Use this for products that need special preparation.

Hide delivery promise for this product #

The product will not show a delivery promise on the product page.

Use this when delivery timing is not predictable.

Processing minimum and maximum days #

When using custom product lead time, enter the processing range.

Example:

Minimum processing days: 5
Maximum processing days: 10

The product may show an estimate such as:

Made to order. Estimated delivery: July 10 – July 15

The exact dates depend on working days, holidays, cutoff time, and the selected shipping method.

Product-level lead time and transit time #

Product lead time controls only the processing time before dispatch.

Transit time still comes from:

  • default delivery settings
  • shipping method rules
  • delivery rules

Example:

Product lead time: 5–10 days
Express shipping transit: 1–2 days

The plugin calculates:

Processing: 5–10 days
Transit: 1–2 days

Same-day countdown and product lead time #

The same-day countdown usually appears only when the product can dispatch today.

If a product has a custom lead time greater than 0 days, the countdown will not appear.

Example:

Product lead time: 5–10 days

The product will not show:

Order within 3 hrs 20 mins for dispatch today

because same-day dispatch is not realistic.

Custom product message #

You can set a custom product page delivery message.

Example:

Made to order. Estimated delivery: {delivery_range}

Useful placeholders include:

{dispatch_date}
{dispatch_range}
{delivery_date}
{delivery_range}
{shipping_method}
{cutoff_time}
{countdown}

Backorder lead time #

If a product is available on backorder, you can use a separate backorder lead time.

Example:

Backorder processing time: 14–21 days
Backorder message: Available on backorder. Estimated delivery: {delivery_range}

This helps avoid showing normal delivery estimates for products that are not currently available.

Variation-level lead times #

If your product has variations, you may be able to configure lead time per variation.

Example:

Small size: 0–1 processing days
Custom size: 7–14 processing days

Variation-level settings override parent product settings when a matching variation is selected.

Use this when different variations have different fulfillment times.

Cart behavior with multiple products #

When the cart contains multiple products with different lead times, Delivery Promise uses the slowest applicable processing time for the cart and checkout estimate.

Example:

Product A processing: 0–1 days
Product B processing: 5–7 days

The cart estimate uses:

Processing: 5–7 days

This prevents the checkout from promising a delivery date that cannot be met because of the slower product.

Example: Handmade product #

Use this setup for handmade products:

Lead time mode: Custom product lead time
Processing time: 5–10 working days
Custom message: Handmade item. Estimated delivery: {delivery_range}

Example: Bulky product #

Use this setup for large products:

Lead time mode: Custom product lead time
Processing time: 2–4 working days
Custom message: Freight delivery estimate: {delivery_range}

Example: Hide delivery promise #

Use this when the delivery date is unpredictable:

Lead time mode: Hide delivery promise for this product

This can be useful for:

  • special-order products
  • products waiting on supplier confirmation
  • products with manual delivery arrangements

Testing product lead times #

After saving a product lead time:

  1. Open WooCommerce → Delivery Promise.
  2. Open the Tester tab.
  3. Select the product.
  4. Run the preview.
  5. Confirm that the product-level lead time is applied.

You can also open the product page and check the customer-facing delivery message.

Troubleshooting #

Product lead time is not applied #

Check:

  • the product was updated after changing settings
  • lead time mode is set to custom
  • min/max processing days are saved
  • variation settings are not overriding the parent product
  • another product in the cart has a longer lead time

Countdown is not showing #

This is expected if the product lead time is greater than 0 days.

Same-day countdown usually requires minimum processing days to be 0.

Cart estimate is later than expected #

The cart may contain another product with a longer lead time.

Delivery Promise uses the slowest applicable product lead time for the cart and checkout estimate.

Product page message is not custom #

Check:

  • custom message is enabled
  • the custom message field is not empty
  • product lead time mode is set correctly
  • the product page display location is enabled