Email Best Practices
ResendOfficialCreated by Resend
- Skill
- Guidelines
- Business and productivity
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured framework for managing the entire lifecycle of email communications. It covers technical infrastructure like SPF/DKIM/DMARC authentication, legal compliance across major jurisdictions (GDPR, CAN-SPAM, CASL), and accessibility standards for screen readers and diverse email clients. It also offers guidance on transactional versus marketing email strategies, list management, and building reliable delivery pipelines with retry logic and webhooks.
What it does
- Provides technical guidance for email authentication (SPF, DKIM, DMARC) to improve deliverability.
- Outlines legal requirements for global email compliance including GDPR, CAN-SPAM, and CASL.
- Defines accessibility standards for email content, including screen reader support and contrast.
- Offers architectural patterns for transactional and marketing email workflows.
- Details best practices for list management, bounce handling, and suppression lists.
- Explains how to implement reliable sending with idempotency, retries, and webhook event tracking.
When to use it
- When setting up a new email infrastructure for an application.
- When troubleshooting high bounce rates or emails landing in spam folders.
- When designing transactional email templates like password resets or order confirmations.
- When implementing email capture forms that require legal consent tracking.
- When auditing existing email templates for accessibility and compliance.
Advantages
- Reduces the risk of legal penalties by providing clear compliance guidelines.
- Improves email deliverability by standardizing authentication and list hygiene.
- Ensures emails are accessible to all users, including those using assistive technology.
- Provides a clear architectural path for building production-ready email systems.
- Helps distinguish between transactional and marketing email strategies to optimize engagement.
Usage examples
- “What are the legal requirements for sending marketing emails to users in the EU versus the US?”
- The agent provides a comparison of GDPR and CAN-SPAM, highlighting the need for explicit opt-in consent for GDPR and the requirement for physical addresses and opt-out mechanisms for CAN-SPAM.
- “How do I make my transactional email templates accessible for screen readers?”
- The agent outlines specific HTML requirements, such as setting lang/dir attributes, using role='presentation' for layout tables, and ensuring proper heading hierarchy.
- “My emails are going to spam. What should I check first?”
- The agent directs the user to the deliverability reference to verify DNS authentication (SPF, DKIM, DMARC) and check for common configuration issues.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/resend/email-best-practices/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip email-best-practices.zip -d .agents/skills
Documentation by Resend
Email Best Practices
Guidance for building deliverable, compliant, user-friendly emails.
Architecture Overview
[User] → [Email Form] → [Validation] → [Double Opt-In]
↓
[Consent Recorded]
↓
[Suppression Check] ←──────────────[Ready to Send]
↓
[Idempotent Send + Retry] ──────→ [Email API]
↓
[Webhook Events]
↓
┌────────┬────────┬─────────────┐
↓ ↓ ↓ ↓
Delivered Bounced Complained Opened/Clicked
↓ ↓
[Suppression List Updated]
↓
[List Hygiene Jobs]Quick Reference
| Need to... | See |
|---|---|
| Set up SPF/DKIM/DMARC, fix spam issues | Deliverability |
| Build password reset, OTP, confirmations | Transactional Emails |
| Plan which emails your app needs | Transactional Email Catalog |
| Build newsletter signup, validate emails | Email Capture |
| Send newsletters, promotions | Marketing Emails |
| Ensure CAN-SPAM/GDPR/CASL compliance | Compliance |
| Decide transactional vs marketing | Email Types |
| Handle retries, idempotency, errors | Sending Reliability |
| Process delivery events, set up webhooks | Webhooks & Events |
| Manage bounces, complaints, suppression | List Management |
| Make emails accessible (screen readers, alt text, contrast) | Accessibility |
Start Here
New app? Start with the Catalog to plan which emails your app needs (password reset, verification, etc.), then set up Deliverability (DNS authentication) before sending your first email.
Spam issues? Check Deliverability first—authentication problems are the most common cause. Gmail/Yahoo reject unauthenticated emails.
Marketing emails? Follow this path: Email Capture (collect consent) → Compliance (legal requirements) → Marketing Emails (best practices).
Production-ready sending? Add reliability: Sending Reliability (retry + idempotency) → Webhooks & Events (track delivery) → List Management (handle bounces).
Accessibility?
Most emails fail basic accessibility checks. See Accessibility for lang/dir, presentational tables, headings, alt text, <title>, and contrast.
Files
- ATTRIBUTION.mdAdded by AutoGineer904 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md3.9 KiB
- references/accessibility.md9.3 KiB
- references/compliance.md4.1 KiB
- references/deliverability.md3.3 KiB
- references/email-capture.md3.4 KiB
- references/email-types.md5.7 KiB
- references/list-management.md4.5 KiB
- references/marketing-emails.md3.2 KiB
- references/sending-reliability.md4.5 KiB
- references/transactional-email-catalog.md10.1 KiB
- references/transactional-emails.md2.4 KiB
- references/webhooks-events.md4.2 KiB
references/marketing-emails.md
Marketing Email Best Practices
Promotional emails that require explicit consent and provide value to recipients.
Core Principles
Consent first - Explicit opt-in required (especially GDPR/CASL)
Value-driven - Provide useful content, not just promotions
Respect preferences - Let users control frequency and content types
Opt-In Requirements
Explicit Opt-In
What counts:
User checks unchecked box
User clicks "Subscribe" button
User completes form with clear subscription intent
What doesn't count:
Pre-checked boxes
Opt-out model
Assumed consent from purchase
Purchased/rented lists
Informed Consent
Disclose: email types, frequency, sender identity, how to unsubscribe.
✅ "Subscribe to our weekly newsletter with product updates and tips" ❌ "Sign up for emails"
Double Opt-In (Recommended)
User submits email
Send confirmation email with verification link
User clicks to confirm
Add to list only after confirmation
Benefits: Verifies deliverability, confirms intent, reduces complaints, required in some regions (Germany).
Unsubscribe Requirements
Must be:
Prominent in every email
One-click (preferred)
Immediate (GDPR) or within 10 days (CAN-SPAM) (immediate preferred)
Free, no login required
Preference center options: Frequency (daily/weekly/monthly), content types, complete unsubscribe.
Content and Design
Subject Lines
Clear and specific (50 chars or less for mobile)
Create curiosity without misleading
A/B test regularly
✅ "Your weekly digest: 5 productivity tips" ❌ "You won't believe what happened!"
Structure
Above fold: Value proposition, primary CTA, engaging visual
Body: Scannable (short paragraphs, bullets), clear hierarchy, multiple CTAs
Footer: Unsubscribe link, company info, physical address (CAN-SPAM), social links
Mobile-First
Single column layout
44x44px minimum buttons
16px minimum text
Test on iOS, Android, dark mode
Segmentation
Segment by: Behavior (purchases, activity), demographics, preferences, engagement level, signup source.
Benefits: Higher open/click rates, lower unsubscribes, better experience.
Personalization
Options: Name in subject/greeting, location-specific content, behavior-based recommendations, purchase history.
Don't over-personalize - can feel intrusive. Use data you have permission to use.
Frequency and Timing
Frequency: Start conservative, increase based on engagement, let users set preferences, monitor unsubscribe rates.
Timing: Weekday mornings (9-11 AM local), Tuesday-Thursday often best. Test your specific audience.
List Hygiene
Remove immediately: Hard bounces, unsubscribes, complaints
Remove after inactivity: Send re-engagement campaign first, then remove non-responders
Monitor: Bounce rate <2%, complaint rate <0.05%
Required Elements (All Marketing Emails)
Clear sender identification
Physical mailing address (CAN-SPAM)
Unsubscribe mechanism
Indication it's marketing (GDPR)
Related
Compliance - Detailed legal requirements by region
Email Capture - Collecting consent properly
List Management - Maintaining list hygiene
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Resend
- Publisher
- Resend (Official)
- Source
- resend/resend-skills · skills/email-best-practices · commit 389de56
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Resend or Resend.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download email-best-practices.zip