Most of these guides open the same way: the platform has no countdown block, so here is how to paste one in. MailerLite is the exception. It ships a timer, it sits in the editor next to everything else, and for a lot of campaigns it is the right answer. So this guide starts by telling you when not to bother with anything else.
Open a draft in the Drag & drop editor, find the Special tab in the left sidebar, and drag the Countdown block into your layout. Click it, then set the date and time in the right-hand panel. That is the whole job. MailerLite’s own countdown timer article covers it in about six sentences, which tells you how little there is to it.
If your campaign has one deadline and everyone on the list is racing the same clock, stop reading. You are done.
Where the MailerLite countdown block stops
Three things, and they all come from the same design decision: the block stores a date, not a rule.
It counts to one moment for your entire list. You specify the date and time you want to count down to, and every subscriber sees the same remaining time. That is exactly what you want for a product launch or a Black Friday cutoff. It is not what you want for a welcome sequence where each person should get their own 48 hours.
It uses your account time zone, not the reader’s. MailerLite is explicit about this: the timer calculates expiry from the time zone under Account settings, then Company details. So a deadline you think of as “midnight” is midnight where you are. A subscriber eight hours behind you watches it hit zero in the afternoon, which is a strange thing to experience in a sale email.
It has no per-subscriber deadline. There is no way to point the block at a custom field and have it read a different date for each person. The date lives on the block.
I have watched teams work around that first limitation by cloning a campaign four times, one per region, each with its own timer date. It works. It also means four campaigns to edit when merchandising changes the offer, and I have never seen all four get updated.
Step 1: Create the timer in Alterable
1. Open the Alterable countdown timer page.
2. Pick a type. Standard counts to one date for everyone, the same job the MailerLite block does. Evergreen gives each subscriber their own window, starting at their first open. Query param reads the deadline out of the image URL, which is how a per-subscriber date gets in.
3. Set the deadline and its time zone, then match the fonts and colours to your template.
4. Decide what happens at zero. You can leave the timer holding at 00:00:00, or set an expiry placeholder: a line of text, or an image of your own, that takes the timer’s place on every open after the deadline. That includes emails already sitting in someone’s inbox, which is the part worth having. MailerLite’s article does not say what its block does at zero, so test that before you rely on it.
5. Click Create and copy the embed. It is a link wrapped around an image.
Step 2: Add the countdown timer to your MailerLite email
1. In MailerLite, open your draft campaign in the Drag & drop editor.
2. Drag a Code block into the layout where the timer should sit.
3. Paste the Alterable embed into it and save.
MailerLite rules out JavaScript in that block, along with embed, frame, iframe, form, input, object and textarea tags. The embed uses none of them. An image inside a link is about as plain as email HTML gets, which is the whole reason this approach survives in clients that break everything else.
Per-subscriber deadlines with MailerLite personalization
This is the case the built-in block cannot reach, and it is worth the extra few minutes.
An evergreen timer needs to recognise who is opening so it can start that person’s clock and keep it. MailerLite’s personalization syntax is {$field}, and the email field identifies a subscriber well enough:
<img src="https://next.alterable.com/countdown-timers/YOUR-TIMER-ID.png?uid={$email}" />
A query param 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 subscriber. No timer can detect a reader’s time zone from an image request, so storing it in the deadline is how you get one that follows the reader. Create the field first: go to Subscribers, open the Fields tab, and click Create field. MailerLite offers text, number and date types. A date field holds a date, and what you need here is a full timestamp, so a text field holding the whole ISO string is the route that does not surprise you later:
<img src="https://next.alterable.com/countdown-timers/YOUR-TIMER-ID.png?d={$offer_end}" />
Use the field name exactly as it appears on the Fields tab. A near-miss does not error, it just arrives empty, and an empty deadline is a timer that never draws.
Which one should you actually use
Use the MailerLite block when the deadline is one moment, shared by everyone, and close enough that time zones do not embarrass you. It is built in, it is free, and there is nothing to maintain.
Reach for an Alterable timer when the clock belongs to the subscriber rather than the campaign: an evergreen window in an onboarding flow, a renewal date that differs per account, a deadline set in a time zone other than your account’s, or carried per subscriber with its own offset, or an expired state you control instead of guess at.
Both are GIFs, and both stop counting in Outlook 2007, 2010 and 2013, where MailerLite notes the timer appears as a static image. That is those clients, not the tool. Whichever you pick, put the date in text near the image too, so the deadline survives an unloaded image.