Widgets

Show where the total goes.

Connect a numeric JSON array or ordered columns from one CSV row. DynaMail computes the total and renders each share with its label and value when the image is requested. Email clients may cache images.

Monthly spending donut with a computed total and four labeled category values

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" width="340" height="398" 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

  • Monthly spending summaries
  • Storage and plan capacity
  • Two to six category breakdowns

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.

?data=…A numeric JSON array in saved label order, for example [64,12,24]. Values must be nonnegative and match the label count.

Frequently asked questions

Where does the data come from?

Use saved segment values, a connected JSON array, ordered columns from one CSV row, or a data URL override. URL values take precedence.

Can readers see every value?

Yes. A permanent legend gives each category a label and value. The centre total is calculated from those same values.

Does it update after sending?

Later image requests can use fresh source data after the refresh window expires. Email clients and proxies may cache an earlier image.