Build an email template visually
The Email hub carries a visual Builder: a drag-and-drop editor that renders blocks into table-based, inline-styled HTML — the format that survives Gmail, Outlook, and Apple Mail. You design the template on screen; the platform handles compatibility markup. No HTML or MJML knowledge needed. This guide covers the dashboard editor. If you prefer managing templates over the API or pasting raw HTML, the email lifecycle guide covers that path — this page covers the visual one. You will:- Open the Builder tab
- Add and arrange blocks
- Personalize with variables
- Preview and send a test
- Import or export MJML and HTML
- Attach the template to a campaign
1. Open the Builder tab
- Open the Email hub under Messages → Email.
- Select the Builder tab. The screen is a three-panel editor: block palette on the left, canvas in the middle, and the selected block’s properties on the right.
2. Add and arrange blocks
- Click or drag a block from the palette into the canvas. New blocks land with sensible defaults (a header with your company name, a button with a “Click here” label) that you replace with your own content.
- Select a block on the canvas to open its properties panel, where you edit copy, image URLs, button links, and style fields such as background color and font size.
- Reorder blocks by dragging them in the canvas, or with the move up/down controls; the properties panel also offers delete.
- Start from an existing template instead of a blank canvas with Load Template, which opens your saved list (up to 50 entries, each shown with its block count and last edit time).
3. Personalize with variables
Type merge tags into text, header, or footer blocks; they render through to send time and are substituted per recipient. When a campaign sends the template, the tags resolve from the contact’s record. The standard contact fields are:
Campaigns can layer their own custom variables on top of these five. Two
rules to respect:
- Resolve every tag before send — an unresolved merge tag reaches the
recipient as the literal
{{...}}string. - Unsubscribe needs one tag — the footer block’s unsubscribe link
expects exactly
{{unsubscribe_url}}, which the personalization layer substitutes at send time. Keep the footer block (or its unsubscribe text) on every marketing template.
4. Preview and send a test
- Click Preview to render the blocks into the finished HTML document and inspect it in the canvas. Rename the template before previewing if you want a meaningful subject line in the rendered output.
- Type a recipient address into the test-recipient field and click Send Test. The button activates once the canvas has blocks and the address is valid; the editor prompts for whichever is missing.
- Check the proof inbox — click the links, load it on mobile, and confirm the personalization reads correctly against your own data.
5. Import and export MJML or HTML
The Builder also speaks MJML, the responsive-email markup format:- Import MJML opens a paste dialog. The source is transpiled into cross-client HTML and dropped into the same preview pane the Preview button uses. Non-fatal issues (unsupported components or structural gaps) list in the dialog while the best-effort render stays available, so you can fix the source and re-render.
- To export, click Preview and copy the fully rendered cross-client
HTML from the preview pane, or call
POST /api/v1/messages/email-builder/renderfrom tooling to get the document programmatically.
6. Attach the template to a campaign
- Click Save Template. Saved templates persist in your workspace and appear in the Load Template picker for anyone in the workspace to reuse.
- When you build the campaign, copy the template’s rendered HTML into the campaign content step — open Preview in the Builder and copy the finished document from the preview pane.
- To drive template selection programmatically instead, a campaign can
call
POST /api/v1/messages/email-builder/listat send time, render the chosen blocks throughPOST /api/v1/messages/email-builder/render, and submit the resulting HTML as its message content.
Next steps
- Email channel lifecycle — domain verification, warm-up, send patterns, suppression.
- Using Templates — the render/save/list API contract behind the Builder.
- Send a campaign end-to-end — attach your template, dry-run, launch, and measure.
- Email attachments — size caps and MIME rules for file-bearing sends.