What Are Templates?
Templates are saved email messages without campaign-specific configuration: Templates Include:- Complete MIME message structure
- Email headers (can be trimmed to RFC-only)
- HTML and plain text body content
- Embedded images and attachments
- String substitution placeholders
- SMTP server configuration
- Authentication credentials
- Phishing link URLs
- Target lists
- Campaign scheduling
- Reuse effective email designs across multiple campaigns
- Maintain a library of tested phishing emails
- Speed up campaign creation workflow
- Share templates between operators
Creating Templates
From Captured Email
1
Capture Email
Navigate to “Create Campaign” and capture an email from Outlook
2
Edit Email
Modify content, add string substitutions, trim headers
3
Save as Template
Click “Save as Template” button
4
Name Template
Enter a descriptive template name
5
Confirmation
Template is saved and available for future use
Template Naming
Use clear, descriptive names that indicate:- Scenario or pretext
- Target platform or service
- Template version or variant
Office365_Password_Expire_v1VPN_Account_LockoutHR_Benefits_SurveyIT_Security_UpdatePayroll_W2_Request
template1testemail
Viewing Templates
List All Templates
Templates are displayed in the “Create Campaign” page:- Navigate to “Create Campaign”
- View template dropdown list
- Select template to preview or load
Database Query
Access templates directly from database:Using Templates
Create Campaign from Template
1
Navigate to Create Campaign
From admin interface, click “Create Campaign”
2
Select Template
Choose template from the dropdown list
3
Load Template
Click “Campaign from Template” button
4
Configure Settings
Email content is loaded. Add SMTP settings and phishing link
5
Save as Campaign
Save as a new campaign with unique name
- No need to recapture emails from Outlook
- Consistent email formatting across campaigns
- Faster campaign creation (minutes vs hours)
- Easy A/B testing with template variations
Template to Multiple Campaigns
Use a single template for multiple campaigns: Scenario: You have an effective Office 365 password expiration template Multiple Campaigns:- Load template → Configure for Customer A → Save as “Campaign_CustomerA_O365”
- Load template → Configure for Customer B → Save as “Campaign_CustomerB_O365”
- Load template → Configure for internal test → Save as “Campaign_Internal_Test_O365”
- Target lists
- Phishing URLs
- SMTP configurations
- Scheduling
Editing Templates
Templates cannot be edited directly through the web interface. To modify a template:Method 1: Recreate Template
1
Load Existing Template
Load the template into campaign creation interface
2
Make Modifications
Edit email content as needed
3
Save as Template
Click “Save as Template” with the same name
4
Overwrite Confirmation
Template is updated (SQLite UPSERT on conflict)
Method 2: Database Update
Directly modify template in database:Template Structure
Templates store complete MIME messages:Typical Template Structure
Key Elements
Headers:From: Sender display name and addressTo: UsesSuppliedToAddressplaceholderSubject: Email subject lineDate: UsesDateTimeStampplaceholderMIME-Version: Always 1.0Content-Type: Defines message structure
- Plain text version (for email clients that don’t render HTML)
- HTML version (formatted email with images and links)
- Attachments (optional)
- Embedded images (optional)
- String substitutions (SuppliedFirstName, SuppliedPhishingLink, etc.)
- Replaced at send time with target-specific values
Template Best Practices
Content Design
HTML Structure:- Use table-based layouts for maximum email client compatibility
- Inline CSS styles (avoid external stylesheets)
- Test rendering across multiple clients
- Keep total size under 102 KB
- Embed images with “Attach Images” button
- Use CID references (
cid:image1) instead of URLs - Optimize image file sizes
- Provide alt text for accessibility
- Use
SuppliedPhishingLinkplaceholder - Test links before saving template
- Ensure links work with tracking parameters
Header Management
Use “RFC Only Headers”:- Removes identifying headers from Outlook
- Reduces email fingerprinting
- Keeps only essential headers
- From, To, Subject, Date
- MIME-Version, Content-Type
- Message-ID
- X-Mailer (identifies Outlook)
- X-Originating-IP (reveals your IP)
- Received headers (shows email path)
- Authentication-Results
Testing Templates
Before saving as template:Managing Template Library
Organization Strategies
By Pretext:- IT_Security templates
- HR_Department templates
- Finance_Department templates
- Helpdesk_Support templates
- Office365 templates
- Google_Workspace templates
- VPN templates
- Internal_Portal templates
- Simple_Text templates
- HTML_Formatted templates
- Image_Heavy templates
- Attachment_Based templates
Template Versioning
Track template versions in the name:Template Documentation
Maintain a separate document (external to Phishmonger) tracking:- Template name and version
- Creation date
- Intended use case
- Success metrics from previous uses
- Known issues or considerations
- Recommended SMTP settings
Deleting Templates
Via API
Use the API to delete templates:Via Database
Delete directly from database:Exporting Templates
For Backup
Export all templates:For Sharing
Export specific template:.eml file can be:
- Opened in email clients
- Imported to other Phishmonger instances
- Analyzed offline
Importing Templates
From Backup
Import templates from CSV:From Email File
Import an.eml file as a template:
- Open the
.emlfile in a text editor - Copy the entire email content
- Navigate to “Create Campaign” in Phishmonger
- Manually paste content into email sections
- Save as template
Template Database Schema
Templates are stored in SQLite:- name (TEXT): Unique template identifier
- email (TEXT): Complete MIME message content
- Primary key on
nameprevents duplicates - Re-saving with same name performs UPSERT (update on conflict)
Troubleshooting Templates
Template Not Appearing in Dropdown
Possible Causes:- Database connection issue
- Template not saved correctly
- Name contains special characters
Template Loads with Broken Formatting
Possible Causes:- MIME structure corruption
- Encoding issues
- Missing boundary declarations
- Export template to
.emlfile and inspect - Compare with working template structure
- Recreate template from original Outlook email
Template Missing Images
Possible Causes:- Images not embedded (still external URLs)
- CID references incorrect
- Base64 encoding broken
- Use “Attach Images” button before saving template
- Verify image sections are present in MIME structure
- Check
Content-IDheaders matchcid:references in HTML
String Substitutions Not Working
Possible Causes:- Typos in placeholder names
- Placeholders modified during editing
- HTML encoding changed placeholders
- Verify exact spelling:
SuppliedPhishingLink(case-sensitive) - Use “Find & Replace” to fix placeholders
- Check HTML source, not rendered view
Advanced Template Techniques
Conditional Content
Use HTML comments to provide guidance for customization:Multiple Variants
Create template variants for A/B testing:Phish_Urgent_v1- High urgency languagePhish_Polite_v1- Professional, courteous tonePhish_Short_v1- Minimal textPhish_Detailed_v1- Comprehensive explanation