In GoHighLevel, 'Sent' means GHL passed the email to your SMTP server. 'Delivered' means the receiving server accepted it (though this often doesn't update with custom SMTP). 'Opened' indicates the tracking pixel loaded. 'Bounced' means delivery failed. 'Failed' indicates SMTP rejected before sending. With custom SMTP, status often stays 'Sent' even after delivery—check your ESP for accurate status.
GoHighLevel Delivered vs Sent: What Each Email Status Actually Means
Understanding GHL Email Statuses
GoHighLevel tracks email through several statuses. What each means varies between LC Email and custom SMTP. See also stats not showing and tracking limitations.
| Status | Meaning | Reliability |
|---|---|---|
| Queued | Waiting to send | Accurate |
| Sent | Handed to SMTP | Accurate |
| Delivered | Server accepted | Often missing with custom SMTP |
| Opened | Tracking pixel loaded | Unreliable with custom SMTP |
| Clicked | Link clicked | Unreliable with custom SMTP |
| Bounced | Delivery rejected | Sometimes missing |
| Failed | Send failed | Usually accurate |
Status: Queued
What it means: GHL has received your send request and the email is waiting to be processed.
When you see it:
- Immediately after scheduling/triggering
- During large campaigns
- When queue is backed up
Normal duration:
- Small sends: Seconds to minutes
- Medium batches: 10-30 minutes
- Large campaigns: Hours
Concern if:
- Single email stuck for hours
- All sends stuck indefinitely
- Pattern across multiple contacts
Likely causes of stuck queue:
- SMTP credentials wrong
- SMTP connection failing
- Platform-wide issues
Status: Sent
What it means: GHL successfully passed the email to your SMTP server (LC Email or custom).
What it doesn't mean:
- Email was delivered
- Recipient received it
- It reached any inbox
"Sent" only confirms the first handoff. Everything after depends on SMTP server and receiving server.
With LC Email: Often progresses to "Delivered" With Custom SMTP: Often stays "Sent" forever
Practitioner note: Most GHL emails with custom SMTP show "Sent" as their final status. Don't interpret this as a problem—check your ESP dashboard to see actual delivery. "Sent" usually means "delivered but status didn't sync."
Status: Delivered
What it means: The receiving mail server accepted the email for delivery.
What it doesn't mean:
- Email reached inbox (could be in spam)
- Email was opened
- Recipient saw it
With LC Email: Updates fairly reliably With Custom SMTP: Often doesn't update
The Delivered Gap
With custom SMTP, most emails that actually deliver still show "Sent" in GHL:
GHL shows: Sent
ESP shows: Delivered
Reality: In recipient's inbox
GHL is wrong. ESP is right.
Always trust your ESP for delivery confirmation.
Status: Opened
What it means: The tracking pixel in the email loaded.
What might cause this:
- Recipient opened email
- Email preview pane loaded
- Apple Mail Privacy Protection pre-loaded
- Security scanner processed email
- Email client background load
What it doesn't mean:
- Recipient read the content
- Recipient engaged
- Email was truly "opened" by a human
The Tracking Pixel Problem
With custom SMTP, open tracking often fails:
- Pixel loads but GHL doesn't record
- ESP shows opens, GHL shows zero
- Data completely missing from reports
Apple Mail Privacy Protection
Since iOS 15, Apple Mail pre-loads tracking pixels:
- All Apple Mail users appear to "open"
- True open rate is lower than reported
- Affects 40-50% of many lists
Status: Clicked
What it means: A tracked link was clicked.
More reliable than opens because:
- Requires actual user action
- Not triggered by previews
- Not affected by privacy features
With custom SMTP: Often doesn't sync to GHL. Check ESP.
Status: Bounced
What it means: The receiving server rejected the email.
Types:
- Hard bounce — Permanent failure (invalid address)
- Soft bounce — Temporary failure (full mailbox)
What you should do:
- Hard bounces: Remove contact immediately
- Soft bounces: Retry once, then remove if persistent
With custom SMTP: May not sync to GHL. Check ESP for bounce list.
Status: Failed
What it means: GHL couldn't send the email at all.
Common causes:
- SMTP credentials invalid
- SMTP server unreachable
- Authentication failure
- Email rejected by ESP before sending
Action required: Fix SMTP configuration.
This is different from bounced:
- Failed = Never left your system
- Bounced = Left but was rejected by recipient
Status Flow Diagram
Normal successful email:
Queued → Sent → Delivered → [Opened] → [Clicked]
Hard bounce:
Queued → Sent → Bounced
SMTP failure:
Queued → Failed
Custom SMTP typical (even when successful):
Queued → Sent (stuck here)
Where Status Gets Stuck
Stuck on Queued
Diagnose:
- Check SMTP credentials in Email Services
- Verify domain is configured
- Send test email to confirm connection
Stuck on Sent
With custom SMTP: This is normal. Check ESP for delivery.
With LC Email: May indicate delivery delay. Wait and recheck.
Showing Bounced
For hard bounces: Contact should be suppressed. Verify in GHL.
If showing bounced but you know it delivered: GHL data is wrong. Trust ESP.
Getting Accurate Status Information
Since GHL statuses are unreliable with custom SMTP:
Check Your ESP
Mailgun: Logs > Events > Search by email SendGrid: Activity > Search by email AWS SES: CloudWatch or SNS notifications
What ESP Shows
| ESP Status | Meaning |
|---|---|
| Accepted | ESP accepted for sending |
| Delivered | Receiving server accepted |
| Bounced | Receiving server rejected |
| Complained | Recipient marked as spam |
| Opened | Tracking pixel loaded |
| Clicked | Link clicked |
Trust these over GHL statuses.
For Client Reporting
Don't show GHL email stats to clients. Instead:
- Export from ESP dashboard
- Create summary report
- Present accurate numbers
Status-Based Automation
You can trigger GHL automations on email status, but be careful:
Works reliably:
- Send email action completed
Works sometimes:
- Bounced (with LC Email)
- Clicked (with LC Email)
Doesn't work reliably:
- Opened (with custom SMTP)
- Delivered (with custom SMTP)
Don't build critical workflows on statuses that don't update.
Practitioner note: I've seen agencies build "re-engage if not opened" automations that don't work because opens never register. Test any status-based automation before relying on it.
The Bottom Line
- GHL statuses with LC Email: Fairly reliable
- GHL statuses with custom SMTP: Often inaccurate
- Your ESP dashboard: The source of truth
If email status accuracy matters for your reporting or automations, you need to pull data from your ESP, not rely on GHL.
If you need help building reliable email reporting and automation that works around GHL's limitations, schedule a consultation.
Sources
- GoHighLevel: Email Services Documentation
- Mailgun: Event Types
- SendGrid: Email Activity
v1.0 · March 2026
Frequently Asked Questions
What does 'Sent' mean in GoHighLevel email?
'Sent' means GHL successfully handed the email to your SMTP server. It doesn't confirm the email was delivered or received. With custom SMTP, emails may stay at 'Sent' status indefinitely even if they delivered successfully.
Why does my GoHighLevel email show 'Sent' but not 'Delivered'?
The delivered status requires a callback from your ESP confirming delivery. With custom SMTP, this callback often doesn't update GHL. Check your ESP dashboard to confirm actual delivery—the email probably delivered fine.
What's the difference between Bounced and Failed in GoHighLevel?
'Bounced' means the receiving mail server rejected the email (invalid address, full mailbox, etc.). 'Failed' typically means the SMTP connection failed before sending (wrong credentials, server down). Bounced is recipient-side; Failed is sender-side.
Why are my GoHighLevel emails stuck on 'Queued'?
'Queued' means GHL accepted the send request but hasn't processed it yet. Large batches queue longer due to throttling. If stuck for hours, check SMTP configuration—the connection may have failed.
Does 'Opened' in GoHighLevel mean the email was read?
'Opened' means the tracking pixel loaded, indicating the email was displayed. Privacy features (Apple Mail) may trigger opens without reading. Some opens are bots. True read rate is lower than reported. With custom SMTP, open tracking often doesn't work.
Want this handled for you?
Free 30-minute strategy call. Walk away with a plan either way.