What You’ll Build
By the end of this guide, you will have an automation that:- Generates individual PDF certificates for each row in a Google Sheet
- Personalizes each certificate with the recipient’s name, date, and other details
- Stores PDF links back in the spreadsheet
- Supports batch generation for processing hundreds of certificates at once
Prerequisites
- A DocsAutomator account (sign up here)
- A Google account (for both the template and spreadsheet)
Step-by-Step Setup
Create the Google Doc Template
Design a certificate template in Google Docs. Use placeholders for dynamic content:
| Placeholder | Purpose | Example Value |
|---|---|---|
{{recipient_name}} | Certificate recipient | Jane Smith |
{{course_name}} | Course or event name | Advanced Data Analysis |
{{completion_date}} | Date of completion | January 15, 2025 |
{{certificate_id}} | Unique certificate number | CERT-2025-001 |
{{instructor_name}} | Instructor or issuer | Dr. John Doe |
{{image_signature}} | Instructor signature image | (signature image URL) |
{{image_logo}} | Organization logo | (logo image URL) |
Prepare Your Google Sheet
Create a spreadsheet with a header row and one row per certificate recipient:
| Recipient Name | Course Name | Completion Date | Certificate ID | Instructor | Signature URL | Logo URL | PDF Link |
|---|---|---|---|---|---|---|---|
| Jane Smith | Advanced Data Analysis | January 15, 2025 | CERT-2025-001 | Dr. John Doe | https://… | https://… | |
| Bob Johnson | Advanced Data Analysis | January 15, 2025 | CERT-2025-002 | Dr. John Doe | https://… | https://… |
The PDF Link column should be left empty — DocsAutomator will populate it with the generated PDF URL.
Create the Automation in DocsAutomator
- Click + New Automation in your DocsAutomator dashboard
- Name it something like “Course Certificates”
- Select Google Sheets as the data source
- Connect your Google account if not already connected
Configure the Template
Select your Google Doc certificate template. DocsAutomator will detect all
{{placeholder}} tags in the document.Select Your Spreadsheet and Configure Columns
- Choose your Google Spreadsheet from the list
- Select the Primary Sheet containing your certificate data
- Configure key columns:
- Primary Column: The column that uniquely identifies each row (e.g., Certificate ID)
- Document Name Column: Determines the generated file name (e.g., Certificate ID or Recipient Name)
- PDF Link Column: Where the generated PDF URL will be stored (e.g., PDF Link)
Map Placeholders to Columns
Connect each template placeholder to a spreadsheet column:
{{recipient_name}}to “Recipient Name”{{course_name}}to “Course Name”{{completion_date}}to “Completion Date”{{certificate_id}}to “Certificate ID”{{instructor_name}}to “Instructor”{{image_signature}}to “Signature URL”{{image_logo}}to “Logo URL”
Use the AI Field Mapping button to auto-suggest mappings based on placeholder and column names.
Generate a Preview
Select a row from the preview panel and generate a test certificate. Verify that:
- The recipient name displays correctly
- Images (logo, signature) render at the right size
- Date formatting matches your requirements
- The overall layout looks professional
Configure Output Actions
- PDF Link: Already configured to write back to your spreadsheet
- Save to Google Drive (optional): Select a Drive folder to store all generated certificate PDFs
- Send Email (optional): Enable to automatically email each certificate to the recipient
Batch Processing Tips
Processing large batches
Processing large batches
The queue system handles rate limiting automatically. For batches of hundreds or thousands of certificates, the Apps Script method is recommended because it processes rows sequentially and tracks progress in the sheet.
Monitoring progress
Monitoring progress
As each certificate is generated, the PDF link is written back to the sheet. You can monitor progress by watching the PDF Link column fill in. Check the Run History in DocsAutomator for detailed logs.
Handling errors
Handling errors
If a row fails to generate, the PDF Link column will remain empty for that row. Check the Run History for error details, fix the data, and regenerate just the failed rows.
Next Steps
Dynamic Images
Add recipient photos or custom graphics
Send Email
Email certificates to recipients automatically
Save PDFs to Drive
Archive all certificates in Google Drive
PDF Expiration
Configure storage duration for generated PDFs