certs-project/ ├── templates/ │ ├── diploma.png │ ├── certificate-of-completion.png │ └── award.png ├── fonts/ │ ├── Roboto-Regular.ttf │ ├── Roboto-Bold.ttf │ └── OpenSans-Light.ttf ├── data/ │ ├── employees.csv │ ├── courses.csv │ └── archive/ │ └── 2024-q1.csv ├── output/ │ ├── certificates/ │ ├── archive/ │ └── failed/ └── README.txt
Templates
Include year or version number
Vague names make tracking difficult
CSV Files
Include date and dataset type
Too generic, hard to identify
Fonts
Include weight and style
Difficult to distinguish font variants
Headers
- • Always include headers in the first row
- • Use lowercase with underscores (name, email_address, course_name)
- • Avoid special characters and spaces
- • Keep header names short and descriptive
Data Entries
- • No empty rows between data entries
- • Consistent data types per column
- • Remove leading/trailing whitespace
- • Use UTF-8 encoding for special characters
Delimiters
- • Use comma (,) as the delimiter
- • If data contains commas, wrap fields in quotes
- • Example: "Smith, John",john@example.com
Resolution
Use at least 2400 × 1600 px for high-quality printing. 300 DPI recommended.
Color Space
Use sRGB for web, CMYK for print. Always include transparency when needed.
Text Areas
Leave clear spaces (at least 10% margin) for text placement. Avoid text over complex backgrounds.
Fonts
Use standard fonts (Roboto, Arial, Open Sans). Ensure all font files are included in your fonts directory.
Inconsistent Column Order
If you reorder columns in your CSV, the batch processor may map data to wrong fields. Always maintain the same column order.
Missing Font Files
If a font file is referenced but not included in the fonts/ directory, batch generation will fail or use fallback fonts.
Empty Rows in CSV
Blank rows confuse the parser. Remove all empty rows before processing. Use our Debug CSV tool to find them automatically.
Template Path Mismatches
If your template is at templates/awards/diploma.png but you reference it as templates/diploma.png, processing will fail.
Duplicate Entries
Duplicate rows in your CSV will generate duplicate certificates, wasting time and storage. Check for duplicates before processing.