Education

Free Certificate of Completion Template for Google Docs

An elegant certificate template for courses, workshops, and training programs. Copy it into a Google Doc, connect a Google Sheet with your roster, and generate a personalized PDF certificate for every recipient in one click — teachers use this to produce a whole class's certificates from one roster sheet in a single run.

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 certificate per row.

CERTIFICATE OF COMPLETION {{Organization Name}} ──────────────────────────────────────── This certificate is proudly presented to {{Recipient Name}} in recognition of the successful completion of {{Course Name}} comprising {{Course Hours}} hours of instruction and all required coursework. Awarded on {{Completion Date}} ──────────────────────────────────────── _________________________ {{Instructor}} {{Instructor Title}} {{Organization Name}} Certificate ID: {{Certificate ID}} This certificate confirms that the recipient named above has met all requirements of the program. To verify this certificate, contact {{Organization Name}} and reference the Certificate ID.

Shortcut: a ready-made certificate ships inside the add-on. In Google Sheets, open Extensions → Batch Merge → Open Batch Merge and pick Certificate from the built-in template library — it creates the Doc and a sample sheet for you. There's also a designed Google Slides version for Pro users.

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 certificate — so a 28-student roster produces 28 certificates in a single run:

Recipient NameCourse NameCompletion DateInstructorInstructor TitleCertificate IDOrganization NameCourse Hours
Ava MitchellIntroduction to Coding with ScratchJun 12, 2026Karen Alvarez5th Grade TeacherCERT-2026-014Lincoln Elementary School12
Jordan LeeFirst Aid & CPR BasicsJun 15, 2026Daniel OkaforLead InstructorCERT-2026-015Brightpath Training Center8

Tip: generate unique certificate IDs with a Sheets formula — e.g. ="CERT-2026-"&TEXT(ROW()-1,"000") in the Certificate ID column — and fill values like Course Name and Instructor down the whole roster since they're usually the same for every student.

Generate one certificate per student

Copy the template into a Google Doc. Click Copy template above, paste into a new Doc, and style it — a landscape page, a border, your school seal or logo, a script font for the recipient name. Tags survive formatting.

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

Pick your template. Select the certificate 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 which certificates were generated.

On the free plan you get 25 merge runs per month — each run can process your whole roster, so one run covers an entire class. Email delivery (send each certificate straight to a {{Recipient Email}} column), scheduling, and Google Slides certificate templates are on Pro.

FAQ

Can I generate certificates for a whole class at once?

Yes — that's the point. Put every student on one roster sheet, one row each, and a single merge run produces one certificate per row. A class of 30 takes one click, not 30 copy-paste sessions.

Can I make the certificate landscape with a decorative border?

Yes. In your Google Doc, set File → Page setup → Landscape, then add a border image, your school seal, and any fonts you like. Batch Merge only replaces the {{tags}} — the design is preserved in every output. Pro users can also use a designed Google Slides certificate, which gives even more layout control.

How should I create the certificate IDs?

Any text works, so a simple Sheets formula is easiest: ="CERT-2026-"&TEXT(ROW()-1,"000") produces CERT-2026-001, CERT-2026-002, and so on down the roster. Unique IDs make individual certificates verifiable later.

Related templates

Generate every certificate in one click

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

Install Batch Merge Free