Widgets

A circular progress bar for your email.

Put a goal ring beside the numbers it represents. Pass current and target values in the image URL, or connect a public JSON source for the current value. DynaMail renders the available value on an image request; email clients may reuse a cached image.

Circular course progress ring showing seven of twelve lessons completed

A real render produced by DynaMail’s image pipeline.

Create a free account

Free while in beta · No credit card required

How it works

Every DynaMail widget is a plain image URL. Design it in the dashboard, then paste the URL into an <img> tag — or your email editor’s image block — like this:

Example embed snippet

<img src="https://img.dynamail.io/widgets/YOUR-WIDGET-ID/render.png?current=7&target=12" width="320" height="288" alt="" />

YOUR-WIDGET-ID is a placeholder — every widget you create gets its own id. The file extension requests the output format — gif, apng, webp, or png. Depending on the design, an animated widget may be served in an animated format even when a static extension is requested.

DynaMail renders when the image is requested and briefly caches the result. Email clients and their image proxies can also cache images, so a later open may reuse a previous response. No script, no custom HTML, nothing for your email platform to strip out.

What it’s for

  • Course completion — show lessons finished against the total
  • Loyalty progress — show points toward a reward
  • Fundraising — show contributions against a campaign goal

Personalize it in the URL

The data behind the widget — its values, chart points, and text placeholders — can come from the URL. Append query parameters, or your email platform’s merge tags, and each recipient’s open renders from their own data.

?current=…The completed amount; a URL value takes precedence over a connected or pushed value
?target=…The goal the ring fills toward (required)

Frequently asked questions

How do I add a circular progress bar to email?

Design a radial progress widget in DynaMail, then paste its image URL into an <img> tag. Set current and target in the URL to render the ring.

Can the ring show a new value later?

Yes. You can pass a current value in the URL, push one through the live-value API, or connect a public JSON source. A later image request can render a new value, although email clients may reuse an earlier image.

Can each recipient see their own progress?

Use your email platform’s merge tags for current and target in the image URL. Each distinct request renders from those values; client caching can affect later opens.

Does the ring work in Outlook?

Yes — the widget is a standard image, so it displays wherever images do. The URL extension requests the format (render.gif, render.png, render.webp, render.apng); depending on the design, an animated widget may be served in a compatible animated format even when a static extension is requested. Classic Outlook for Windows shows the first frame of an animated fill, so choose a design without fill animation for that audience.