Home › Text Tools › Mail Merge Text Generator

Mail Merge Text Generator

Write one message with placeholders like {first_name}, paste a spreadsheet as CSV, and get a personalized copy for every row. Preview each message, then copy them all or download a TXT, a ZIP of separate files, or a CSV with a new message column.

Last updated:

Use {column} or {column|fallback}
Options
3. Preview
0 / 0

ZIP = one .txt file per row. CSV = your data plus a "message" column, ready for an email or SMS tool.

Show all messages
Advertisement
Advertisement

How to use the Mail Merge Text Generator

  1. Write your template and put column names in curly braces, for example Hi {first_name}. Add a fallback after a pipe: {first_name|there}.
  2. Paste your data as CSV with a header row, or open or drop a .csv file exported from Excel or Google Sheets.
  3. Check the preview and step through rows with the arrows. Fix any warning about missing columns or empty values.
  4. Choose the output: copy all messages, download one TXT, a ZIP with a file per row, or a CSV with a message column.
  5. Send them with your email, SMS or chat tool, or paste the CSV into a bulk-sending service.

Placeholder syntax

You writeRow dataResult
Hi {first_name},first_name = AnaHi Ana,
Hi {{First Name}},first_name = AnaHi Ana,
Hi {first_name|there},first_name is emptyHi there,
Ticket {row} of the batchthird data rowTicket 3 of the batch
Sent on {today}any rowSent on today's date in your local format
Total: ${amount}amount = 59.90Total: $59.90

Preparing your CSV

  • Keep the first row for column names. Short names without punctuation, such as first_name, email or due_date, are easiest to type in a template.
  • Format numbers and dates in the spreadsheet first. The merge copies values exactly as they appear in the CSV, so 59.9 stays 59.9. Format the column as currency or text before exporting if you need 59.90.
  • Remove rows you do not want to send. Empty rows are skipped automatically; other rows each produce one message.
  • Name your ZIP files with placeholders. A pattern like {row}-{last_name} gives files such as 01-lopez.txt. Duplicate names get a number added.

Good uses for a text mail merge

Personalized follow-up emails after an event, payment or appointment reminders, thank-you notes to customers, certificates and award texts, class or team announcements with each person's own details, and SMS messages for a bulk texting service. Because the output is plain text, it can be pasted anywhere, and the CSV export keeps each message next to the recipient's email or phone number so other tools can send it.

Frequently asked questions

What is a mail merge?

A mail merge combines one template with a list of recipients to produce a personalized copy for each person. Fields such as the name, order number or amount are stored in a spreadsheet, and each placeholder in the template is replaced with the value from the matching column of each row.

How do I write placeholders?

Put the column name in curly braces: {first_name}. Double braces {{first_name}} work too. Matching ignores upper and lower case and treats spaces, dashes and underscores the same, so {First Name} finds a column called first_name.

What happens if a cell is empty?

If you add a fallback after a pipe, such as {first_name|there}, the fallback is used. Otherwise you choose what happens: leave a blank, keep the original {placeholder}, or show [MISSING: name] so the gap is easy to spot. The tool also warns you how many messages contain empty values.

How do I get my data from Excel or Google Sheets?

In Excel use File, Save As, CSV UTF-8. In Google Sheets use File, Download, Comma-separated values. You can also select the cells, copy them and paste them into the data box: tab-separated data from a spreadsheet is detected automatically.

Can I use commas or line breaks inside a value?

Yes. Put the value in double quotes, as spreadsheet programs do when they export CSV, for example "Desk lamp, brass". A double quote inside a quoted value is written as two double quotes.

Does it send the emails?

No. The tool creates the text only, so it never needs access to your email account. Copy each message into your mail program, or download the CSV with the new message column and import it into an email or SMS service that supports bulk sending.

Is my contact list private?

Yes. The CSV is parsed and merged in your browser and is never uploaded. The template and data are remembered in your browser's local storage so you can come back to them; use Clear to remove the data.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

Find and Replace TextFind and replace words or regex patterns in any text, with match highlighting and undo.CSV ViewerOpen a CSV or TSV file as a sortable, filterable table.CSV to JSONConvert CSV data to JSON with live preview.Text RepeaterRepeat any text or emoji up to 100,000 times with custom separators.Excel to VCF ConverterTurn an Excel contact list into a vCard .vcf file for iPhone, Android, Google or Outlook.Jinja2 Template TesterRender Jinja2 templates with YAML or JSON variables using real Jinja2, with clear error lines.Fancy Text GeneratorTurn text into cool Unicode fonts for bios.Reverse Text GeneratorWrite text backwards, reverse words or lines, mirror or flip it upside down.Upside Down Text GeneratorFlip text upside down with Unicode characters, or turn it back to normal.Emoji CounterCount every emoji in your text, including flags, skin tones and ZWJ sequences.Small Text GeneratorTurn text into tiny superscript, subscript and small caps letters you can copy and paste.Zalgo Text GeneratorMake creepy glitch text with separate up, middle and down sliders, or clean zalgo back to normal.Invisible CharacterCopy blank and invisible characters (ㅤ U+3164, U+2800, zero width space) for names and messages.Emoji PickerSearch 1,900+ emoji by name, pick skin tones and copy and paste them with one click.Special CharactersCopy and paste 1,500+ symbols: arrows, math, currency, stars, checkmarks, © ® ™ and more.Word UnscramblerUnscramble letters into every possible word, with blank tiles, length filters and Scrabble scores.Braille TranslatorTranslate English text to Grade 1 Unicode braille and back, with dot numbers and printing.ASCII Art GeneratorTurn text into big ASCII banners or convert any image into ASCII art you can copy.Bold Text GeneratorConvert text to bold Unicode letters you can copy and paste anywhere.Italic Text GeneratorConvert text to italic Unicode letters you can copy and paste anywhere.Cursive Text GeneratorConvert text to cursive Unicode letters you can copy and paste anywhere.Strikethrough Text GeneratorConvert text to strikethrough Unicode letters you can copy and paste anywhere.Underline Text GeneratorConvert text to underlined Unicode letters you can copy and paste anywhere.Bubble Text GeneratorConvert text to bubble Unicode letters you can copy and paste anywhere.Wide Text GeneratorConvert text to wide Unicode letters you can copy and paste anywhere.Old English Text GeneratorConvert text to Old English Unicode letters you can copy and paste anywhere.Superscript GeneratorConvert text to superscript Unicode letters you can copy and paste anywhere.Subscript GeneratorConvert text to subscript Unicode letters you can copy and paste anywhere.Remove Special CharactersStrip symbols, emoji and odd characters, keeping only letters, numbers, spaces and what you allow.Emoji TranslatorTranslate text to emoji: words like love, pizza and dog become ❤️ 🍕 🐶, with a density slider.Monospace Text GeneratorTurn text into 𝚖𝚘𝚗𝚘𝚜𝚙𝚊𝚌𝚎 typewriter-style Unicode letters to copy and paste.Aesthetic Text GeneratorMake aesthetic text with vaporwave letters, sparkles, hearts and frames to copy.Emoji Letters GeneratorTurn words into 🇭 🇪 🇱 🇱 🇴 regional indicator, 🅰️ block and keycap 1️⃣ emoji letters.Discord Colored Text GeneratorColor, bold and underline text for Discord with ANSI code blocks and a live preview.Discord Font GeneratorFancy fonts for Discord names and bios, plus ready-made Discord markdown formatting.Remove Emojis from TextStrip every emoji, flag, skin tone and ZWJ sequence from text, with a count of what was removed.Fill in the Blank GeneratorTurn any text into a printable fill-in-the-blank worksheet with word bank and answer key.Instagram Font GeneratorMake bold, cursive and aesthetic fonts for your Instagram bio, name and captions.Mirror Text GeneratorCreate mirrored and reflected text with Unicode look-alike letters (ɘ, ꓘ, Я) and copy it.Shrug EmoticonCopy ¯\_(ツ)_/¯ in one click, plus Discord, Reddit and Markdown-safe versions and 30 shrug variants.Vertical Text GeneratorTurn text into vertical columns, one character per line, to copy into posts, bios and chats.Arrow SymbolsCopy and paste 600+ arrow symbols → ⇒ ➜ ↑ ↻ by direction and style, with Alt and HTML codes.Fraction SymbolsCopy fraction symbols ½ ¼ ¾ ⅓ ⅛ or build any fraction like ¹⁵⁄₁₆ with superscript digits.Heart SymbolsCopy and paste heart symbols ♥ ❤ ♡ ❥ 💕 and decorative hearts with Alt, Unicode and HTML codes.Star SymbolsCopy and paste star symbols ★ ☆ ✦ ✩ ✪ ⭐ ✨ and asterisms with Unicode, Alt and HTML codes.Unicode NormalizerNormalize text to NFC, NFD, NFKC or NFKD and see exactly which code points changed.Bullet Point SymbolsCopy and paste bullet symbols • ◦ ▪ ➤ ✓ ‣ for lists and resumes, plus a bulleted list maker.Copyright and Trademark SymbolsCopy © ® ™ ℠ ℗ with Alt and HTML codes, when to use each, and a copyright notice maker.Currency SymbolsCopy and paste $ € £ ¥ ₹ ₿ and 80+ world currency signs with ISO codes and Alt codes.Em Dash Copy and PasteCopy the em dash —, en dash – and every hyphen or minus sign, with when to use each.Emoji CipherTurn secret messages into emoji with a shared key, then decode them back to text.Text Border GeneratorWrap text in a copyable ASCII or Unicode box: single, double, rounded, heavy, stars and more.Text Divider GeneratorCopy aesthetic Unicode line dividers like ─── ⋆⋅☆⋅⋆ ─── or build your own symmetric divider.Text Pixel Width CalculatorMeasure how many pixels wide text renders in any font and size, and check it against a limit.Stylish Name GeneratorDecorate your name with ꧁ ꧂, ★彡, 亗 and other symbols for games and profiles.Tattoo Font GeneratorPreview a word or name in gothic, script and other tattoo-style fonts to copy.Alt Codes ListSearchable Windows Alt code chart (Alt+0176 °, Alt+0169 ©) with Mac shortcuts and one-click copy.Check Mark SymbolCopy and paste check marks and ballot boxes ✓ ✔ ☑ ✅ ☐ ✗ with Alt, Unicode and HTML codes.Degree SymbolCopy the degree sign ° (and °C, °F) in one click, with Alt code and how to type it anywhere.Kaomoji Copy and Paste2,000+ Japanese kaomoji text faces by emotion and animal. Search and copy with one click.LaTeX Equation EditorWrite LaTeX math with a symbol palette and live preview; export PNG, SVG or MathML for Word.Lenny Face GeneratorBuild your own ( ͡° ͜ʖ ͡°) by picking ears, eyes and mouth, or copy 60+ ready-made Lenny faces.Math Symbols Copy and PasteCopy math symbols like ∑ √ ∞ ≤ ∫ π ∈ with their Unicode, HTML entity and LaTeX command.Copy and Paste Text ArtCute one-line and multi-line text art (animals, hearts, faces, borders) to search and copy.Emoji MeaningsLook up what an emoji means: meaning, slang use, Unicode name, version and related emojis.Fancy Text to Normal Text ConverterTurn bold, cursive, bubble, small caps, fullwidth and zalgo Unicode text back into plain text.
See all 61 Fonts, Symbols & Emoji →