ActiveCampaign is one of the few platforms that took countdowns seriously enough to build a block. Drag Timer into the Email Designer, set an end date, time and time zone, pick a size and font, and you have a countdown. You can even upload an expired-timer image to swap in once the deadline passes. For a single broadcast counting to one shared moment, that is genuinely all an ActiveCampaign countdown timer needs to be, and reaching for a second tool would be silly.

The block has two hard limits, though, and they matter more in ActiveCampaign than elsewhere because so much of what people send is automated. It counts to one date for every contact, and it cannot read that date from the contact. ActiveCampaign’s own block documentation also warns that the time zone you set “will not necessarily reflect the contact’s local time”. This guide covers the cases the block leaves out, with an Alterable countdown timer in the HTML block.

When the built-in Timer isn’t enough

Three situations, roughly in order of how often they come up:

  • Automations with no shared deadline. A trial-expiry or cart-recovery automation sends to each contact on a different day. One fixed date is wrong for almost everyone in it. An evergreen timer starts each contact’s window when the email is sent instead.
  • The deadline lives on the contact. A renewal date, a quote expiry, a booking window. A query parameter timer reads it from a field, so every contact counts to their own date.
  • The same clock in more than one place. The Alterable timer is an image URL. It works in ActiveCampaign, in a transactional email from elsewhere, and on a landing page, all showing the same time left.

If none of those apply, use the Timer block and stop reading.

Step 1: Create the timer in Alterable

  1. Open the Alterable countdown timer page and pick a starting point: one of the templates, or Start from scratch.

  2. Choose Time after opening for the automation case or A date in the link for a deadline held on the contact. A date is there too, though for a fixed date the built-in block is the simpler choice.

  3. Set the duration or deadline and its timezone, then match the fonts and colours to your template.

  4. Click Create and copy the embed: a link wrapped around an image. Before you copy it, choose ActiveCampaign under Email platform, and Alterable writes ActiveCampaign’s merge tags into it for you.

Step 2: Add the countdown timer to your ActiveCampaign email

  1. In the Email Designer, open the Blocks menu and scroll to HTML.

  2. Drag it into the layout where the countdown should sit.

  3. Click the block to open the code editor and paste the Alterable embed.

  4. Save. The timer shows in the design as an image.

The Email Designer is available in both Campaigns and Automations, so the same steps apply to an automation email. ActiveCampaign strips script, iframe, form and a few other tags from the HTML block, none of which a timer uses. On the older Classic Designer, the equivalent is the HTML content block, which opens a modal for the code.

Per-contact deadlines with ActiveCampaign personalization tags

An evergreen timer starts each contact’s window on the day ActiveCampaign sends them the email, and keeps it across opens. The image URL carries two ActiveCampaign tags: %TODAY%, the send date, and %SUBSCRIBERID%, the contact ID, which tells contacts apart and keeps the email address out of the URL:

<img src="https://next.alterable.com/countdown-timers/YOUR-TIMER-ID.png?d=%TODAY%&uid=%SUBSCRIBERID%" />

Choosing ActiveCampaign under Email platform in Alterable’s embed dialog adds both for you. %TODAY% is a date with no time of day, so the window counts from the start of the send day, not from the minute of the send.

A query parameter timer takes the deadline itself, as an ISO date such as 2026-10-01T18:00:00Z. The offset travels with the date, so 2026-10-01T00:00:00-07:00 is midnight Pacific for that contact, which is the only honest way to give each reader a deadline in their own time zone. ActiveCampaign’s date fields can’t produce that: they store a date without a time, and the only modifiers its personalization tags accept change capitalization, not format. The clean route is a custom text field, say Offer End, which ActiveCampaign exposes as %OFFEREND%, filled by an automation or by the system that owns the deadline:

<img src="https://next.alterable.com/countdown-timers/YOUR-TIMER-ID.png?date=%OFFEREND%" />

date is the timer’s Parameter name in Alterable, which is the default. If you rename it, use your name in place of date. You don’t have to write the parameter by hand, either: for a timer like this the embed dialog has an End date box, and pasting the field’s merge tag there puts it in the code for you.

Give the field a default value. A contact with the field empty otherwise gets an empty parameter, and a timer with no deadline has nothing to draw.

Previewing an ActiveCampaign countdown timer

ActiveCampaign says plainly that some personalization tags won’t work in test emails, because there’s no contact behind a test. So a URL containing %SUBSCRIBERID% or %OFFEREND% can arrive with the tag still in it. Use the desktop preview for a specific contact, or send the campaign to a short test list, and the tag resolves. A standard timer has no tag in it and renders fine in any test.

One nice consequence of open-time rendering: when the deadline passes, the timer holds at zero, or shows the message or image you chose in Alterable as its expiry placeholder. There’s no expired-timer image to upload into every campaign, because the timer itself already knows it has ended.

Check it in a real inbox

Send a real test to your own address and open it. The timer should show the time left to your deadline, and a later open should show less. If the image comes through broken, check that every merge tag in its URL was filled in for that send.

Buy MoreTo: jane@example.com

Your weekend deal ends soon

Top Deals ›   Clearance ›
TVs   Computers & Tablets   Cell Phones
Countdown timer

Weekend deal ends in

Example: 2 days, 14 hours and 36 minutes left.
What a subscriber sees: a recreation of the timer this guide sets up. Yours takes your fonts and colours, and is redrawn at every open.