
email-deliverability
Make sure email actually reaches inboxes. Use this skill when setting up email authentication (SPF, DKIM, DMARC), diagnosing emails landing in spam, planning a domain reputation strategy, monitoring sender reputation, or hardening against email spoofing. Triggers on email deliverability, SPF, DKIM, DMARC, spam folder, sender reputation, mailbox provider, soft bounces, bounce rate, BIMI, MTA-STS, deliverability audit. Also triggers when a marketing or transactional email isn't reaching users.
- Installs
- 317
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/rampstackco/claude-skills --skill email-deliverability- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads email-deliverability automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Email Deliverability
Get email into inboxes, not spam folders. Set up authentication. Monitor reputation. Diagnose problems before they hurt the business.
When to use
- Setting up email for a new domain
- A meaningful percentage of email is going to spam
- Customers report they're not receiving emails
- Setting up DMARC, SPF, or DKIM
- Hardening against domain spoofing
- Migrating email service providers
- Sender reputation has dropped
- Pre-launch audit before sending volume increases
When NOT to use
- Writing the email content itself (use
email-sequences) - Designing the email program strategy (use
email-sequences) - DNS records in general (use
domain-strategy) - Outbound spam coming FROM your account (different problem; investigate compromised credentials)
Required inputs
- The sending domain(s)
- The email service provider (ESP, transactional service, mail server)
- Current DNS records (or access to them)
- Email volume (transactional vs marketing, daily volume)
- Current deliverability state (if known: bounce rate, spam complaints)
The framework: 3 pillars
Email deliverability rests on three pillars. Weakness in any one limits the others.
Pillar 1: Authentication
Mailbox providers verify email is actually from who it claims to be from. Three records.
SPF (Sender Policy Framework)
Lists which servers are authorized to send mail for the domain. Published as a TXT record at the apex.
v=spf1 include:_spf.mailprovider.com -all
include:adds another sender's authorized list-all(hard fail): mail from unlisted senders fails authentication~all(soft fail): unlisted senders are suspicious but pass; useful during rollout+all: never use; allows anyone to send
Only one SPF record per domain. Multiple SPF records break SPF entirely. Combine senders into a single record.
SPF has a 10-DNS-lookup limit. Each include: may use multiple lookups. Hit the limit and SPF stops working. Watch this carefully.
DKIM (DomainKeys Identified Mail)
A cryptographic signature on each outgoing email. The mail server signs with a private key; the public key is published in DNS.
selector1._domainkey.example.com TXT "v=DKIM1; k=rsa; p=MIGfMA0G..."
Selectors differ by ESP. Some use default._domainkey, some use unique selectors per service. Most ESPs walk you through publishing the records.
DKIM proves the message wasn't modified in transit and that the sender controls the domain.
DMARC (Domain-based Message Authentication, Reporting, and Conformance)
The policy layer. Tells receivers what to do when SPF or DKIM fails, and where to send reports.
_dmarc.example.com TXT "v=DMARC1; p=reject; rua=mailto:dmarc-aggregate@example.com; ruf=mailto:dmarc-forensic@example.com; pct=100; adkim=s; aspf=s"
Components:
p=: policy.none,quarantine, orreject.rua=: aggregate reports (daily, summary). Always set this.ruf=: forensic reports (per-message). Optional, can be high volume.pct=: percentage of failing mail subject to the policy. Useful for gradual rollout.adkim=,aspf=: alignment mode.s(strict),r(relaxed). Strict means From: domain must match exactly.
DMARC is the most important record. It's what makes spoofing your domain hard.
Pillar 2: Reputation
Mailbox providers (Gmail, Outlook, Yahoo) score every sender. Reputation drives delivery.
Reputation factors:
- Authentication pass rates (SPF, DKIM, DMARC)
- Engagement signals (opens, replies, marking as not-spam)
- Negative signals (spam complaints, deletions without opens, blocking)
- List hygiene (low bounce rates, no spam traps)
- Volume consistency (sudden spikes look like spam)
- Content patterns (link reputation, attachment patterns)
- IP and domain history
Reputation is per (sending domain × mailbox provider). Gmail's view of you is independent of Outlook's.
Pillar 3: List quality and engagement
Authentication and reputation rest on list quality. Bad list = bad reputation eventually.
- Only send to people who explicitly opted in
- Confirmed (double) opt-in for marketing wherever feasible
- Honor unsubscribes immediately and reliably
- Remove hard bounces immediately
- Sunset disengaged contacts (no opens in 6 months: reduce frequency or remove)
- Avoid third-party lists, scraped emails, or "purchased opt-ins"
The single biggest deliverability lever for most senders is list hygiene.
Workflow
Step 1: Audit current state
Check the current DNS records:
dig +short txt example.com
dig +short txt selector1._domainkey.example.com
dig +short txt _dmarc.example.com
Also check:
- Current bounce rate (target: under 2%)
- Current spam complaint rate (target: under 0.1%)
- Current open rate (varies by industry; falling trend is a warning)
- Current sending volume
Tools: mxtoolbox.com, dmarcian.com, mail-tester.com (for individual messages).
Step 2: Fix authentication
If any of SPF, DKIM, DMARC is missing or misconfigured, fix first.
SPF fix order:
- Identify all legitimate senders (transactional ESP, marketing ESP, support tools, etc.)
- Get the
include:value or IP for each - Combine into a single SPF record
- Verify lookup count is under 10
- Use
-allfor hard fail (or~allif rolling out gradually)
DKIM fix order:
- Generate a new selector per sending service
- Publish the public key in DNS
- Configure the ESP to sign with the private key
- Verify with a test send (check headers for
dkim=pass)
DMARC fix order:
- Publish DMARC with
p=noneinitially (monitoring mode) - Set up an aggregate report endpoint (use a DMARC analytics service or your own)
- Watch reports for at least 2-4 weeks
- Identify any legitimate senders failing alignment; fix them
- Move to
p=quarantinewithpct=10, gradually increase - Move to
p=rejectonce confidence is high
The full progression typically takes 2-3 months. Rushing causes legitimate mail to bounce.
Step 3: Set up monitoring
Ongoing visibility:
- DMARC aggregate reports: parsed daily. Watch for new sources, alignment failures, volume changes.
- Bounce rate: per ESP dashboard. Target under 2% for transactional, under 5% for marketing.
- Spam complaint rate: target under 0.1%.
- Reputation tools: Google Postmaster Tools (free), Microsoft SNDS, Talos, Sender Score.
- Blacklist monitoring: most ESPs include this; otherwise mxtoolbox.com or hetrixtools.com.
Step 4: Address list hygiene
- Remove hard bounces from your sending lists immediately (most ESPs do this; verify)
- Set up suppression lists (unsubscribes, manual blocks, deliverability sinkholes)
- Sunset disengaged contacts (re-engagement campaigns or just remove)
- Review opt-in flows: do people know what they're signing up for?
Step 5: Content and pattern audit
If reputation is good and authentication passes, check content:
- HTML-only emails (no plain-text alternative) raise flags
- Heavy image-to-text ratios raise flags
- Suspicious link patterns (bare IPs, URL shorteners, hijacked domains)
- Specific spam-trigger words in subject lines (less important than it used to be, still real)
- Lots of mismatched domains in URLs
- Generic from-name like "info@" rather than a real-sounding sender
Step 6: Plan for growth
Email volume affects reputation. Sudden spikes look like spam.
- Warm up new sending IPs gradually (start at 50/day, 2x daily)
- Warm up new domains gradually (similar pattern)
- Spread sends throughout the day
- Don't switch ESPs the week before a big launch
Step 7: Set up BIMI (optional but valuable)
BIMI (Brand Indicators for Message Identification) shows your logo next to authenticated emails in supporting clients (Gmail, Apple Mail, Yahoo, others).
Requires:
- DMARC at
p=quarantineorp=reject(so this comes after the DMARC progression) - A trademarked logo as an SVG (specific format requirements)
- A Verified Mark Certificate (VMC) from a CA, for Gmail and others
- A
_bimiDNS record pointing to the SVG and VMC
BIMI improves trust signals and engagement. Worth doing once DMARC enforcement is in place.
Step 8: Document and revisit
Document the email architecture:
- Sending domains and subdomains
- Each ESP and what it sends
- DNS records for each
- Monitoring setup
- Escalation if deliverability degrades
Revisit quarterly or when a new ESP is added.
Failure patterns
Multiple SPF records. Two or more SPF records on the same domain breaks SPF. Combine into one.
SPF DNS lookup limit exceeded. Too many include: directives or chained includes. Flatten or simplify.
DMARC at p=none forever. Monitoring without enforcement. Spoofing remains easy. Move to enforcement.
DMARC at p=reject too quickly. Legitimate mail bounces because alignment wasn't verified. Use the gradual rollout.
Sending from a different domain than the From: address. Causes alignment failures. Fix the From: domain or ensure proper alignment.
Using a shared ESP IP without ESP-specific configuration. Some ESPs don't sign with your DKIM by default; the signature is the ESP's, not yours. Configure custom DKIM.
Sending from a domain that also sends marketing. A spam complaint on a marketing email hurts transactional deliverability. Use a subdomain for transactional (transactional.example.com) or marketing (mail.example.com).
No bounce monitoring. Hard bounces accumulate, reputation tanks, deliverability cliff-falls. Monitor.
Bought lists or scraped contacts. Spam traps in those lists destroy reputation. Don't.
No double opt-in for marketing. Single opt-in lets bots and typos onto the list. Bots generate spam complaints, destroy reputation.
Ignoring DMARC reports. Reports show problems early. Set up a parser. Look weekly.
Treating "marked as not-spam" as the goal. The goal is to never land in spam in the first place. Once reputation is bad, recovery takes months.
Output format
A deliverability audit document includes:
- Domain inventory: every sending domain
- Authentication status: SPF, DKIM, DMARC per domain
- Sender inventory: every ESP or service that sends mail, what's configured
- Reputation status: per major mailbox provider where measurable
- List hygiene: bounce rate, complaint rate, opt-in process
- Findings: prioritized issues
- Roadmap: SPF/DKIM/DMARC fixes, BIMI plan, monitoring plan
- Monitoring setup: what's watched, where alerts go
Reference files
references/dmarc-rollout-playbook.md: Step-by-step for moving from no DMARC top=reject, with timing, monitoring, and how to handle problems found along the way.
FAQ
What does the email-deliverability skill do?
Make sure email actually reaches inboxes. Use this skill when setting up email authentication (SPF, DKIM, DMARC), diagnosing emails landing in spam, planning a domain reputation strategy, monitoring sender reputation, or hardening against email spoofing. Triggers on email deliverability, SPF, DKIM, DMARC, spam folder, sender reputation, mailbox provider, soft bounces, bounce rate, BIMI, MTA-STS, deliverability audit. Also triggers when a marketing or transactional email isn't reaching users.
How do I install email-deliverability?
Run npx skills add https://github.com/rampstackco/claude-skills --skill email-deliverability in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/email-deliverability/ (personal) or .claude/skills/email-deliverability/ (project).
Which AI agents can use email-deliverability?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is email-deliverability safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains email-deliverability?
It is published by rampstackco in rampstackco/claude-skills. It has 317 recorded installs.
More from rampstackco/claude-skills
art-direction
rampstackco/claude-skills
Direct visual and creative work for campaigns, photography, illustration, video, and branded experiences. Use this skill whenever the user wants to brief a photographer, direct illustrators, plan a creative campaign, develop visual concepts, or evaluate creative work for fit. Triggers on art direction, photo brief, photography brief, illustration brief, campaign concept, creative concept, visual direction, mood board, look and feel, visual treatment, video direction. Also triggers when the user has approved brand identity but needs to extend it into specific creative deliverables. Use creative-direction instead when the ask is the project-wide aesthetic brief that this skill consumes as input.
brand-identity
rampstackco/claude-skills
Design or evaluate a brand visual identity system covering logo, color, typography, imagery direction, iconography, and motion principles. Use this skill whenever the user wants to design a logo, build a visual identity, define brand colors, choose brand typography, develop iconography, plan brand imagery, or evaluate an existing identity for cohesion. Triggers on logo design, brand identity, visual identity, brand mark, wordmark, monogram, color palette, brand colors, brand typography, type system, iconography, brand imagery, motion design, brand system, identity system. Also triggers when the user has a brand direction approved and now needs the visual artifacts that express it.
creative-direction
rampstackco/claude-skills
Walk the user through four directional axes (tone register, aesthetic philosophy, audience relationship, sensory ambition) and produce a structured aesthetic brief that downstream content, copy, design, and art-direction skills consume as required input. The aesthetic depth layer, distinct from creative-brief (operational kickoff: scope, audience, deliverables, constraints). Use when a project needs aesthetic coherence across many small decisions and the user has only a vague feeling, or when multiple downstream aesthetic-producing skills need a shared brief. Triggers on creative direction, aesthetic direction, set the aesthetic, define the visual direction, what's the vibe, what's the tone, the four axes. Does NOT fire for a general kickoff brief (use creative-brief), tactical single-piece work, already-documented direction, purely functional output, or locked production-stage work.
brand-style-guide
rampstackco/claude-skills
Build or audit a comprehensive brand style guide that documents the full brand system including story, logo system, color, typography, imagery, voice, applications, and dos/don'ts. Use this skill whenever the user wants to create brand guidelines, document an existing brand, build a brand book, audit an existing style guide for completeness, or produce the artifact that other teams will reference for years. Triggers on style guide, brand guidelines, brand book, brand standards, brand manual, style sheet, brand documentation, brand reference. Also triggers when the brand identity is finished and needs to be documented for handoff to designers, developers, vendors, or future team members.
landing-page-copy
rampstackco/claude-skills
Write landing page copy with attention to the hero, value proposition, social proof, objection handling, and conversion-focused CTAs. Use this skill whenever the user wants to write a landing page, sales page, hero section, or any conversion-focused web copy. Triggers on landing page, sales page, hero copy, value proposition, headline, subheadline, hero section, CTA copy, conversion copy, opt-in page, squeeze page. Also triggers when the user has a marketing campaign or product launch needing dedicated conversion copy. Use cro-optimization instead when the page already exists and the ask is to lift its conversion rate through testing rather than to write the copy.
Popular productivity & automation skills
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
lark-doc
open.feishu.cn
飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。
lark-base
open.feishu.cn
飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。
lark-drive
open.feishu.cn
飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。
lark-shared
open.feishu.cn
Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.
lark-im
open.feishu.cn
飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。