HTML Email Countdown Timer Generator

The HTML for an email countdown timer is a single img tag. Here is the exact snippet DynaPictures generates, what each attribute does, and why scripts and CSS animation are the wrong tool.
HTML Email Countdown Timer Generator

Why an Email Countdown Timer Is an img Tag

Email Clients Block Scripts

JavaScript never runs in email, and most clients strip CSS animations, so a code-based timer fails silently for many readers.

Images Load Everywhere

A GIF in an img tag renders in every client that shows images, which is why every serious email timer is an image.

The URL Carries the Logic

Deadline, personalization, and analytics parameters travel in the image URL, not in code inside the email.

Rendering Happens on the Server

DynaPictures renders the GIF when the client requests it, so the number is current without any client-side code.

The HTML DynaPictures Generates

The Snippet

The Snippet

The Share tab gives you an img tag with src set to https://dynapictures.com/emails/timers/{uid}.gif?expire=DD-MM-YYYY--HH-MM, an alt attribute with your fallback text, width and height matching the design, and style display:block;border:0 so it sits flush in the layout.

Attributes That Matter

Attributes That Matter

Set width and height so the layout does not jump while the image loads. Keep alt text descriptive, because readers with images off see it. Replace the expire value with a merge tag from your email service provider (ESP) for per-recipient deadlines, and add campaign= or any custom parameter for analytics.

Wrapping It in a Link

Wrapping It in a Link

Wrap the img in an anchor tag pointing at your landing page. The link is fixed at send, so choose a page that works before and after the deadline; the image itself switches stages on its own.

Everything in Every DynaPictures Timer

A GIF in a Standard img Tag

No JavaScript, no HTML5 animation, no client-side script. The image loads in Gmail, Apple Mail, Outlook, and mobile clients; Outlook for Windows shows the first frame.

Rendered per Open, Cached per Minute

Each open fetches an image with the exact time left at that moment. Images are cached for one minute per deadline and then regenerated, and each one animates for 60 seconds.

The expire Parameter

Append ?expire=DD-MM-YYYY--HH-MM (interpreted in the timer's timezone) or an ISO 8601 timestamp with an offset to the URL. Merge tags from your email service provider (ESP) fill it per recipient.

Stages by Offset

Each timer holds several designs, each with an offset from the target. Before, at, and after stages are selected on every render.

Every Open Logged

Email client, country, locale, and any custom query parameter are stored per open. Raw IP addresses are never kept, only a hash and the derived location.

Countdown-Driven Gauges

Radial tick gauges, simple gauges, and line progress bars take their value from the remaining time, next to or instead of digits.

REST API

Create, update, publish, preview, and read analytics for timers programmatically with an API key.

Plan Limits, Stated Plainly

Timers run up to 30 days ahead on Free, Lite, and Standard and without limit on Pro. Free serves 100 opens in total; paid plans have a monthly view allowance and no hard cap.

How to Set Up a DynaPictures Countdown Timer

palette

Design It in the Generator

Open the DynaPictures countdown timer generator, set the target date and timezone, design one or more stages, and publish. You get a URL ending in .gif.

link

Embed the URL

Place the URL in an img tag or an image block in your email service provider (ESP). Append ?expire= with a merge tag for per-recipient deadlines.

bar_chart

Read the Analytics

Add any custom query parameter to segment opens, then watch them arrive in the analytics dashboard or pull them through the API.

Who Needs the HTML Countdown Snippet

Developers hand-coding templates

Placing the img tag in MJML, Handlebars, or Liquid templates.

Email designers

Fitting the timer into a table-based layout.

Teams sending through an API

Injecting the deadline into the URL at send time.

See the Timer Render Live

Book a short walkthrough of the generator, the expire parameter, stages, and the analytics dashboard.

Where DynaPictures Differs From Other Timer Tools

Rendered at Open

Many timer services generate one GIF at send time. DynaPictures generates per open, so the number on screen matches the clock.

Per-Recipient Deadlines

One URL, a different deadline per recipient through the expire parameter. Many tools support one date per timer.

Multi-Stage Designs

Before, at, and after designs switched automatically. Many tools show one design and a zeroed clock.

Gauges and Progress Bars

Remaining time as a gauge or bar, not only digits. Elsewhere, digits are usually the only option.

A Real Design Editor

Google Fonts, uploaded fonts, images, and an AI background generator. A fixed layout with a color picker is the common alternative.

Segmentable Analytics

Opens by custom parameter, client, country, and hour. A single total is what many tools offer.

Frequently Asked Questions

A single img tag whose src is the timer URL from DynaPictures, for example an img with src https://dynapictures.com/emails/timers/{uid}.gif?expire=31-12-2026--23-59, an alt attribute, width and height, and style display:block;border:0. No script is involved.