Create or open a .docx file in Microsoft Word (or any editor that saves .docx) and type your placeholders anywhere in the body, headers, or footers using double curly braces, like {{name}}, {{degprog}}, or {{honor}}.
{{Name}} and {{name}} are treated the same.Click or drag your .docx file into the "Upload Word Template" box. Once uploaded, the tool scans the document and lists every placeholder it found under "Placeholders found."
honor column will automatically get a comma and space added after the degprog value before merging (e.g. "…Communication Arts" becomes "…Communication Arts, ").Create a spreadsheet where the first row contains column headers that match your placeholder names exactly (case doesn't matter). Each row after that represents one document to generate.
{{name}}, {{degprog}}, and {{honor}}, your spreadsheet needs columns named name, degprog, and honor.Click or drag your spreadsheet into the "Upload Excel Database" box. The tool reads every row and shows a preview on the right, along with the row and column counts.
Once a template and spreadsheet are uploaded and a file name column is selected, the "⬇ Generate & Download ZIP" button becomes active. Click it to merge every row into its own copy of the template.
This almost always means the browser ran out of memory holding every generated document at once before zipping — common with large datasets (hundreds of rows) or templates with big images. As of this version, output is automatically split into multiple smaller ZIPs (see "Documents per ZIP" in Step 3), which fixes this for most cases. If it still happens, lower that number — try 75 or 50 — and close other tabs to free up memory.
When a large dataset produces several ZIP files, Chrome sometimes pops up a permission prompt the first time it tries to download more than one file in a row. Click Allow (or "Allow multiple downloads") and the rest will continue automatically — you only need to do this once per site.
This tool loads a few small code libraries from a CDN when the page opens. If this message appears, your internet connection dropped, or something on your network (an ad blocker, browser extension, firewall, or corporate filtering policy) blocked one of those library files. Try reloading the page, temporarily disabling ad blockers for this site, or checking your network's filtering rules for the relevant CDN domains. A separate, harmless ERR_BLOCKED_BY_CLIENT message about a ".js.map" file can be ignored — that's just a debug file, not something the tool needs to run.
This means a {{placeholder}} in your template has no matching column header in your spreadsheet. Double-check spelling and underscores on both sides — placeholder names are case-insensitive but otherwise need to match exactly (e.g. {{degprog}} needs a column literally named degprog, not degree_program).
This means the tool found a stray {{ or }} without its pair, or the same placeholder appearing twice inside one paragraph (which can break merging). Open the template in Word, find the spot, and fix or remove the extra braces — Word's "Find" tool (Ctrl/Cmd+F) searching for {{ can help locate them quickly.
Pinned templates are saved in your browser's local storage on this device only — nothing is uploaded anywhere. Clearing your browser's site data/cache, using a different browser, or switching computers will not carry pinned templates over. Re-upload and re-pin the template on the new browser or device.
Use the contact form below — describe what you were doing, what you expected, and what happened instead (the exact error message helps a lot). It opens a draft in your email app, ready to send.
Found a bug, hit a confusing error, or want a feature added (new options, a different default, support for another template)? Fill this in and hit send — it opens a pre-filled draft in your email app so you can review and send it yourself.