MassMailer - Technical Documentation¶
System Overview¶
MassMailer is a comprehensive Google Apps Script solution that enables high-volume personalized email sending with built-in features for tracking,
and enhanced deliverability. This document provides detailed technical information about how the system functions.
Quick Navigation¶
- Architecture - System components and structure
- Data Flow - How data flows through the system
- Detailed Component Documentation - Technical details of each component
- Configuration Options - Available configuration settings
- System Workflow - Step-by-step process workflows
Specialized Feature Documentation¶
- Rate Limit Handling - How the system detects and manages rate limits
- Upcoming Features - Features currently in development
Configuration Options¶
Basic Settings¶
- Your Name: Sender name for emails
- Gmail Draft Template: Template for your emails with placeholders
- Interval Between Batches: Minutes to wait between sending batches
- Emails Per Batch: Number of emails to send in each batch
Advanced Settings¶
- Maximum Daily Emails: Limit to avoid exceeding Gmail quotas
- Fallback Values: Customizable text for missing personalization data
- Tracking and Retry Options: Email tracking and error handling settings
Followup Settings¶
- Enable Auto-Followups: Turn on/off the followup system
- Followup Template: Gmail draft to use for followup emails
- Days to Wait: Interval before sending followup
- Maximum Followups: Number of followups to send per recipient
Comprehensive Feature Overview¶
MassMailer includes a robust set of features designed to handle various aspects of email campaigns:
Core Email Features¶
- High-Volume Email Distribution
- Process and send large volumes of emails while respecting Gmail limits
- Batch processing with configurable batch sizes and intervals
- Automatic resumption of interrupted sending processes
-
Support for different sending methods (Gmail service, Gmail API)
-
Rich Personalization
- Template-based email composition with dynamic placeholders
- Support for common placeholders: {{FirstName}}, {{LastName}}, {{Name}}, {{CompanyName}}
- Fallback values for missing personalization data
-
HTML email support with full formatting capabilities
-
Intelligent Email Tracking
- Pixel-based open tracking with timestamp recording
- Thread-based reply monitoring
- Engagement metrics (opens, replies, click-throughs)
-
Detailed reporting in spreadsheet format
-
Engagement-Driven Auto-Followups
- Schedule followups based on recipient engagement
- Different followup paths for opened vs. unopened emails
- Automatic suppression of followups after replies
- Customizable followup templates and timing
- Multi-step followup sequences with conditional logic
System Features¶
- Robust State Management
- Persistent tracking of execution state across sessions
- Recovery from interruptions and execution timeouts
- Automatic maintenance and cleanup processes
-
Historical activity logging and reporting
-
Error Handling and Resilience
- Automatic detection and handling of common errors
- Rate limit detection and intelligent backoff
- Failed email retry with configurable attempts
-
Detailed error logging for troubleshooting
-
Email Service Optimization
- Daily sending quota management
- Rate limit prevention through controlled sending
- Automatic pause and resume when limits are encountered
-
Status notifications for important system events
-
Administrative Features
- Comprehensive diagnostics system
- Detailed progress tracking and statistics
- Command-line interface for advanced operations
-
System maintenance tools and utilities
-
Integration Capabilities
- Gmail API integration for enhanced delivery
- Compatibility with Google Workspace environments
- Support for Marketplace add-on deployment
System Workflow¶
Initial Setup¶
- Create spreadsheet with recipient data
- Create email templates as Gmail drafts
- Configure options through the UI
- Set up any required sheets and columns
Normal Operation¶
- User initiates sending process
- System processes emails in batches with specified intervals
- Status updates are logged to the Progress sheet
- Process continues automatically until completion
Followup Processing¶
- System marks emails for followup during initial sending
- Daily trigger checks for emails due for followup
- Followups are sent based on configuration
- Status updates are recorded in the spreadsheet
Integration Points¶
Gmail Integration¶
- Uses GmailApp for standard sending
- Uses Gmail API for enhanced capabilities
- Accesses Gmail drafts for templates
Spreadsheet Integration¶
- Reads recipient data from Emails sheet
- Stores configuration in Config sheet
- Logs activity to Progress sheet
External Systems (Optional)¶
- Can integrate with external tracking servers
- Extensible for additional integrations
Best Practices¶
Email Volume¶
- Start with small batches (5-10) and gradually increase
- Stay within Gmail's daily sending limits (100-150 for free accounts)
- Use Gmail API for higher volume needs
Template Design¶
- Use simple, deliverable HTML
- Include personalization beyond just names
- Test templates before mass sending
Data Management¶
- Ensure email addresses are valid
- Provide fallbacks for missing personalization data
- Regularly back up your spreadsheet