Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If Safari shows text but leaves photos, logos, or thumbnails blank, the display itself is rarely broken. A blocked resource, stale site data, content blocker, disabled JavaScript, privacy setting, VPN, security filter, network problem, or a fault on the website is more likely. Work from the least disruptive test to the most specific fix: reload, compare another network or private window, test extensions, remove only the affected site’s data, review JavaScript and privacy settings, then update Safari and report a site-specific failure.

First, identify how broad the failure is

Reload the page once, then check whether the problem affects one page, one website, or every website.

  • One page: the page may have failed to load completely, or its image requests may be blocked.
  • One website: saved data, a per-site setting, an extension, or that site’s image delivery is the likely layer.
  • Every website: look at Safari settings, content blockers, Private Relay, VPN or security software, and the network.

On an iPhone or iPad, open the same page using cellular data instead of Wi-Fi, or join another Wi-Fi network. On a Mac, open a Private window and test there. If images appear in the alternate environment, the original network, site state, extension, or privacy layer is implicated. If they fail everywhere, the website or your device-wide configuration needs attention.

Fix missing images on iPhone or iPad

1. Reload and test another connection

Tap the reload button in Safari. Then switch from Wi-Fi to cellular data (or the reverse) and load the page again. A filtered, captive, or unreliable network can allow HTML text through while image requests time out or are denied.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

2. Review Safari extensions and content blockers

Open Settings > Apps > Safari > Extensions. Temporarily turn off content blockers and other extensions, return to Safari, and reload. Blockers can intentionally prevent images, scripts, trackers, cookies, pop-ups, or other resources from loading. Re-enable each extension after testing so you can identify the one that changes the result.

3. Remove data for the affected website

For a targeted reset, open Settings > Apps > Safari > Advanced > Website Data, find the domain, and remove it. This is less disruptive than deleting all history and website data, but it can still sign you out or discard that site’s saved state. Use Clear History and Website Data only when a broader reset is justified.

4. Check JavaScript, cookies, and privacy controls

Some sites build image galleries or image URLs with JavaScript. Confirm JavaScript is enabled in Safari’s settings. If a site requires cookies or cross-site tracking for its image host, review those privacy controls before changing global protections. Make one change at a time and reload so you know which setting mattered.

5. Test Private Relay, VPN, and security apps

Temporarily disable a VPN or network-monitoring/security app and retry. Apple notes that a VPN can cause websites or apps to block content. For a site-specific problem, temporarily turn off iCloud Private Relay for the connection or website, then test again. Restore the protection after diagnosis if it is not the cause.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

6. Update and restart

Safari updates arrive with iOS and iPadOS. Install available system updates, restart the device, and test the page again. A restart can clear a stalled network process or temporary browser state.

Fix missing images on Mac

1. Use a Private window as a quick isolation test

Choose File > New Private Window, visit the same URL, and compare it with the normal window. Private browsing reduces the influence of existing site data. If images work privately, focus on extensions, cookies, cached data, or per-site settings in the regular session.

2. Disable extensions for the test

Choose Safari > Settings > Extensions. Clear the checkbox beside content blockers and other extensions, reload the affected site, and then turn extensions back on one at a time. You can also disable a blocker only for the affected website when that control is available.

3. Delete only the affected site’s data

Choose Safari > Settings > Privacy > Manage Website Data. Search for the domain, select it, and choose Remove. This targeted action may sign you out of that site but avoids wiping unrelated logins and preferences. Use Remove All only if several sites show the same failure and narrower steps did not help.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

4. Check per-site permissions and JavaScript

Open the site, choose Safari > Settings for This Website, and inspect content blockers, pop-up behavior, camera/microphone permissions, and other available controls. In Safari settings, verify JavaScript is enabled. A web page may not be compatible with one or more browser settings; changing a global privacy option should be a last resort and should be tested immediately.

5. Test Private Relay, VPN, and filtering software

Disconnect a VPN temporarily and pause antivirus, DNS filtering, proxy, or network-monitoring software long enough to reload the page. If the image requests succeed only when a filter is paused, add a narrowly scoped exception rather than leaving all protection disabled. Also test another network or a phone hotspot to distinguish Mac settings from network filtering.

6. Update macOS and restart

Install pending macOS updates, restart the Mac, and retry. Safari is updated as part of macOS, so updating the browser separately is generally not an option.

Use the symptom to choose the next layer

What you observe Most likely layer Next action Risk or scope
Images work on another network Wi-Fi, DNS, VPN, proxy, or security filter Disconnect the VPN/filter briefly and test; contact the network administrator if required Network-wide; avoid permanent broad exceptions
Images work in a private window Stored site data or an extension Disable extensions, then remove only that site’s data Targeted; removal may sign you out
Only one site fails in every Safari session Site code, image host, or site-specific compatibility Try another browser/device, then report the issue to the site owner Likely outside your Mac or iPhone
Every site fails after an extension is enabled Content blocker or extension rule Turn it off, identify the rule, and re-enable with a site exception if possible Keep protection on elsewhere
Images fail after a system or network change Safari setting, Private Relay, VPN, or update state Review the changed setting, update, restart, and retest Device-wide until isolated

When the website itself is responsible

If other sites display images and the affected domain still fails after extension, site-data, privacy, and network tests, the page owner may be serving broken URLs, denying Safari’s requests, misconfiguring an image CDN, or requiring a script that is incompatible with your settings. Try the page on another browser or device to document the scope. On Mac, use Safari’s website-issue reporting option; on iPhone or iPad, contact the site developer or support team. Include the URL, device model, operating-system version, Safari version when visible, network used, and whether a private window changed the result.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Performance and reliability checks

  • Use a different network before deleting browser data; it is the fastest low-risk test for filtering and DNS failures.
  • Change one variable at a time. Disabling every privacy control at once makes the cause difficult to identify and reduces protection unnecessarily.
  • Prefer removing one domain’s data over clearing all history and cookies.
  • After a fix, reload several pages on the same site, including a page with lazy-loaded images, to confirm the result is stable.
  • If images are intermittently missing, note whether the failures correlate with a VPN endpoint, weak Wi-Fi, or a particular image host; intermittent failures often indicate network or CDN issues rather than a display fault.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If you need a dependable image of a page for documentation, QA, or an automated workflow, ScreenshotNeo provides a website screenshot API and MCP server. It accepts consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be disabled. Only clean shots are billed: bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing, and response headers identify the page verdict and billing status.

One GET request returns PNG, JPEG, WebP, or PDF. The API supports full-page and element captures, lazy-image loading, dark mode, device presets and custom viewports, retina scale, PDF paper and page controls, custom CSS or JavaScript, clicks, waits, blocked resources, headers, cookies, user agents, authorization, timezone, geolocation, transparent backgrounds, resizing, chosen cache TTLs, signed image links, asynchronous webhooks, bulk capture of up to 100 URLs per call, usage reporting, and an OpenAPI specification. An MCP server exposes take_screenshot, get_page_info, and capture_pdf to Claude, Cursor, and other MCP clients.

See the ScreenshotNeo documentation for authentication and options.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

The Free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 shots; every feature is available on every plan. Create a free ScreenshotNeo account.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Frequently asked questions

Can a full Safari cache cause images to disappear?

Yes, but a single site’s stored data is the better first target. Remove that domain before clearing all Safari history and website data.

Why do images load on cellular but not Wi-Fi?

The Wi-Fi path may use DNS filtering, a proxy, VPN, captive portal, or security policy that blocks the image host. Compare another Wi-Fi network and inspect filtering software.

Should I leave content blockers disabled?

No. Disable them only long enough to identify the cause, then restore them and use a per-site exception if necessary.

Frequently Asked Questions

Could the image file format itself be incompatible with Safari?

It is possible, particularly on a site serving a malformed or unusual asset, but test another browser or device first. If only one domain fails, give the site owner the URL and reproduction details.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Will deleting website data remove my passwords?

It can remove that site’s cookies, sign-in state, and saved preferences. Passwords stored in iCloud Keychain are separate, but you may still need to sign in again.

How can I tell whether a VPN is the cause without permanently turning it off?

Disconnect it briefly, reload the page, and reconnect immediately. If the result changes, try another VPN endpoint or a narrow site exception rather than disabling protection globally.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.