Boneyard Tools

Mail Merge Tool: Fill a Template From a List

Write a message once with {{placeholder}} tokens, paste a CSV or TSV list of recipients, and get a personalized copy for every row. Nothing leaves your browser.

How to mail merge text from a list

  1. Write your template and mark variable spots with {{placeholder}} tokens.
  2. Paste your data as CSV or TSV; the first row supplies the column names.
  3. Generate the merged messages, then copy each one or download them all.

Examples

Personalize a shipping note

Template: Hi {{name}}, order {{id}} shipped. Data: Alice,123
Hi Alice, order 123 shipped.

Frequently asked questions

How do placeholders work?

Wrap a column name in double braces, like {{name}}, anywhere in your template. Single braces, like {name}, also work. Each token is replaced with the matching value from the current data row. Spaces inside the braces, such as {{ name }}, are fine.

What format should my data be in?

Paste comma-separated (CSV) or tab-separated (TSV) text. The first row is the header and its cells become the placeholder names. Every following row produces one merged message.

What happens if a placeholder has no matching column?

By default the unknown token is removed and leaves a blank. You can switch to a visible [missing: name] marker to catch gaps, or keep the original token so you can fix the data and re-run.

Is my data private?

Yes. The merge runs entirely client-side in your browser using JavaScript. Your template and recipient list are never uploaded to a server.

Can I export the results?

Yes. Copy any single message with one click, copy all of them at once, or download every merged message as a text file with clear separators between entries.

Does this send emails?

No. It only fills your template and produces the personalized text. Paste the results into your email client, SMS tool, or document wherever you need them.

Related tools