Quaterio

Certificate PDF generation

Design certificate templates with custom fonts and decorative layouts. Generate personalized certificates at scale with variable replacement for names, dates and courses.

The problem

Generating certificates at scale usually means ugly mail-merge or expensive print shops. Most PDF tools can't handle decorative fonts, centered layouts or batch personalization without developer intervention.

The solution

Design your certificate once in the visual editor with any Google Font. Add variable placeholders for recipient name, date, course title and signature fields. Then generate hundreds via the batch API or one at a time through the GUI.

What you get

  • Custom Google Fonts for decorative typography
  • Variable placeholders for recipient name, date, course and more
  • Signature form fields (fillable in the exported PDF)
  • Batch generation — up to 1,000 certificates per API call
  • QR codes for certificate verification links
  • Any page size (A4, Letter, landscape or custom)
  • Print-ready export (CMYK, outlined fonts, trim marks)
  • Multi-language support for international programs
  • Clean download URLs for each certificate
  • Webhooks for generation events

Generate via API

curl -X POST https://quaterio.com/api/v1/generate/batch \ -H "Authorization: Bearer q_your_token" \ -d '{ "templateId": "course_completion", "rows": [ { "name": "Alice Johnson", "course": "Advanced React", "date": "2026-05-23" }, { "name": "Bob Smith", "course": "Advanced React", "date": "2026-05-23" }, { "name": "Carol Davis", "course": "Advanced React", "date": "2026-05-23" } ], "concurrency": 10 }'

Available on Business plan and above.

What certificate generation actually involves

Certificates look simple until you need to ship 500 of them, get them to print without color shifts, or let recipients verify they are real. Here is what each part actually requires.

Custom fonts and decorative typography

Certificates lean heavily on display fonts: script faces for "Certificate of Completion" headings, serif body fonts for formal recognition language. Quaterio ships with 26 Google Fonts spanning sans serif, serif, monospace, display and handwriting styles, covering most certificate needs (Playfair Display, Dancing Script, Caveat, Pacifico for ornamental work). If you need a Google Font that is not in the picker yet, ask and we add it. Uploading a non Google Fonts brand font file is on the roadmap.

For print runs, fonts get outlined to curves at export so the recipient does not need the font installed. This also avoids substitution at the print shop. Outlining is on by default for the Business plan's print ready export.

Print quality, paper stock and color matching

Web RGB and print CMYK render colors differently. A deep navy on screen may look washed out when printed. The Business plan adds CMYK color conversion via Ghostscript post processing, so what your designer sees on screen is closer to what comes off the press.

Trim marks at the four corners (configurable bleed, default 3mm) let print shops trim certificates to size cleanly. For premium finishes (gold foil, embossing, letterpress) coordinate with the printer up front about which elements should be outlined or set as separate spot color plates.

Batch generation for cohorts and bulk awards

For a graduating class, training cohort or conference attendee list, the batch API generates up to 1000 certificates in a single call on Enterprise (100 on Business). Pass a CSV with recipient name, course title and date per row, and each row produces a personalized PDF.

Concurrency is configurable (default 5, max 20 per call). Larger batches take longer; runtime scales roughly linearly with row count once you saturate concurrency. Each PDF gets a unique URL for individual distribution.

Recipient name handling and special characters

Long names auto wrap to a second line without breaking the centered layout. For names with diacritics (José, Müller, Žižek) or non Latin scripts (中文, العربية), the certificate renders correctly as long as your selected font has the glyphs. Google Fonts like Noto Serif and Noto Sans cover most scripts.

For batch generated certificates from CSV data, watch for character encoding. UTF 8 is the standard input. Names with apostrophes ("O'Brien") render correctly without HTML escaping warnings.

QR codes for verification and digital credentials

The Advanced Certificate template includes a QR code that links to a verification URL. The QR code can encode a unique verification token per certificate, pointing to a page on your site that confirms the certificate is real and unrevoked.

For more advanced credentialing (Open Badges, blockchain verified credentials, LinkedIn importable credentials), the PDF is the human readable companion to the structured credential, not the credential itself. Tools like Credly or Accredible specialize in the credential side; Quaterio handles the visual artifact.

Logo, seal and signature placement

Organization logos use the 9 point background grid (top, center or bottom by left, center or right). For traditional certificate layouts, a centered top header logo and centered footer seal both work well. Both configurable in the template editor.

Signature blocks at the bottom can hold either pre drawn signature images (PNG with transparent background) or fillable form fields for live signing. For digitally signed certificates that need legal recognition, integrate a dedicated e-signature platform like Documenso or DocuSign. Quaterio renders the certificate PDF; the e-sign platform handles the audit trail. Native e-signature integration is on the Quaterio roadmap.

Multi language certificates from a single template

For international training programs that issue certificates in the recipient's language, the language is a template variable. Pass `lang: "fr"` and the template renders all static text (titles, "Awarded on", "In recognition of") in French while the recipient specific data stays the same.

Right to left scripts (Arabic, Hebrew) need the text alignment to flip. Handle this in the template logic by passing `dir: "rtl"` and styling accordingly. For mixed direction content (English course name in an Arabic certificate), Unicode bidirectional rendering handles it automatically.

Continuing education credits and regulatory recognition

Continuing education certificates (CME for doctors, CLE for lawyers, CPE for accountants) typically need to display the accrediting body, credit hours, and a unique certificate ID. Each is a template variable. Your training platform tracks the credit hours and accreditation, Quaterio renders the PDF.

For audit grade record keeping required by accreditation bodies, keep both the issuance record (in your database: recipient ID, certificate ID, date, credit hours) and the generated PDF (in your storage). Quaterio is not a learning record store.

Reissue, revocation and archival

A reissued certificate (recipient lost the original, name correction, employer requested a duplicate) should keep the same certificate ID and issue date. Just regenerate the PDF with the same variables. The certificate ID becomes the audit trail anchor.

Revocation (rare but matters for accreditation programs and badge systems) lives in your credentialing database, not in the PDF. The PDF cannot retroactively change. For revocable credentials, the QR verification URL is the authoritative source: it can return "revoked" even after the PDF was issued.

Just need a single certificate?

Start with the free certificate template →

Ready to try it?

Start for free. No credit card required.