Email verification

    Email verification for GoHighLevel: how to clean contact lists before sending

    Verify GoHighLevel contacts in bulk, tag risky emails automatically, and keep your bounce rate under the 2% mark every ESP cares about.

    Afsan Rahmatullah
    Afsan RahmatullahMailerMonk

    Updated May 5, 2026

    Cold or imported contact lists almost always carry the same hidden tax: a slice of dead mailboxes, role accounts, and spam traps that quietly tank your sender reputation the moment you press Send. For GoHighLevel agencies this is doubly painful — bounces don't just hurt one campaign, they degrade the shared sub-account reputation that every workflow depends on.

    Email verification is the cheapest insurance against that. By checking each address before it lands in a campaign you avoid the bounce events that mailbox providers (Gmail, Outlook, Yahoo) treat as a signal that you don't know who you're emailing. The MailerMonk verifier is built for the GoHighLevel data model: results are written back as contact tags so your existing automations and segments keep working.

    Verify a GoHighLevel sub-account list in five steps

    1. Open the embedded MailerMonk app inside the sub-account

      From the GoHighLevel left-hand menu, click MailerMonk. The app loads inside the sub-account so you never leave the GHL UI. If you don't see the menu item, install MailerMonk from the agency dashboard once — it'll appear in every sub-account afterwards.

    2. Open the Contacts tab and pick a list

      Filter or smart-list contacts the same way you would for a campaign. Up to 1,000 contacts can be selected per batch — for larger lists, run them sequentially. We recommend starting with anything imported in the last 90 days and any list that's never been verified.

    3. Click Verify and wait for the run

      MailerMonk runs an SMTP-level handshake against each address (no actual email is sent). Typical runs of 1,000 contacts complete in under two minutes. The page shows live progress and a summary of valid / invalid / risky / unknown buckets.

    4. Review the tags written back to GoHighLevel

      Every verified contact gets one of the following tags: mm-valid, mm-invalid, mm-risky, mm-unknown, mm-disposable, or mm-role. Use these in your existing campaign filters — exclude mm-invalid and mm-disposable from cold sends, send re-engagement to mm-risky separately.

    5. Wire it into onboarding so you never have to think about it again

      Add a GoHighLevel workflow trigger on "Contact Created" that calls MailerMonk via the API key (see the API keys guide). New contacts will be verified within seconds of landing, and only verified addresses ever enter your nurture sequences.

    What MailerMonk checks (and why each one matters)

    Syntax & MX: every address is parsed against RFC 5321 and the domain's MX records are resolved. Failed syntax or NXDOMAIN domains are an instant invalid — these are the highest-confidence bounces and the cheapest to drop.

    SMTP handshake: we open a connection to the receiving server and issue a RCPT TO probe. If the server rejects the recipient at the protocol level, the address is marked invalid without ever sending content. This is the same probe ESPs run internally before accepting your send.

    Disposable & role detection: addresses on known throwaway domains (Mailinator, 10MinuteMail, etc.) and role mailboxes (info@, sales@, support@) are flagged separately. Both can deliver, but both correlate strongly with low engagement and high spam-complaint rates.

    Catch-all / accept-all: some servers (Microsoft 365 in particular) accept every recipient and only sort delivery internally. We mark these as risky rather than valid — sending to risky addresses on a fresh domain is one of the fastest ways to get throttled.

    Bounce rate targets by mailbox provider

    Gmail and Yahoo's 2024 bulk-sender requirements explicitly call out a 0.3% spam complaint threshold and an implicit bounce ceiling around 2%. Microsoft 365 is less public about thresholds but starts throttling aggressively north of 5% bounces over a 7-day window.

    Verifying every list before send is the single most effective lever to stay under all three. Tools like SPF, DKIM, and DMARC matter (see our DMARC checker), but no amount of authentication will save you from a list with 30% dead addresses.

    Frequently asked questions

    Does email verification send anything to the contact?

    No. The SMTP handshake stops at the RCPT TO command — no DATA command is ever issued, so no email is delivered, no read receipt is generated, and the contact has no way to know they were verified.

    Will MailerMonk get my IP blocked while verifying?

    Verification runs from MailerMonk's pooled outbound IPs, not yours. We rotate, throttle, and back off intelligently per receiving domain so a single agency's run never exhausts a provider's rate limits.

    How accurate is the verification?

    Industry-standard accuracy is 95–98% for valid/invalid classifications. Catch-all (accept-all) servers cap the upper bound — for those, MailerMonk returns risky rather than guessing, which is the honest answer.

    How much does it cost per verification?

    Pricing is per-credit and tiered by volume. The first 100 verifications per sub-account per month are included on every paid plan. See the live pricing on the MailerMonk pricing page.

    What's the difference between risky and invalid?

    Invalid means the receiving server explicitly rejected the address at SMTP level — sending will bounce. Risky means the server accepted everything (catch-all) or returned an ambiguous response — sending may deliver but engagement and complaint risk are higher than for valid.

    Run a free deliverability audit on your sending domain

    MailerMonk's audit checks DMARC alignment, SPF lookups, DKIM keys, MX records, and major blocklists in under a minute. No signup, no card.

    Related reading

    About the author

    Afsan Rahmatullah
    Afsan Rahmatullah
    MailerMonk

    Building tools that keep cold email out of spam. Writes about deliverability, DMARC, and what actually moves inbox placement.