How it works
Paste your email template with {{variable}} placeholders in Step 1, then paste your contact list CSV in Step 2. Click Preview emails and the tool renders the first 20 merged emails exactly as recipients would see them, with any issues flagged inline.
Paste your template
Use {{variable_name}} placeholders anywhere in the subject or body.
No variables detected yet. Add placeholders like {{first_name}} to your template.
Paste your contact list
Paste CSV or spreadsheet rows. Include a header row so the tool can match columns to variables.
Column headers should match your template variables. For example, a column named first_name fills in {{first_name}}. Headers are matched case-insensitively.
0 detected rows
Preview merged emails
See the first 20 emails exactly as they will be sent, with issues flagged inline.
Paste a template and contact list to get started.
Fill in Steps 1 and 2, then click Preview emails.
What it flags
The tool catches the mistakes that turn a polished cold email sequence into an embarrassing send.
- Empty values — a contact row where a cell is blank, producing "Hi ," or "Quick idea for ,"
- Placeholder values — cells containing N/A, undefined, null, or similar stand-ins
- Broken variables — template placeholders that look like typos close to a real column header, such as {{frist_name}} when first_name exists
- Variables missing from CSV — placeholders in the template with no matching column anywhere in the contact list
- Unused CSV columns — columns in the contact list that are never referenced in the template
- Duplicate suffixes — company names that repeat a suffix after a mail merge, like "Acme Inc. Inc."
What it does not do
It does not send emails, validate deliverability, enrich contacts, or check whether an email address exists. It only previews what will be merged from the template and contact list you provide.
Privacy
The preview runs locally in your browser. Your template and contact list are never uploaded to any server.