Sheet to PDF
Blog · Tutorial

How to mail merge in Google Docs (2026 guide)

Updated May 2026

Mail merge has been a Microsoft Word + Outlook ritual for 30 years. If you're already in the Google ecosystem, doing the same workflow there is faster, cheaper, and easier to share with teammates. Here's the modern guide.

What is mail merge?

Mail merge takes a template (a document with placeholders like {{Name}}) and a data source (a list of values per recipient), and produces one personalized document per row. Common use cases:

Why Google Docs instead of Word?

Step 1: Install Sheet to PDF

Google Docs doesn't have a built-in mail merge feature (still, in 2026). You need an add-on. Sheet to PDF is free, installs in 10 seconds, and gives you 10 PDFs/month without a credit card. Install walkthrough.

Step 2: Build your template

Create a new Google Doc. Write your content with {{PlaceholderName}} wherever you want a value from your spreadsheet to appear:

Dear {{ClientName}},

This is your invoice #{{InvoiceNumber}} for {{Amount}} {{Currency}}, due {{DueDate}}.

Thank you,
Your team

Style it however you want — Sheet to PDF preserves all formatting (fonts, colors, images, tables, headers/footers).

💡 Tip: prebuilt templates for invoices, certificates, NDAs, and offer letters are available in the Sheet to PDF sidebar. Free users get 3 templates.

Step 3: Prepare your sheet

Open a Google Sheet. Row 1 = headers matching your placeholders. Each row below = one document.

| ClientName | InvoiceNumber | Amount | Currency | DueDate    |
| Acme       | 1001          | 1250   | EUR      | 2026-06-30 |
| Globex     | 1002          | 890    | EUR      | 2026-06-30 |

Headers are case-sensitive — {{ClientName}} won't match a header named client_name.

Step 4: Generate

In your Sheet: Extensions → Sheet to PDF → Open sidebar. Pick your template, click Generate. You get one PDF per row in seconds.

Free plan: PDFs download to your computer. Paid plans: PDFs save to a Drive folder you choose, with a "PDF link" column auto-added to your sheet.

Advanced: conditional logic

What if some rows need a discount line and others don't? Use a smart template (Starter+):

Subtotal: {{Subtotal}}
{% if Discount > 0 %}Discount: -{{Discount}}{% endif %}
Total: {{Total}}

If Discount = 0, the line disappears. One template handles all variations. See the smart templates guide.

Advanced: bulk email

Want each PDF emailed to the recipient automatically? Add an Email column to your sheet. In the sidebar (Pro plan and up), toggle "Email each PDF" and pick the column. Each PDF gets sent to the matching email address as an attachment. Setup guide.

How much does this cost?

Frequently asked

Can I use this with Excel instead of Google Sheets?

Not directly — Sheet to PDF reads from Google Sheets. You can paste your Excel data into a Google Sheet first, or use Google Sheets' Excel import feature.

Does it work offline?

No. Google's add-ons require a connection to Google services.

What's the difference between Sheet to PDF and Autocrat?

See our Sheet to PDF vs Autocrat comparison.

Can it handle 10,000 rows?

Yes, on the Pro+ plan or higher. The Apps Script time limit means each click processes up to 100 rows — for larger batches you click multiple times. We're working on background queuing for Premium.