Contact verification
Skill LeadMagic/gtm-skills/skills/prospecting/contact-verification
205 production GTM agent skills for Claude Code — sales, outbound, prospecting, RevOps, ABM, PLG, CS, automation. Framework-cited playbooks with artifacts + QA scripts.
npx -y skills add LeadMagic/gtm-skills --skill contact-verificationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Verify email addresses before they enter outbound sequences to prevent bounces and protect sender reputation. Use when the user wants to validate emails, check deliverability, verify contact data, prevent bounces, clean a list, or ensure their outreach list is safe to send. Triggers on: \"verify emails\", \"validate this list\", \"check if these emails are real\", \"email verification\", \"bounce prevention\", \"clean my list\", \"are these safe to send\", or any request to confirm email deliverability before outreach.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.7 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
Contact Verification
Overview
Verification is the gate between finding emails and sending to them. Skipping it is the single most expensive mistake in outbound — a 5% bounce rate triggers automated spam filtering at every major inbox provider. Recovery takes months.
The rule: every email address entering a sequence must pass verification first. No exceptions. Verify when you find, re-verify every 90 days, and always verify before a new campaign launches.
When to Use
- "Verify these emails before we send"
- "Check if these addresses are deliverable"
- "Clean my prospect list"
- "Are these safe to send to?"
- "Validate this CSV of contacts"
- "What's the bounce risk on this list?"
Do NOT use for:
- Finding new emails — use email-finding first
- Deliverability infrastructure setup — use email-deliverability
- General list hygiene beyond email — use list-building
Authoritative Foundations
Email verification is grounded in established deliverability practices. Industry consensus across major sending platforms (Google Workspace, M365, Smartlead, Instantly) converges on a bounce rate ceiling of 2% for cold outreach and best-in-class operations targeting under 1%.
Data decay is real: 2-3% of B2B emails become invalid every month. A 10,000-contact database loses 200-300 valid emails monthly. Re-verification on a 90-day cadence is the minimum to maintain list health.
Prerequisites
- A list of email addresses to verify
- Access to a verification service (LeadMagic Email Validation, ZeroBounce, NeverBounce, MillionVerifier, or equivalent)
- For batch verification: CSV with at minimum an email column
Step-by-Step Process
Phase 1: Intake
Ask the user:
- How many emails need verification? (single vs batch)
- When were these emails last verified? (if never, flag as high-risk)
- What's the sending volume and cadence? (higher volume = stricter verification)
- Are these going to cold outreach or warm nurture? (cold = stricter)
Phase 2: Run Verification
Submit each email to the verification service. Services return a status:
| Status | Meaning | Action for Cold Outbound | Action for Warm/Nurture |
|---|---|---|---|
| valid | Mailbox exists and accepts mail | Safe to send | Safe to send |
| invalid | Mailbox doesn't exist or is deactivated | Do not send — remove from list | Do not send |
| risky / catch-all | Domain accepts all mail, can't confirm individual mailbox | Skip at volume. Send selectively (max 5% of volume) with extra monitoring | Send, monitor bounces closely |
| unknown | Could not determine status | Skip. Re-verify in 7 days or discard | Send if high-value, monitor |
| disposable | Temporary/throwaway address | Never send | Never send |
Phase 3: Segment and Route
- Valid → Route to the sendable list. Mark with verification date.
- Invalid → Remove from all sequences. Log the bounce reason if available.
- Risky/Catch-All → Separate list. For cold outbound at volume: skip entirely. For high-value enterprise accounts: send at reduced volume (<5% of total), monitor bounce rates daily.
- Unknown → Hold for re-verification. If critical contact, attempt after 7 days. Otherwise, discard.
Phase 4: Record Keeping
Every verified contact should have:
verification_status: valid | invalid | risky | unknownverification_date: ISO date of last verificationverification_source: which service was used
CRM systems should filter sequences to only include verification_status = valid
AND verification_date within last 90 days.
Output Format
Summary report:
Total verified: 1,000
Valid: 920 (92%)
Invalid: 35 (3.5%)
Risky/Catch-All: 30 (3%)
Unknown: 15 (1.5%)
Sendable (valid): 920
Requires monitoring (risky): 30
Removed (invalid + unknown): 50
Estimated safe send volume: 920-950/day (depending on risky handling)
Bounce rate projection: 0.8-1.5%
Quality Check
- All emails in sequence have verification_status = valid
- No emails with verification_date older than 90 days
- Invalid emails removed from all active sequences
- Catch-all emails tracked separately with daily bounce monitoring
- Disposable emails permanently suppressed
Common Pitfalls
-
Skipping verification entirely. "We found the emails from a reputable source." Every provider returns stale data. 5-15% of "found" emails bounce. The cost of re-warming a domain far exceeds the cost of verification.
-
Treating catch-all as safe. Catch-all domains accept mail to any address at the domain, making individual mailbox verification impossible. They produce higher bounce rates. Treat them as a separate, monitored segment.
-
One-time verification. "We verified this list 6 months ago." At 2-3% monthly decay, 12-18% of that list is now invalid. Re-verify every 90 days.
-
Sending to invalid emails one more time. "Maybe it was a temporary bounce." If verification returns invalid, the mailbox doesn't exist. Sending again won't fix it. Remove permanently.
-
Not updating CRM with verification status. Verification without recording the result means the data decays silently. Update CRM fields immediately.
Execution Artifacts
references/framework-notes.md— Named frameworks and reference tablestemplates/output-template.md— Deliverable shell for agent outputscripts/check-output.py— Lightweight deliverable validator
Related Skills
- email-finding: Find emails before verifying them
- email-deliverability: Full deliverability strategy beyond verification
- list-building: Build and maintain clean prospect lists
- deliverability-monitoring: Ongoing monitoring of bounce rates and reputation