Free tool
Merge Field Validator
Personalisation fails silently. Every sequencer will happily send Hi comma to four hundred people.
Catch broken merge fields before you send
Recognises {{field}}, {field} and [[field]], plus fallbacks written as {{first_name | there}}. Column names are matched loosely, so first_name finds a column called First Name.
Drop a CSV to get started
Or choose a file from your computer. Everything is processed in this tab, so nothing is uploaded and no account is needed.
The error nobody catches until it is sent
A missing merge field does not throw an error, break a send or show up in a report. It renders as nothing and goes out, and the first you hear about it is a reply asking who Hi is. Because the failure is invisible to the tooling, the only way to catch it is to render every row before the campaign starts, which nobody does by hand on a list of four thousand.
Empty is only the obvious case
A blank first name is easy to imagine. The ones that get through are subtler: a company field exported as ALL CAPS, a city holding the literal text N/A, a role field containing a full sentence that turns your opening line into a paragraph, or a URL where a name should be. All of them render, and all of them read as a mailing list.
Fallbacks are a fix, if you use them
Most sequencers accept a default value, written as first_name pipe there. A field with a fallback is not a defect, so it is not flagged. A field without one is a row that sends a gap, which is the distinction this checks.
The whole field can be missing
The worst case is not a row, it is a column. A token that matches no column in your CSV renders empty on every single row. That is caught first, because one wrong header name breaks the entire campaign rather than a handful of records.
Frequently asked questions
Checking personalisation before a campaign goes out
Find your next customer.
Point ManyPI at it and get leads, APIs, and answers on autopilot. Free to start, no credit card, no sales call.
