Invoices & Billing

Professional Invoice Template for Google Docs (Mail Merge Ready)

A polished invoice layout with company branding, detailed line items, payment terms, and a notes section — built for agencies and studios that bill multiple clients at once. Copy it into a Google Doc, connect a Google Sheet, and generate a branded PDF invoice for every client in one click.

The template

Everything in {{double braces}} is a merge tag. Each tag matches a column header in your Google Sheet, and Batch Merge fills in the value from each row automatically — one finished invoice per row.

{{Company Logo}} {{Your Company Name}} {{Your Address}} {{Your Email}} ──────────────────────────────────────── INVOICE Invoice Number: {{Invoice Number}} Invoice Date: {{Invoice Date}} Due Date: {{Due Date}} Payment Terms: {{Payment Terms}} BILL TO {{Client Name}} {{Client Company}} {{Client Address}} ──────────────────────────────────────── SERVICES PROVIDED {{Line Items}} ──────────────────────────────────────── Subtotal: {{Subtotal}} Tax ({{Tax Rate}}): {{Tax}} TOTAL DUE: {{Total}} ──────────────────────────────────────── PAYMENT Payment is due {{Payment Terms}} from the invoice date. Please reference invoice {{Invoice Number}} with your payment. NOTES {{Notes}} Thank you for your business! {{Your Company Name}} · {{Your Email}}

Logo tip: images aren't merge tags — Batch Merge only replaces text. Insert your actual logo image directly into the Doc (Insert → Image, or drop it in the Doc's header) and delete the {{Company Logo}} tag, or keep the tag as a text brand line (e.g. "BRIGHTLINE STUDIO") filled from your sheet. Everything you don't tag — images, tables, fonts, colors — is preserved exactly in every generated invoice.

Set up your Google Sheet

Create one column per merge tag. Column headers must match the tag names exactly (they're case-sensitive). Each row becomes one invoice:

Company LogoYour Company NameYour AddressYour EmailInvoice NumberInvoice DateDue DatePayment TermsClient NameClient CompanyClient AddressLine ItemsSubtotalTax RateTaxTotalNotes
BRIGHTLINE STUDIOBrightline Studio LLC410 W 5th St, Austin, TX 78701billing@brightlinestudio.comINV-3107Jul 1, 2026Jul 31, 2026Net 30Dana WhitfieldAcme Design Co.12 Harbor Way, Portland, OR 97209Brand strategy workshop — $1,500 · Logo system — $2,200$3,700.008.25%$305.25$4,005.25Includes two revision rounds.
BRIGHTLINE STUDIOBrightline Studio LLC410 W 5th St, Austin, TX 78701billing@brightlinestudio.comINV-3108Jul 1, 2026Jul 16, 2026Net 15Marcus LeeNorthwind LLC88 King St, Seattle, WA 98104Website redesign — $4,800 · CMS setup — $950$5,750.008.25%$474.38$6,224.3850% deposit received May 15.

Tips: sender columns like Your Company Name hold the same value on every row — or type your details straight into the Doc and delete those tags. For Line Items, press Ctrl+Enter (⌘+Enter on Mac) to put each item on its own line inside the cell; Batch Merge preserves the line breaks. Use formulas for the math — e.g. Tax = =M2*0.0825 and Total = =M2+O2 — then format as currency. Batch Merge inserts the displayed value.

Generate one invoice per row

Copy the template into a Google Doc. Click Copy template above, paste into a new Doc, then brand it — drop in your logo image, set your fonts and colors, add a footer. Tags survive formatting.

Install Batch Merge free from the Google Workspace Marketplace, then open your sheet and choose Extensions → Batch Merge → Open Batch Merge.

Pick your template. Select the invoice Doc with the file picker. Batch Merge scans it and shows every tag as a pill — green when it matches a column header, amber when it doesn't. Fix any amber pills by renaming columns or tags.

Choose PDF output and run. Pick PDF (or DOCX / Google Doc), choose a Drive folder, and click Run. Batch Merge writes a status per row and a Merge Log so you always know what was generated.

On the free plan you get 25 merge runs per month — each run can process your whole sheet. Email delivery (send each branded invoice straight to your client), scheduling, and Google Slides templates are on Pro.

FAQ

How do I get my logo onto every invoice?

Insert the logo image directly into the Google Doc — ideally in the Doc's header so it sits above everything else. Images aren't merge tags, so Batch Merge leaves them untouched and reproduces them in every output. The {{Company Logo}} tag in this template is optional: keep it only if you want a text brand line (like a stylized company wordmark) filled in from the sheet, otherwise delete it.

How do I show multiple line items with amounts?

Two options. Keep the single Line Items column and put each item on its own line inside the cell (Ctrl+Enter / ⌘+Enter) — the line breaks carry through to the invoice. Or, for a formal itemized table, build a table in the Doc with tags like Item 1, Item 2, Amount 1, Amount 2 and matching columns — rows you leave blank in the sheet simply merge as empty.

Can each client have different payment terms?

Yes — that's exactly what the per-row Payment Terms column is for. One client can be Net 15 and the next Net 30 in the same run. Just make sure each row's Due Date agrees with its terms; a formula like =F2+30 (invoice date plus 30 days) keeps them in sync automatically.

Related templates

Generate every invoice in one click

Batch Merge is free to install — 25 merge runs per month, no credit card.

Install Batch Merge Free