LearnDash certificates are a powerful motivational tool that reward students with a downloadable PDF upon course completion. When everything works correctly, students see a celebratory message and can download their certificate immediately. However, sometimes the certificate never generates at all, leaving students confused and disappointed after investing time in completing the course.
This problem can be particularly damaging for training businesses and educational institutions where certificates are the primary proof of completion. Students expect tangible recognition for their work, and when certificates fail to generate, they may question the legitimacy of the entire platform. The issue may affect all courses or only specific ones, and it may appear suddenly after a plugin update.
The most common cause of this problem is a conflict with a translation plugin like WPML or TranslatePress. Research has shown that Sensei LMS and LearnDash certificates often fail when WPML is active, and a similar pattern exists with LearnDash [citation:5][citation:10]. Another cause is that the PDF generation library on the server is missing required PHP extensions, or that the certificate template was deleted or corrupted.
Why LearnDash certificates fail to generate
LearnDash uses the WordPress Media Library to store certificate PDFs and generates them dynamically based on student data. When a student completes a course, LearnDash triggers the certificate generation function, which creates a PDF using the selected template and fills in the student’s name, course title, completion date, and other dynamic fields. If any part of this process fails, no certificate will be generated.
Translation plugins are a known source of conflicts with certificate generation. When WPML or TranslatePress is active, they may alter the URL structure or the way course completion data is stored, causing LearnDash to lose the connection between the student and the course. In many reported cases, disabling the translation plugin temporarily resolved the certificate issue, confirming that the conflict was plugin-related [citation:5][citation:10].
Another common cause is that the server is missing the PHP extensions required for PDF generation. LearnDash relies on libraries like GD or Imagick to create PDFs, and if these are not installed or properly configured, the generation process will fail silently. Checking the server’s PHP configuration and ensuring that all required extensions are active is an essential diagnostic step.
How to test if translation plugin is causing the certificate issue
Temporarily deactivate all translation plugins (WPML, TranslatePress, Polylang) on a staging copy of the website. Complete a test course as a student and check if the certificate generates correctly. If the certificate works with translation plugins disabled, the conflict is confirmed. You can then either keep translation plugins disabled for certificate pages or contact the translation plugin developer for a compatibility fix.
Step by step guide to fixing LearnDash certificate problems
Follow these steps in order to restore certificate generation in LearnDash. Start with the simplest solutions before moving to more advanced troubleshooting steps.
- Check that a certificate template is assigned to the course (LearnDash → Courses → Edit Course → Certificate Settings)
- Verify that the certificate template exists in the Media Library and is not corrupted
- Test if the issue occurs on a default WordPress theme with all plugins except LearnDash deactivated
- Check that the server has GD or Imagick PHP extensions installed for PDF generation
- Disable translation plugins temporarily to test if they cause the conflict
- Ensure that the student’s email address is valid and that LearnDash can send the certificate email
- Check the PHP error logs for any fatal errors related to PDF generation
- Update LearnDash to the latest version available from the official website
- Reassign the certificate template to the course (remove and add it again)
- Contact LearnDash support with specific details about which courses are affected
How to regenerate certificates for existing students
If certificates were not generated for past students, you can manually regenerate them using the LearnDash reporting add-on or a custom script. Install the LearnDash Reporting for Courses add-on, navigate to the course completion report, and select the option to generate certificates for completed students. For one-off cases, you can manually award a certificate from the user’s profile by editing their course completion data and triggering the certificate generation.
LearnDash certificate troubleshooting reference table
Here is a reference table for diagnosing certificate problems in LearnDash based on specific symptoms you might encounter.
| Symptom | Most likely cause | Recommended solution | Certificate never generates, no error message | Translation plugin conflict or missing PHP extension | Disable translation plugins and check server extensions | Certificate generates but PDF is corrupted or blank | PDF generation library issue or corrupted template | Recreate the certificate template and check server PDF support | Certificate works on some courses but not others | Certificate template not assigned to affected courses | Check course certificate settings and reassign template | Certificate email never arrives | Email delivery issue with LearnDash notifications | Configure SMTP for LearnDash email notifications |
|---|