Why are Gmail emails flagged with 'Images are hidden, this message might be suspicious' banner?

Updated on 9 Oct 2026: We clarified Gmail image warnings, corrected sender requirements, and added guidance on open tracking.
Gmail shows the "Images are hidden, this message might be suspicious" banner when it considers the sender or delivered message suspicious and stops external images from loading automatically. Check sender reputation, especially after introducing a sending domain or IP, changing volume, or sending traffic that recipients did not request. The banner is not a single error code, and it is not proof that DMARC, SPF, or DKIM failed.
Treat the banner as a message-level investigation first. A domain can have strong overall reputation and still get the banner on one welcome email, one support alias, one IP in a pool, or one campaign template. Gmail can adjust how it displays warnings, but the investigation still starts with the exact email Gmail received.
- Fast answer: inspect the delivered MIME, authentication results, sending source, image URLs, and tracking paths for the exact message that triggered the banner.
- Reputation check: review whether domain, IP, volume, list, or sending-pattern changes preceded the warning.
- Important caveat: the message can still land in the inbox or Primary tab while Gmail hides images. Inbox placement and image loading are separate decisions.
What the Gmail banner means

Gmail email showing the 'Images in this message are hidden' suspicious-message banner.
The banner means Gmail is blocking external image loads for that message until the recipient chooses to show images. External images include design assets, product images, logos, and tracking pixels that can tell a sender an image was requested. Google's image guidance says Gmail scans images for suspicious content and withholds them when it considers the sender or message suspicious.
The warning often points to a trust problem somewhere in the delivered email. Low sender reputation, user complaints, unsolicited traffic, inconsistent identity, or a risky link or image can contribute to that judgment. A broken image URL can explain why an image is missing, but it does not by itself prove why Gmail displayed the suspicious-message banner.
Do not diagnose this from the template alone
The HTML in an email builder is not always the HTML Gmail evaluates. Click tracking, open pixels, image hosting transforms, link rewriting, forwarding, and personalization can change the final body. Always inspect the delivered message.
|
|
|
|---|---|---|
Images hidden with a suspicious or spam warning | Gmail has withheld external images after a suspicious-message check | Delivered message, sender and source |
Inbox delivery | Message accepted | Recipient tests |
One template | Campaign-specific signal | Controlled variants |
One mailbox | Recipient-specific signal | Fresh account |
Images hidden without a suspicious warning | A recipient image preference can explain this | "Ask before displaying external images" setting |
Broken image after choosing to display images | A loading or hosting defect needs investigation | Final image URL and response |
"Be careful with this message" | A separate Gmail security warning | Read that warning and inspect authentication and links |
How to separate warning signals from normal email behavior.
Sender and message checks
Start with sender reputation and traffic quality. Review whether a domain or IP has little history, infrastructure changed, volume rose sharply, recipients did not opt in, or complaints increased. Gmail does not publish a complete trigger list, so treat these as investigation priorities rather than a definitive formula.
Reputation and sending checks
- New identity: a new domain or IP has limited sending history; a changed DKIM identity needs comparison with the established source.
- Unwanted mail: cold email, stale lists, and weak consent create complaint and engagement patterns associated with spam.
- Traffic change: compare any volume increase, new sending pool, or new message stream with the established sending pattern.
- Template history: compare welcome emails and automated flows for complaints, unwanted recipients, and signup abuse.
Message and URL signals
- Domain identity: compare the visible From domain with the authenticated SPF/Return-Path and DKIM d= domains. Image and click domains need separate URL checks; they are not DMARC identifiers.
- Tracking chain: open tracking and click redirects add domains and requests that need separate testing.
- Risky content: deceptive copy, misleading links, or unsafe remote content can make the message suspicious.
- Bot abuse: fake signups can send legitimate welcome mail to bad or unwilling recipients.
Broken, private, or slow image URLs still deserve testing because they can prevent images from rendering and complicate diagnosis. They should not displace the reputation investigation. Compare affected and clean messages by recipient, IP, authentication domain, template, and recent sending change.
Triage priority for the banner
Suggested investigation priorities based on the affected scope, not Gmail severity ratings or diagnostic thresholds.
Low
1 mailbox
One recipient, no repeat pattern
Medium
1 flow
One campaign or template
High
Many users
Many Gmail recipients
Critical
Inbox loss
Banner plus spam placement
Why Gmail image settings do not override the warning
On desktop, a recipient can choose "Always display external images" under Settings > See all settings > General > Images, but Google says images still are not shown automatically when Gmail considers a sender or message suspicious. Changing the general image preference therefore does not fix the sender-side reason for this banner.
- Recipient action: choosing "Show images" or "Display images below" allows image loading for that message but does not guarantee that images in future messages will load automatically.
- General setting: "Always display external images" controls normal image behavior, subject to Gmail's suspicious-message checks.
- Sender fix: investigate permission, complaints, reputation, authentication, message content, and infrastructure changes.
Use a fresh message for every retest
Do not keep reopening the same delivered email after a recipient has clicked "Show images". Send a new copy after each controlled change so the result is not confused with a previous recipient choice.
How hidden images affect open tracking
An open-tracking pixel is a remote image, often 1 x 1 pixels. When Gmail withholds external images, it also withholds that pixel until images are allowed. A recipient can read the email without recording a pixel-based open, so tracked opens can fall while inbox delivery stays stable.
Gmail normally fetches remote images through Google's image proxy, which changes what the image host sees. Google still says senders sometimes learn whether an image-bearing email was opened. The suspicious-message banner does not establish a blanket ban on open tracking.
- Inspect delivered HTML for remote images in the signature and invisible tracking pixels, even when the email looks like plain text.
- Compare Gmail tracked opens with recipient replies and conversions before concluding that delivery declined.
- Use filtered click data alongside those signals; automated security scans can produce clicks without recipient engagement.
- Keep tracking removal as a controlled test. If the warning persists, continue checking sender trust and the delivered message.
How to diagnose Gmail's images-hidden warning
Use a simple rule: test the exact message Gmail received, not the message that was intended. Send a real copy to a Gmail mailbox, then inspect the delivered source. Check authentication results, the sending IP, every image source, the tracking pixel, and each click link.
A practical first step is to send a copy through Suped's email tester and compare its headers, links, and authentication results with the delivered Gmail copy. The test does not predict whether Gmail will hide images. Use Suped's domain health checker to check authentication and DNS configuration.
Email tester
Send a real email to this address. Suped shows a results button when the test is ready.
?/43tests passed
- Capture source: in Gmail on desktop, open the More menu next to Reply and select Show original. Save the delivered source with full headers.
- Check authentication: read Gmail's Authentication-Results for SPF, DKIM, and DMARC. Compare From with DKIM d= and SPF smtp.mailfrom, normally reflected in Return-Path. Check forward/reverse DNS and SMTP TLS separately.
- List URLs: extract every image source, tracking pixel, click redirect, and visible link after all rewrites.
- Fetch images: use an unauthenticated GET request, follow redirects, and verify a final success response containing an image with the correct Content-Type and valid HTTPS. A HEAD response alone does not prove the image can be fetched.
- Compare versions: send controlled versions with and without tracking to isolate the open pixel and redirects.
- Segment senders: compare by IP, DKIM domain, From domain, message stream, recent volume, and recipient type.
- Check reputation: review sending IP and domain blocklist (blacklist) status, plus image, tracking, and destination domains. Compare complaints, list quality, and traffic spikes; a clean blacklist result does not establish Gmail trust.
URL checks for image and tracking pathsbash
curl -sS -L --max-redirs 5 --max-time 20 -D - -o /dev/null https://img.example.com/email/logo.png curl -sS -L --max-redirs 5 --max-time 20 -D - -o /dev/null https://click.example.com/r/abc123 openssl s_client -connect img.example.com:443 -servername img.example.com -verify_hostname img.example.com -verify_return_error </dev/null
For an image URL, verify that an unauthenticated GET reaches a final 200 response with an image Content-Type and an actual image body. A 403, 404, 5xx response, expired certificate, redirect loop, or bot challenge can stop rendering. Check access without login cookies because Gmail fetches images through a proxy. Record failures as URL defects, then continue investigating the suspicious-message warning; successful image hosting alone does not resolve it.
Authentication still matters
This banner can appear even when SPF, DKIM, and DMARC pass. Authentication still matters because Gmail needs a stable identity for reputation. All senders to personal Gmail accounts need SPF or DKIM. Bulk senders, at least 5,000 messages a day counted across a primary domain and its subdomains, need both SPF and DKIM, a DMARC policy of at least p=none, and visible From-domain identifier alignment through SPF or DKIM. These are Google's sender requirements. Gmail began ramping up enforcement against non-compliant traffic in November 2025.
Google recommends keeping the user-reported spam rate below 0.1% and preventing it from reaching 0.3% or higher. Once classified as a bulk sender, a domain keeps that status. Bulk marketing and subscribed messages need RFC 8058 one-click unsubscribe headers and a visible unsubscribe link; honor requests within 48 hours. A body link alone does not meet the one-click requirement. See Google's sender FAQ.
Suped's DMARC monitoring groups reported sending sources and authentication results so you can compare the flagged message's IP and domains with known senders. Use those results to investigate source changes and SPF or DKIM failures, and use Suped's blocklist monitoring to follow listed sending IPs and domains. Authentication success does not establish that a message is safe or guarantee that Gmail will remove the banner.

Issue steps to fix dialog showing the issue overview, tailored fix steps, and verification action
Do not chase only one metric
A single high-level reputation score can look healthy while one campaign, IP, image host, or welcome flow is treated poorly. The banner can be local to a small part of the sending setup.
Reporting-only DMARC example, not a banner fixdns
Host: _dmarc.example.com Value: v=DMARC1; p=none; rua=mailto:dmarc@example.com
The p=none example requests monitoring; keep an existing quarantine or reject policy while investigating this banner. RFC 9989, published in May 2026, removed pct and introduced the optional t testing tag. Neither tag controls Gmail image display. Aggregate reports show sending sources and authentication results, not image warnings or message-body URLs. In Suped's product, open the issues view, identify any failing source, follow the fix steps, verify the DNS change, and check later reports for authentication results.
How to fix sender and image-loading issues
The fastest fix depends on the evidence. Start with permission and reputation, then use controlled message tests to isolate technical defects. Make the smallest production change that removes the risk signal.
- Send with consent: stop cold email and stale-list sends, confirm new subscriptions, and remove recipients who did not ask for the mail.
- Stabilize volume: introduce a new domain, IP, or sending stream gradually with engaged, permission-based recipients.
- Fix accessibility: make every image public without cookies, authentication, user-agent allowlists, or bot challenges.
- Use branded hosts: use sender-controlled image and tracking subdomains where supported to simplify ownership checks. Branding alone does not guarantee that Gmail will remove the warning.
- Shorten redirects: reduce click tracking hops and avoid routing visible links through unrelated domains.
- Split streams: separate transactional and marketing flows for diagnosis and traffic management. Streams that share domains or IPs can still share reputation.
- Stop abuse: protect signup forms so bot-created accounts do not generate welcome mail to bad or unwilling recipients.
- Reduce tracking: test the same email without the open pixel and with fewer link rewrites to see whether the banner disappears.
- Keep content readable: put essential instructions and calls to action in live HTML text, and give email images descriptive alt attributes so the message remains useful when images are hidden.

Flowchart for diagnosing Gmail's images-hidden suspicious-message warning.
If the banner affects only a welcome email, do not change the whole program first. Compare that welcome email with a clean transactional email from the same source. Test removal of the tracking pixel first, then test the image host in a separate fresh copy. Repeat the comparison across affected and unaffected recipients before treating a disappearing warning as evidence of a fix.
How to test for a Gmail filtering change
Gmail can change filters, warning copy, or the visibility of an existing judgment. Sender-side evidence still decides the next action. If only one mailbox, campaign, or source sees the banner, assume a local trigger until tests show a broader Gmail change. A drop in tracked opens alone does not prove Gmail disabled open tracking.
Looks like a Gmail-side change
- Wide scope: unrelated senders report the same banner across different mail types.
- Same setup: no changes occurred in hosting, tracking, authentication, volume, lists, or templates.
- Mixed impact: messages stay in the inbox but images are blocked more often than before.
Looks like a sender-side issue
- Narrow scope: one template, IP, alias, segment, or recipient type is affected.
- Source change: the sending domain, IP, DKIM identity, volume, image host, or tracking domain changed recently.
- Reputation signal: complaints, weak engagement, unsolicited mail, or bot signups increased before the banner appeared.
A clean retest beats speculation
Send controlled variants of the original message with one change in each version. Keep the From domain, subject, body copy, and recipient type consistent. Repeat a promising variant across affected Gmail mailboxes; one disappearing banner is a clue, not proof that the changed element was the cause.

