Free, open source

Product badges with no layout shift

Marks adds badges to WooCommerce products. Automatic badges appear on their own based on each product's state - Sale, New, Low stock and Bestseller - and you can attach one manual badge to individual products. Rendering is CSS-only, with no JavaScript, so badges never reflow the page.

Open source GPLv2
Open source, GPL licensed No account, no card CSS-only, no JavaScript and no CLS

Works with

WooCommerceGutenbergStorefrontAstraGeneratePressKadence

Badges should not break the store layout

A store wants to highlight sales and new arrivals, but script-loaded badges often shift product images and make a consistent look across listings and the product page harder.

  • Script-loaded badges that shift the layout (CLS)
  • Marking sales and new arrivals by hand, product by product
  • No simple threshold for a low-stock badge
  • Inconsistent badge look across the shop listing and the product page

Marks shows badges with no layout shift

  • Automatic Sale, New, Low stock and Bestseller badges based on product state
  • CSS-only rendering with no JavaScript - no Cumulative Layout Shift
  • A configurable low-stock threshold and newness window
  • Badges on the product page and on shop and category listings

What you get in the free version

Everything you need to highlight products without hurting performance.

Automatic badges

Sale, New, Low stock and Bestseller appear on their own based on product state.

Low-stock threshold

The Low stock badge shows when the remaining quantity drops to the configured threshold.

Manual badge

A single manual badge per product with a label and colour, driven by product meta.

CSS-only, no JavaScript

Badges render with plain CSS over the product image, with no layout shift.

Listing and product page

Badges show on the product page and on shop and category listings.

Toggles and HPOS

A global toggle, per-rule toggles and compatibility with HPOS and the cart blocks.

One sale label

Optional hide of the default WooCommerce sale flash when the Marks Sale badge is enabled.

Up and running in three steps

Enable badges and verify on a shop listing.

01

Install

Activate Marks alongside WooCommerce.

02

Choose badges

In the Marks menu, enable badges and choose which automatic badges to show.

03

Set threshold and label

Set the low-stock threshold and the manual badge label and colour.

Who it is for

When you want to highlight promos and new arrivals without adding JavaScript to every product grid.

Sales and seasonal drops

Automatic Sale badges plus a manual “Last chance” label on selected SKUs.

  • Sale from WooCommerce
  • Manual badge per product
  • CSS only

Stores with dense product grids

Badges on listings and product pages without shifting images — important for CLS.

  • No JavaScript
  • Bestseller and New
  • Low-stock threshold

Merchandising teams

Per-rule toggles and a simple stock threshold instead of hand-tagging hundreds of products.

  • Marks admin screen
  • 30-day newness window
  • Docs in EN and Polish

Need campaigns and rules? Marks PRO

FREE covers automatic and manual CSS badges. PRO adds scheduled campaign badges, conditional rules, image badges and A/B label sets.

  • Scheduled campaign badges — shipped in PRO
  • Conditional rules and image badges — shipped in PRO
  • A/B label sets with impression counts — shipped in PRO

Support and resources

Every plugin has its own documentation with setup walkthroughs. Bugs and questions go to the public GitHub repository for that plugin — we answer in the open.

Frequently asked questions

Does it require WooCommerce?

Yes. The plugin works with WooCommerce products.

When does the New badge show?

On products created within the newness window - 30 days by default.

When does the Low stock badge show?

On stock-managed products whose remaining quantity is at or below the configured low-stock threshold.

How do I add a manual badge to a product?

Set the manual badge label and colour on the Marks settings screen, then set the product meta _marks_manual_text (and optionally _marks_manual_style) on the products that should display it.

Will badges shift the layout?

No. Badges render with plain CSS over the product image, so they never cause Cumulative Layout Shift.

Does Marks pair with Peek and Reel?

Yes. Peek adds quick view on shop listings without leaving the grid; Reel upgrades the product gallery on the product page. All three are from wppoland.com and avoid jQuery on product grids.

Highlight products with no performance cost

Automatic and manual badges, CSS-only rendering, no layout shift. The full FREE edition under GPL.

Read the docs

FREE covers automatic and manual badges — PRO is for scheduled campaign rules.