WooCommerce Tips

WooCommerce Promotional Visuals: When a Sale Badge Isn’t Enough and What to Put There Instead

WooCommerce Promotional Visuals: When a Sale Badge Isn't Enough and What to Put There Instead
🎪

WooCommerce Storefront Strategy

The Badge Is the Cheapest Part of the Sale.

A plain “Sale!” sticker doesn’t explain a tiered deal, a BOGO structure, or a spend challenge. This guide maps each of the six WooCommerce promotional visual types to the campaign it was built for — and explains what a shopper is missing when the visual doesn’t match the mechanic.

Run a 20% off sale and the WooCommerce “Sale!” badge appears automatically. Crossed-out pricing, the red sticker on the product image — your theme handles all of it. The visual effort is zero, and the communication is fine: the customer sees a lower price and understands they’re getting a discount.

Now run a tiered deal where 3 units cost 10% less, 5 units cost 18% less, and 10 units cost 25% less. The same “Sale!” badge appears. It’s accurate — the product is on sale — but it tells the customer nothing about the structure they need to act on. The whole behavioural mechanism is hidden. The promotion exists; the shopper just can’t see it.

This gap — between a promotion being technically active and a shopper actually understanding it — is what promotional visuals are designed to close. Not every campaign needs a custom visual. But every campaign has a story worth telling, and a generic badge can only tell one version of it.

Why a sale badge undersells most discount campaigns

WooCommerce’s native “Sale!” badge is a binary signal. It says: this product costs less than normal. That’s the right message for a straight percentage or fixed-amount discount where the only variable is the price. The customer sees the crossed-out original price and the new price, they understand the deal, and they can make a decision.

Most meaningful promotions are not that simple. A BOGO deal requires the customer to know they need to add two items. A tiered deal needs them to understand that adding three more units unlocks a better price. A spend-threshold deal is literally a challenge — reach $75 in your cart and get 15% off — and without knowing the target, there’s nothing to reach for.

When the visual doesn’t match the mechanic, a few things happen:

  • Customers don’t take the behavioural step the promotion requires (adding more units, completing the BOGO pair, pushing toward the threshold)
  • Your discount fires for customers who would have bought that way anyway, without changing a single decision
  • You’re subsidising purchases rather than influencing them

The promotion cost is real. The revenue lift isn’t. The mismatch between visual and mechanic is often where that gap lives.

How SCD applies discounts to the storefront

Smart Cycle Discounts applies prices through WooCommerce’s price filters at display time — not by writing to the stored _sale_price database field. This means your theme’s “Sale!” badge and strikethrough pricing appear automatically on shop, category, product, and search pages (WooCommerce derives its on-sale state from the filtered price at render). What it does not do: populate WooCommerce’s native “On Sale” shortcode/block or third-party sale filters that read stored price data. That limitation is shared by every runtime-filter-based discount plugin — it’s not unique to SCD, and it’s the right architectural choice for discount types (like BOGO, tiered, and spend-threshold) where the price depends on what’s in the cart.

The six visual types and what each one communicates

Smart Cycle Discounts includes six distinct promotional visual types, each designed to match a specific campaign structure. Three are included in the free version — image badge, summary badge, and BOGO panel. Three require a Pro licence — tier panel, bundle panel, and spend-threshold progress bar.

The dividing line isn’t arbitrary. The three Pro visuals correspond exactly to the three Pro discount types (tiered, bundle, spend-threshold). If you’re running a free campaign type, you have a free visual that matches it. If you’ve upgraded to run a tiered or spend-threshold campaign, the visual that explains that campaign is also available to you.

Visual type Matches discount type Where it renders Free or Pro
Image badge Any (universal) Shop grid, product page image Free
Summary badge Any (universal) Cart totals, checkout order review Free
BOGO panel BOGO / Buy X Get Y Product page, cart, checkout Free
Tier panel Tiered (volume pricing) Product page, cart, checkout Pro
Bundle panel Bundle discount Product page, cart, checkout Pro
Threshold bar Spend threshold Cart totals, checkout Pro

Each visual is designed and built separately from SCD’s discount engine — it’s a display layer you attach to a campaign, not something that fires automatically. That design gives you control: you can run a campaign without a custom visual (the theme’s native “Sale!” badge will still appear), or you can build a precisely styled panel in the visual designer and assign it to a campaign in the wizard.

Image badge: the right tool for simple percentage deals

The image badge is the visual equivalent of your theme’s native “Sale!” sticker — but fully customisable. It renders as an overlay on the product image in the shop grid and on the product page, and it accepts a custom label, custom colours, and a choice of templates: a sticker, pill, ribbon, corner cut, banner, ring, or price-tag shape.

What it communicates: that this product is discounted, and optionally by how much. The label accepts tokens like {discount_value}, so you can render “Save 20% OFF” directly on the badge rather than a generic “Sale!” string.

What it doesn’t communicate: any conditional structure. The image badge says “this product is cheaper.” It doesn’t say “if you buy three, you save more.” It doesn’t say “this is part of a bundle.” For straight percentage-off or fixed-amount campaigns, that’s exactly the right message. For any campaign that requires a behavioural step — adding more units, completing a set, hitting a spend target — it’s the wrong visual for the job.

When to use the image badge

Percentage-off and fixed-amount campaigns. Flash sales where the message is simply “this is cheaper right now.” Any campaign where the discount fires automatically without requiring the customer to do anything differently — just buy the thing at the reduced price.

Summary badge: confirming savings at checkout

The summary badge renders in the cart totals area and the checkout order review. It’s not a product-level callout — it’s a cart-level confirmation. Four layout variants are available: highlighted row (a full-width totals row in your brand colour), inline pill (a small accent chip), side note (italic margin text), and strikethrough (a crossed-out amount).

The job of a summary badge is to make the saving visible at the moment of commitment. A customer who has added products and is reviewing their cart already understands they’re getting a discount — the summary badge quantifies it. “You’re saving $14.40 today.” That reinforcement matters: it’s the reassurance that converts a cart review into a completed purchase.

Like the image badge, the summary badge is universal — it attaches to any campaign type, not just specific discount structures. That makes it a useful complement to every other visual. Run a BOGO panel on the product page to explain the deal, and a summary badge in the cart to confirm the saving. Run a tier panel to show the price ladder, and a summary badge to confirm which tier fired.

For more on what happens between a customer landing on a product page and completing a purchase, see the discussion in WooCommerce tiered pricing for different quantities, which covers how price information at the product-page level connects to what the customer sees at checkout.

When to use the summary badge

Alongside every other visual type as a cart-level confirmation. Especially valuable for discount types where the saving only becomes concrete once the qualifying condition is met — the summary badge is what the customer sees after they’ve done the thing that unlocks the deal.

BOGO panel: making the mechanic legible

A BOGO deal requires a specific customer action: add the qualifying quantity, and something else becomes free or discounted. If the customer doesn’t know the structure, the deal doesn’t influence their behaviour — they add one unit, check out, and your promotion either fires (and costs you margin without changing a decision) or doesn’t (and the campaign achieves nothing).

The BOGO panel communicates the mechanic directly on the product page. Three layout variants are available — pill group (compact inline pills), math (a centred, equation-style layout where the buy and get quantities sit either side of a separator icon), and card stack (side-by-side bordered cards). All show the buy quantity, the get quantity, and the discount, in plain visual terms.

The panel also renders at cart and checkout, which handles the follow-through: a customer who saw “Buy 2 get 1 free” on the product page gets confirmation in the cart that the deal applied, and can see whether they need to add another unit to trigger it.

The BOGO panel is free, which makes sense: BOGO is a free discount type in Smart Cycle Discounts. If you’re running a Buy One Get One or Buy X Get Y campaign, you have a matching visual available without upgrading.

For a full walkthrough of BOGO mechanics, margin math, and the same-product vs. cross-product distinction, see the complete WooCommerce BOGO setup guide.

A note on cross-product BOGO

Cross-product BOGO — buy product A, get product B discounted — involves two different product pages. The panel will render on each product page individually. Decide which product page is the primary entry point for the deal, and design the panel copy accordingly. A customer who sees “Buy this and get product B free” without knowing what B is may not follow through. If the “get” product is obscure, consider naming it explicitly in the panel label.

Tier panel: showing the full price ladder (Pro)

Tiered pricing is one of the most effective tools for increasing average order quantity — and one of the most consistently undersold. A generic “Sale!” badge on a product with tiered pricing tells the customer nothing. The mechanic is invisible. They buy what they planned to buy, the tier might fire, and the opportunity to nudge them up a bracket is lost entirely.

The tier panel puts the full price ladder in front of the customer while they’re still making their quantity decision. Four layout variants: pills (inline tier chips showing each break), cards (stacked tier cards with active-tier highlighting), compact table (a tight tabular grid), and rows (a vertical list). The active tier highlights automatically based on the quantity in the customer’s cart.

That last detail matters. A tier panel isn’t just a static price table — it’s responsive to what the customer has already done. If they have four units in their cart and the next tier unlocks at five, the panel can show them exactly how close they are. That proximity signal is what produces the “add one more” decision. Without the panel, the customer has no idea the next tier exists.

The tier panel requires a Pro licence because tiered pricing itself is a Pro discount type. If you’re running tiered volume pricing, the tier panel is the natural complement and it’s available to you.

Design the tier table for the customer’s real entry point

Don’t just display the tiers — think about which tier the typical customer will land in first, and make sure the next-tier nudge is obvious from that position. If most customers buy 2 or 3 units and your next break is at 5, the panel should make “add 2 more” feel achievable, not like a stretch. The compact table layout is good for quick scanning when you have 4+ tiers; the pills layout works better when you have 2–3 simple breaks.

Bundle panel: surfacing the bundle contents (Pro)

Bundle promotions are among the harder deals to communicate because the offer involves multiple products. Unlike a percentage off one item, a bundle deal requires the customer to understand what the set is, what’s included, and what the combined saving is.

The bundle panel renders the bundle contents as a visual group alongside the pricing information. Three layout variants: strip (a horizontal items row that wraps on overflow), carousel preview (horizontally scrollable thumbnails), and stack (a vertical item list with leading thumbnails). Product images are included, which is the key difference from a text-only description — showing the items rather than just naming them.

Where this matters most is on the product pages of bundle components. A customer browsing a coffee grinder doesn’t know it’s part of a bundle deal unless something tells them. The bundle panel, placed on that product page, reveals the deal and gives them a reason to look at the other components in the set.

Like the tier panel, the bundle panel is Pro — corresponding to the Pro bundle discount type.

Threshold bar: turning spend goals into progress (Pro)

A spend-threshold campaign is fundamentally different from every other discount type because the qualifying condition is dynamic. It’s not based on which product the customer is looking at, or how many units they’ve added — it’s based on their total cart value, which changes with every addition and removal. The visual for a spend-threshold campaign needs to reflect that dynamic state.

The threshold bar is a progress indicator that shows how close the customer is to unlocking the discount. It renders in the cart totals area and at checkout, and it updates as the cart changes. Three template styles are available: slim (a clean, narrow fill bar), pill bar (a rounded pill-shaped track), and stepped (a bar with tick marks at regular intervals along the track).

The bar carries two message fields: a pre-goal message (“Spend {remaining} more for {reward}”) and a post-goal message (“{reward} unlocked!”). Both accept dynamic tokens so the message stays accurate as the cart value changes — the pre-goal message updates in real time as the customer adds items.

This is where the mismatch between visual and mechanic is most costly. A spend-threshold campaign without a progress bar is a deal most customers will never take the behavioural step to reach, because they have no idea the target exists or how far away they are. The bar is not decorative — it’s the mechanism by which the promotion actually influences spending.

The invisible threshold

Imagine you’ve set up a “spend $75, get 15% off” campaign. A customer adds $61 of products to their cart and heads to checkout. Nothing in the cart tells them they’re $14 away from unlocking a discount. They check out. You pay the credit card fees, ship the order, and your campaign registered zero conversions. The threshold bar would have told them they needed $14 more and given them a reason to browse again. Without it, the promotion exists only in your settings — not in the customer’s experience.

Choosing the right visual for your campaign

The decision tree is simpler than it looks. Start with the discount type you’re running, and the right visual family follows from there.

For percentage-off and fixed-amount campaigns: the image badge handles product-page communication, and the summary badge handles cart confirmation. Neither is essential — your theme’s native badge will still appear — but both give you control over the visual language and let you replace the generic “Sale!” sticker with something more specific to your campaign.

For BOGO and Buy X Get Y campaigns: the BOGO panel is the right primary visual. The mechanic requires the customer to understand the deal structure before they make a quantity decision. Add a summary badge in the cart to confirm the saving once the condition fires.

For tiered pricing campaigns: the tier panel is the right primary visual. The goal is to make the price ladder visible while the customer is still deciding how many units to add. The compact table layout works for scannable multi-tier structures; the pills layout works for simpler two-tier breaks. See the tiered pricing setup guide for how to configure tiers that pair well with this visual.

For bundle campaigns: the bundle panel is the right primary visual. Focus on layouts that show product images (strip or carousel) when you want the contents of the bundle to do the selling.

For spend-threshold campaigns: the threshold bar is not optional in any meaningful sense. A spend-threshold promotion without a progress indicator is a promotion most customers will never engage with. Set the pre-goal and post-goal messages to make the target concrete (“Spend $19 more to save $11.25” is more persuasive than “almost there!”). For more on spend-threshold mechanics and how to set the right target, see the threshold targeting guide.

Can you attach multiple visuals to one campaign?

Yes. Each visual occupies a distinct surface slot: the image badge goes on product images, the summary badge goes in cart totals, and panels or the bar go in their designated storefront positions. You can attach one of each type to a single campaign without conflicts, which is how you build a complete storefront presence for a promotion — the product page explains the deal (panel), the product image signals it’s on (badge), and the cart confirms the saving (summary badge).

Should you always use a custom visual?

No. For simple percentage-off or fixed-amount campaigns running store-wide, your theme’s native “Sale!” badge may be entirely sufficient. Adding a custom image badge on top of the native one risks visual clutter, especially if multiple campaigns are active. The question is whether the deal structure requires customer explanation. If it does, build the visual. If a lower price is the whole message, the theme badge may be enough.

Native badge suppression

Smart Cycle Discounts includes a global “Hide Native Sale Badges” toggle in Display Settings. When enabled, it suppresses WooCommerce’s native “Sale!” badge on any product where an SCD badge is active for that campaign. This prevents double-badging on product images. If you’re using custom image badges, it’s worth enabling this setting so the theme’s badge doesn’t stack visually with your custom one.

Frequently asked questions

Do promotional visuals slow down my WooCommerce store?

Smart Cycle Discounts’ promotional visuals render through WooCommerce’s existing price filters — no additional frontend JavaScript runs per page, and no bulk price rewrites happen on campaign activation. Active campaign data is cached, and product data is batch-loaded. The storefront impact is the same as the discount engine itself, which was built with performance as a constraint.

Which visual types are available in the free version of Smart Cycle Discounts?

Three visual types are free: the image badge (product and shop-grid overlay), the summary badge (cart totals savings row), and the BOGO panel (product page and cart offer panel). These correspond to the free discount types: percentage off, fixed amount, and BOGO. The three Pro visuals — tier panel, bundle panel, and threshold bar — correspond to the Pro discount types: tiered pricing, bundle, and spend-threshold.

Where does the threshold bar appear on my store?

The threshold bar renders in the cart totals area and at the checkout order review, above the order total. It does not appear on product pages because it reflects cart state — the customer’s current spend and how far they are from the goal — which only exists once they have items in their cart. This is the correct placement: the bar shows up when the customer’s spending decision is already active.

Can I use a custom visual without a campaign-specific discount type?

The image badge and summary badge are universal — they can be attached to any campaign regardless of discount type, because they convey general sale information rather than mechanic-specific information. The panels (BOGO, tier, bundle) and the threshold bar are discount-type specific. Smart Cycle Discounts’ visual picker only surfaces compatible types when you assign a visual in the campaign wizard, so you won’t accidentally attach a tier panel to a BOGO campaign.

Do discounted products appear in WooCommerce’s native “On Sale” filter?

No. Smart Cycle Discounts applies discounts at display time through WooCommerce’s price filters, not by writing to the stored _sale_price database field. The native “Sale!” badge and strikethrough pricing appear on product and shop pages because WooCommerce derives its on-sale display state from the filtered price at render. But WooCommerce’s “On Sale” shortcode, block, and third-party sale filters (like FacetWP’s “On Sale” facet) read the stored field — they won’t pick up SCD campaign discounts. This limitation is shared by all runtime-filter-based discount plugins, not just Smart Cycle Discounts.

Can I design my own visual templates or am I limited to the built-in ones?

The designer lets you customise every visual fully — colours, typography, layout, and the text content including tokens. You can save your custom settings as a named recipe in the Visuals Library and reuse it across campaigns. This means you can have a “Summer Sale” image badge recipe and a “Black Friday” recipe saved separately, each with different styling, and assign whichever fits the current campaign.

Does the tier panel update automatically based on what’s in the cart?

Yes. The tier panel highlights the active tier based on the customer’s current cart quantity. If they have four units and the next tier fires at five, the panel shows the active tier and the next-tier nudge. This update is driven by the cart state at render time — the panel the customer sees reflects their actual cart, not a static preview.

Build the visual that matches your campaign

Image badges, summary badges, and BOGO panels are included in the free version of Smart Cycle Discounts. Tier panels, bundle panels, and the spend-threshold progress bar are available in Pro — alongside tiered pricing, bundle discounts, and spend-threshold campaign types. The Visuals Library and live designer are the same in both tiers.


Key Takeaways

  • A plain “Sale!” badge communicates one thing: the price is lower. It cannot communicate a tiered deal, a BOGO structure, or a spend-threshold challenge — which are the campaigns that require a customer behavioural step to earn their keep.
  • Smart Cycle Discounts includes six promotional visual types: image badge, summary badge, and BOGO panel (free); tier panel, bundle panel, and threshold bar (Pro). Each maps to a specific discount mechanic.
  • The image badge (free) is the right visual for percentage-off and fixed-amount campaigns where the discount fires automatically. Customisable shapes, colours, and label text replace the generic “Sale!” sticker.
  • The BOGO panel (free) makes the buy/get mechanic legible on the product page and cart — essential for any campaign that requires the customer to know they need to pair units or complete a set.
  • The tier panel (Pro) shows the full price ladder with active-tier highlighting based on cart quantity. Without it, customers have no visibility into the next tier, and the nudge to add more units is lost.
  • The threshold bar (Pro) is the mechanism by which a spend-threshold campaign actually influences behaviour. A threshold campaign without a progress bar is functionally invisible to most shoppers.
  • Universal visuals (image badge, summary badge) can layer with mechanic-specific visuals. A BOGO panel on the product page plus a summary badge in the cart totals gives the customer the deal at both the decision point and the confirmation point.

Webstepper

The Webstepper Team

WordPress Plugin Developers

We build WordPress tools for WooCommerce store owners. Smart Cycle Discounts and TrustLens both came from problems we ran into running stores ourselves.