A sale countdown with no layout shift
Ticker adds a live countdown to the end of a sale on WooCommerce product pages that turns hesitation into a buy decision. It can also show a low-stock scarcity message. The end time is resolved on the server and counted down in the browser in plain JavaScript, with reserved space, so there is no layout shift.
Works with
Without time pressure, shoppers put off buying
A shopper sees a good price but has no reason to decide now. Without a visible sale deadline the purchase lands on a someday list, and often never comes back.
- ✗ The sale is on, but shoppers cannot see when it ends
- ✗ No time pressure lowers conversion
- ✗ Countdown timers with heavy JavaScript slow the store down
- ✗ Many timers shift the layout and hurt Core Web Vitals
Ticker shows how long is left in the sale
- ✓ A live countdown to a product's sale end date or a global campaign
- ✓ The end time comes from the server, so the visitor's clock cannot change it
- ✓ An optional low-stock scarcity message
- ✓ Server-rendered with reserved space, so no layout shift
What you get in the free version
Everything you need to add time pressure without slowing the store.
Sale countdown
A live countdown to a product's native WooCommerce sale end date.
Global campaign
One store-wide end date; the product sale date is used when present, with the campaign as a fallback.
Low-stock scarcity
An optional "Only N left in stock" message with a configurable threshold for products that track inventory.
Placement choice
Show the timer in the product summary, before/after the add-to-cart form, or the product meta area.
Three formats
Days:hours:minutes:seconds, hours:minutes:seconds, or compact.
Custom copy
An optional heading and a customisable message shown after the sale expires.
Graceful states
Nothing renders with no sale and no low stock; a friendly expired message replaces the clock when the sale ends.
Accessible, no jQuery
ARIA role=timer with a polite live region, plain JavaScript and server-rendered markup, so no layout shift.
Up and running in three steps
Enable the countdown and set a sale end date.
Install
Activate Ticker alongside WooCommerce.
Enable the countdown
In WooCommerce → Ticker enable the timer and pick the source, placement and format.
Set a deadline
Set a product sale end date or a global campaign date — the countdown appears on the product page.
Who it is for
When a sale has a real deadline and time pressure should lift conversion.
Time-limited sales
Ticker reads native product sale dates — set an end and the countdown appears on its own.
- ✓ Native sale dates
- ✓ Choice of format
- ✓ No layout shift
Store campaigns
One deadline for the whole store, such as Black Friday, with a global campaign date.
- ✓ Global date
- ✓ Expired message
- ✓ Server time
Low stock
A subtle scarcity message for products whose inventory is running low.
- ✓ Configurable threshold
- ✓ Stock-tracking only
- ✓ Accessible and light
Need more? Ticker PRO
FREE covers sale and global campaign countdowns and the low-stock message. Ticker Pro will add scheduled campaign windows via the ticker/end_timestamp filter, multiple campaigns and analytics.
- ✓ Scheduled campaign windows via the ticker/end_timestamp filter (planned)
- ✓ Multiple named campaigns with their own deadlines (planned)
- ✓ Countdown view and conversion analytics (planned)
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 Ticker require WooCommerce?
Yes. Ticker is a WooCommerce extension and requires WooCommerce 8.0 or later.
Where does the countdown end time come from?
By default, Ticker reads each product's native WooCommerce sale date field. You can instead count down to a single store-wide campaign date, or mix both — a product sale date when present, with the global campaign date as a fallback.
Does the timer cause layout shift?
No. The countdown markup is rendered on the server with space reserved, so the browser fills in the numbers without shifting the page (good for CLS).
Is the timer accurate if the visitor's clock is wrong?
The end moment is provided by the server as a fixed timestamp. The browser only formats the remaining time, so a misconfigured visitor clock cannot change the actual end time.
How does the scarcity message work?
For products that manage stock, when the remaining quantity is at or below your threshold (default 5), Ticker shows "Only N left in stock!". Products that do not track stock never show it.
What happens when the sale ends?
The clock is replaced with a friendly expired message, which you can customise.
Does Ticker use jQuery?
No. The countdown runs in plain, dependency-free JavaScript.
Does Ticker pair with Anchor and Notice?
Yes. Anchor keeps the buy button within reach, Notice announces a promotion at the top of the store, and Ticker adds time pressure on the product page.
Add time pressure to your sales
A live countdown from native sale dates or a global campaign, an optional low-stock message and no layout shift. The full FREE edition under GPL.
Read the docsFREE is a complete sale countdown and low-stock message — PRO will add scheduled campaign windows and analytics (planned).