Klaviyo email preview and QA
Klaviyo previews the builder's output. This previews what Outlook, Gmail and Apple Mail will actually do with it.
Verified end to end on a live campaign, 2026-08-31: the web view link from a sent email, on manage.kmail-lists.com, returns the real HTML directly. 39KB, 70 tables, 7 images, fetched in 2.3 seconds with no browser needed, and rendered across all 21 clients.
Setting it up
- 1
Get the campaign's browser link
Most ESPs put a view-in-browser link in the email itself, and that page is the HTML that was actually sent. Send yourself a test, open it, and copy that link. How each platform produces one differs, so see the note below.
On Klaviyo: Use the link from a SENT email, not one copied out of the Klaviyo dashboard. The delivered link lives on manage.kmail-lists.com and serves the real HTML. A klaviyo.com/campaign/.../web-view address is an app page: measured 2026-08-31, fetching it returns a 2KB JavaScript shell, and rendering it in a browser returns Klaviyo's login screen, because that URL needs your session.
{% web_view %}Klaviyo only generates that page on a real campaign or flow send, so a preview test yields a placeholder. The link is also personalised per recipient. We refuse a login page or an empty shell rather than scoring it, because a confident result for a page containing no email looks exactly like a real one.
Klaviyo: message personalization reference - 2
Paste it into Emailens
Open New Preview and paste the link into Import from your ESP. We fetch the page and check it across 21 clients, with dark mode, accessibility, size and merge-tag detection.
- 3
Gate the send, if it is automated
POST the same link to /api/gate and get one boolean back. Put it in front of a send in Zapier or CI and a campaign that regressed never goes out. Pro plan.
Unreplaced merge tags
Klaviyo templates are Liquid, which on the wire is the same {{ ... }} shape as Handlebars, so the engine flags an unresolved one the same way. A tag left unresolved ships to the recipient literally, in body text and in href, src and alt attributes, where it is hardest to spot in review.
{{ first_name }}reported asHandlebars/MustacheWorth knowing
- Dark mode is where Klaviyo campaigns most often break, and it is the one thing a builder preview cannot show you.
- A Liquid tag that resolves to an empty string is invisible in the builder and obvious in the inbox.
Before you send
A preview tells you what is wrong. The pre-send gate answers one boolean, so a Klaviyo campaign that regressed against the last version you approved never goes out. Put it behind a Zapier filter or a CI step.
Check a Klaviyo campaign
21 clients, dark mode, and merge-tag detection. Free tier, no credit card.
Get Started Free