Your certificate data stays on your device.
MailMyCertificate was designed around a simple idea: organizers should not need to upload participant data to external servers just to generate and send certificates.
Local Processing
Certificate generation happens directly inside your browser using your own device.
No Participant Uploads
Your CSV files, participant names, and generated certificates are not uploaded to our servers.
Minimal Trust Required
The product is intentionally engineered to minimize how much user data ever leaves the browser.
This Privacy Policy explains how MailMyCertificate handles data when you use the application. By using the platform, you agree to the practices described below.
1. Local-First Processing & Data Sovereignty
MailMyCertificate is developed by Akshat Thakur and follows a local-first architecture. Certificate templates, participant data, generated PDFs, and workflow progress are processed directly inside your browser whenever possible.
Unlike many traditional SaaS tools, MailMyCertificate is intentionally designed to reduce dependency on external cloud storage for core certificate generation workflows.
Complete Local Processing
- Certificate templates are stored locally inside your browser storage (IndexedDB).
- CSV and Google Sheets imports are processed 100% on the client side.
- PDF generation occurs exclusively within your browser using client-side Web Workers and pdf-lib.
- Generated certificates remain on your device until you manually send or download them.
- Local browser storage data persists across page reloads. You can clear it manually via browser storage settings or using the app's "Clear Data" option.
What We Do Not Do With Participant Data
- We do not permanently upload or store participant rosters on MailMyCertificate servers.
- We do not retain participant names, emails, or personal information in any permanent database.
- We do not permanently store generated certificate PDFs.
- We do not use Workspace API data (Gmail, Google Sheets) for secondary purposes like analytics, marketing, or machine learning.
- We do not access your Google Sheets or Gmail after the immediate operation completes.
2. Information We Collect
MailMyCertificate does not intentionally collect or sell participant information.
Some limited technical information may be collected automatically for operational and security purposes, including:
- Browser type and version
- Device information
- Error logs and crash diagnostics
- Basic anonymous usage analytics
Any monitoring or diagnostics services used by the platform are configured to avoid intentionally storing Personally Identifiable Information (PII) wherever reasonably possible.
3. Browser Storage & Local Data
MailMyCertificate may store temporary workflow data locally inside your browser using technologies such as IndexedDB or Local Storage.
This may include:
- Uploaded certificate templates
- Participant lists
- Generated certificate references
- Workflow progress and session recovery data
This local data exists only on your device and can typically be removed by clearing your browser storage.
4. Google Workspace API Usage & Guaranteed Data Handling
MailMyCertificate uses the following Google APIs to deliver its core functionality.
Gmail API (gmail.send scope)
- Purpose: Send personalized certificates directly through your Gmail account to event participants.
- Data Sent to Backend: When you request email delivery, the backend temporarily receives recipient email address, email subject, email body, and the PDF certificate file necessary to compose and send the message via Gmail API on your behalf.
- Temporary Processing: The backend uses your Gmail OAuth credentials to submit the composed email through Google's Gmail API. This email data is processed only for the duration of the send operation and is not intentionally retained in any permanent MailMyCertificate database or log file.
- No Inbox Access: This application requests only the
gmail.sendscope. MailMyCertificate never reads, modifies, stores, or deletes any existing emails in your Gmail inbox. It cannot access your Gmail history or account data. - After Send: Once the email is transmitted through Gmail, MailMyCertificate does not retain a copy of the sent message, recipient address, or email content.
Google Sheets Import (Public CSV Export — No OAuth Scope Required)
- How it works: When you provide a publicly accessible Google Sheets URL, MailMyCertificate retrieves the sheet's public CSV export through our backend. No Google Sheets OAuth scope or API access is required. The CSV data is returned to your browser for parsing and use in the certificate workflow.
- Requirement: The sheet must be set to "Anyone with the link can view" by you before import. MailMyCertificate only accesses publicly shared sheets and never requests private or non-shared sheets.
- Data Handling: After retrieving the CSV export, the data is passed to your browser for parsing. Imported participant data is stored locally in your browser's IndexedDB and is never permanently retained on MailMyCertificate servers.
- No Authentication Required: This feature does not request or use any Google Sheets API scope, Google OAuth token, or access to your Google account.
Recipient Email Sources — No Leads Database or Lead Generation
MailMyCertificate does NOT provide any of the following:
- A leads database or shared contact database
- Lead generation or lead sourcing services
- Email address suggestions or recipient recommendations
- Email scraping or automated email discovery services
- Recipient list sharing or distribution between users
Recipients enter the system entirely from you:
- CSV files you upload: Stored locally in your browser's IndexedDB, never uploaded to our servers
- Public Google Sheets you specify: Imported once per session using a public CSV export (no OAuth required)
Data isolation: All recipient data is scoped to your session and cannot be accessed by other MailMyCertificate users.
No Email Warming, Automated Sending, or Reputation Services
MailMyCertificate does NOT provide:
- Email warming, inbox warming, or sender reputation optimization services
- Automated email sequences, background email jobs, or scheduled sending
- Simulated email activity, artificial engagement metrics, or deliverability enhancement
- Any mechanism for unsolicited commercial email or cold outreach
How email sending works: All emails are sent immediately and synchronously when you explicitly click "Send". You control each send operation — MailMyCertificate does not autonomously generate, schedule, or send emails. The queue system manages rate limiting and reliability (preventing Gmail API rate limits from being exceeded), not email warming or reputation building.
AI/ML & Foundational Model Compliance (2026 Mandate)
Critical Guarantee: Data accessed from Google Workspace APIs (Gmail, Google Sheets) will never be used, transferred, or sold to train, improve, or create any foundational, generative, or large language models, or any other machine learning or artificial intelligence systems. We are prohibited from using your data for any AI training purposes.
Google API Services User Data Policy — Limited Use Disclosure
MailMyCertificate's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
Specifically, MailMyCertificate limits its use of Google user data to providing and improving user-facing features that are visible and prominent in the application's interface. We do not use Google user data for serving advertisements, and we do not allow humans to read user data except with affirmative user consent, for security purposes, or to comply with applicable law.
5. Hosting & Infrastructure
MailMyCertificate may use third-party hosting and infrastructure providers such as Vercel for website delivery, uptime, analytics, and security.
These providers may temporarily process technical request information such as IP addresses, browser metadata, and performance logs as part of normal web infrastructure operations.
However, participant certificate data is not intended to be permanently stored on these infrastructure services.
5.1 Data Protection & Security Measures
MailMyCertificate implements multiple layers of security to protect your data during the certificate generation and email delivery workflow.
Transport Security
- HTTPS only: All communication between your browser and our servers is encrypted using HTTPS. Unencrypted HTTP connections are not accepted.
- OAuth tokens in transit: Google OAuth tokens (access and refresh) are transmitted exclusively over encrypted HTTPS connections and are never exposed in URLs or client-side storage.
Session & Credential Security
- HttpOnly session cookies: OAuth credentials are stored in server-side sessions accessed only via HttpOnly, Secure, SameSite cookies — never accessible to client-side JavaScript.
- Session-scoped credentials: Google OAuth tokens (access and refresh) are maintained only for the duration of your authenticated session (maximum 1 hour). Upon session expiration or logout, credentials are deleted and are not written to any permanent MailMyCertificate database or file system.
- CSRF protection: All state-changing operations (sending emails, logout) are protected by cryptographic CSRF tokens validated on the server.
- OAuth state validation: The OAuth callback verifies a server-generated state parameter to prevent cross-site request forgery during login.
Access Controls
- Minimal scope principle: We request only
gmail.send— the narrowest Gmail scope available. We cannot and do not read, modify, delete, or retain any emails from your mailbox. - Not intentionally persisted: OAuth credentials are stored only in server-side session state and are not intentionally written to permanent storage.
- Production hardening: Debug endpoints and verbose error messages are disabled in production. Internal errors are sanitized before being returned to clients. Specific hardening measures include:
- No stack traces or internal error details exposed to users
- Request logging excludes sensitive data (tokens, OAuth credentials)
- Monitoring and alerting configured for suspicious activity
- Infrastructure runs on secure, managed platforms with security scanning
- Dependencies are regularly audited for known vulnerabilities
5.2 Recipient Consent & Email Preferences
MailMyCertificate is designed for sending certificates to event participants who have implicitly consented to receive communications from the event organizer.
Consent & Organizer Responsibility
- Organizer-provided recipients: Recipients are supplied by the organizer from participant data the organizer provides. MailMyCertificate does not independently verify consent or contact preferences.
- Your responsibility: The organizer is responsible for ensuring that all use of recipient information and email communications complies with applicable laws and regulations in their jurisdiction, including requirements regarding consent, notification, and opt-out mechanisms.
- Product context: MailMyCertificate is designed for organizer-initiated delivery of event-related communications (primarily certificates) to participants whose information the organizer has provided.
Unsubscribe & Preference Management
- No built-in unsubscribe or preference system: MailMyCertificate does not provide unsubscribe links, preference management, suppression lists, or recipient opt-out functionality.
- Recipient contact: Recipients who wish to manage their communication preferences or opt out of future communications should contact the event organizer directly.
- Product design: MailMyCertificate is designed for organizer-initiated certificate delivery rather than subscription-based or recurring communications. Compliance with applicable email communication laws and regulations is the organizer's responsibility.
5.3 Data Sharing, Disclosure & Prohibited Uses
MailMyCertificate does not sell, rent, trade, or otherwise disclose Google user data to any third party except as strictly necessary to provide the service (e.g., transmitting your email through Google's own Gmail API on your behalf).
We explicitly do NOT use Google user data for:
- Advertising: No targeted, personalized, retargeted, or interest-based advertising of any kind.
- Data brokering or resale: We never sell or transfer user data to data brokers, information resellers, or any party for commercial gain.
- Credit or lending decisions: User data is never used to determine creditworthiness or for lending purposes.
- Unrelated databases: We never combine or build datasets unrelated to MailMyCertificate's user-facing certificate generation and delivery features.
- AI/ML model training: Google user data is never used to train, improve, or develop generalized or non-personalized artificial intelligence or machine learning models.
- Surveillance or tracking: We do not use Google user data for profiling, monitoring, or tracking individuals beyond what is needed to deliver the certificate email they requested.
Summary: Google user data obtained by MailMyCertificate is used solely to send certificate emails on your behalf. It is not transferred, disclosed, or repurposed for any other objective.
5.5 Analytics & Google Tag Manager
MailMyCertificate uses Google Tag Manager (GTM) and Google Analytics (GA4) to track anonymous usage metrics and improve the platform.
Critical: Workspace Data Exclusion
GUARANTEED: No data accessed from Google Workspace APIs (Gmail, Google Sheets, participant information, certificate content, or email addresses) is ever sent to Google Analytics, Google Tag Manager, or any third-party analytics service.
Analytics data collected is limited to:
- Anonymous visitor ID (locally generated, never linked to email or identity)
- Page path and navigation flow (no personal data)
- Feature usage (e.g., "template_uploaded", "certificate_generated") with aggregate counts only
- Browser type and device category (non-identifying)
- Error events (no PII or sensitive data included)
Participant rosters, certificate content, email addresses, and all data accessed from Workspace APIs are processed locally in your browser and never transmitted to analytics services.
Data Retention for Analytics
Analytics events are retained for 90 days in Google Analytics by default. After 90 days, events are automatically deleted. You may request deletion of your analytics data at any time by contacting us.
6. Data Retention & Deletion
MailMyCertificate minimizes data retention wherever possible.
Browser-Side Data
- Storage mechanism: Participant lists, templates, and certificate references are stored in your browser's IndexedDB and localStorage.
- Persistence: This data persists across page reloads within the same browser session. It allows you to resume work if the page is accidentally refreshed.
- Manual deletion: You can clear this data at any time by:
- Using the app's Settings → "Clear Data" option
- Clearing your browser's site data for mailmycertificate.tech
- Using your browser's storage management tools
- No participant storage on our servers: Your participant lists are never uploaded to or stored on MailMyCertificate infrastructure.
Backend Data
- Gmail Send Operations: When you send a certificate email, the backend temporarily receives the recipient address and email content to compose and transmit the message. This data is not intentionally retained in a permanent database after the send operation completes.
- OAuth Credentials & Session Security: Google OAuth access and refresh tokens are stored only in server-side session cookies with the following protections:
- HttpOnly flag: Tokens cannot be accessed by JavaScript, preventing XSS attacks
- Secure flag: Tokens are only transmitted over HTTPS
- SameSite="Lax": Tokens are protected against CSRF attacks
- Session lifetime: Maximum 1 hour. After session expiration, the application's server-side session credentials are no longer available to the application
- No persistent storage: Tokens are never stored in databases, local storage, or files
- Analytics Events: Anonymous usage events (feature clicks, certificate counts, errors) are recorded for product improvement. Participant PII is never included. See "Analytics & GTM" section below.
Requesting Data Deletion
If you have questions about data retention or believe any personal information has been retained on MailMyCertificate servers, you may:
- Revoke OAuth access: Visit your Google Account Permissions page and disconnect MailMyCertificate. This immediately invalidates our access to your Gmail account.
- Clear local data: Clear your browser's IndexedDB and localStorage for mailmycertificate.tech, or use the app's "Clear Data" option.
- Contact us: Email akshatthakur22@gmail.com or use our Contact page to report data retention concerns. We will respond within 7 days.
7. Open Source Transparency
MailMyCertificate is an open-source project.
Transparency is important for tools that process participant information and certificate workflows. Users may inspect the public source code repository to better understand how the application works.
View GitHub Repository8. Policy Updates
This Privacy Policy may be updated from time to time to reflect technical improvements, legal requirements, or workflow changes.
Material privacy-related changes will be reflected on this page.
Our Commitment
MailMyCertificate was built to solve a real organizer workflow problem without forcing users to trust unknown servers with participant data.
We keep it simple: generate and send certificates with as little unnecessary data exposure as possible.