To stop WooCommerce messages from showing twice, once as a pop-up and once inline, go to WPFactory > Popups in Popups for WooCommerce: Add to Cart, Checkout & More. Under Notice hiding, tick Hide error notices, Hide success notices and Hide info notices, then save.
Why it happens #
By default the plugin shows the pop-up but does not remove WooCommerce’s own inline notice, so both appear. The Notice hiding options are off by default, so you turn them on for the types you are showing as pop-ups.
Fix it, step by step #
- Go to WPFactory > Popups (also reachable at WooCommerce > Settings > Pop-up Notices).
- In the General section, find the Notice hiding group.
- Enable Hide error notices, Hide success notices, and/or Hide info notices to match the types you show as pop-ups.
- Save changes.
- Test by adding a product to the cart or triggering an error (for example, an invalid coupon). Only the pop-up should appear.
- If the duplicate persists, clear any page cache, CDN cache, and browser cache, then retest.
Note: notice hiding is applied per type. If you hide only error notices, success and info notices still show their native WooCommerce message alongside the pop-up.
How the hiding works #
Notice hiding adds a small CSS rule (display:none) for WooCommerce’s standard notice boxes: .woocommerce-error for errors, .woocommerce-message for success messages and .woocommerce-info for info notices. The notices are still created, so the pop-up can read them; they are just not visible on the page. Both options are free.
| Setting | Option ID | Hides | Default |
|---|---|---|---|
| Hide error notices | ttt_pnwc_opt_hide_error_enable |
.woocommerce-error |
No |
| Hide success notices | ttt_pnwc_opt_hide_success_enable |
.woocommerce-message |
No |
| Hide info notices | ttt_pnwc_opt_hide_info_enable |
.woocommerce-info |
No |
Additional checks #
- If a page builder or custom theme re-injects WooCommerce notices, confirm no other plugin or theme code is printing them again.
- Test on both desktop and mobile, since pop-up behavior can differ by device if you use the Device types option.
- The hiding rule loads with the plugin, so on devices excluded by Device types, or pages excluded by Restrictive Loading (Pro), the native notices show normally. That is intended: those visitors get no pop-up either.
- If the duplicate is a notice box with different markup (for example from the block-based Cart or Checkout, or a theme’s own notice style), the three options do not cover it.
- If a notice disappears completely, check that its type is still enabled under Notice types and that it is not listed under Ignore messages. A hidden type with no pop-up leaves the customer with no message at all.
FAQ #
How do I hide all WooCommerce notices? #
Tick all three: Hide error notices, Hide success notices and Hide info notices. With the matching notice types enabled, customers then see every message only as a pop-up.
Can I keep one message inline and show the rest as pop-ups? #
Leave that notice’s type unhidden, or add the message to Ignore messages so it never opens a pop-up. See hide specific notices from pop-ups.
Will this hide notices in the admin? #
No. The rule is only added on the storefront, where the pop-up script loads.
For the full list of notice settings, see manage pop-up notifications.
Still stuck? #
Our team answers every ticket on the Popup Notices support forum.
