WordPress images not showing: how to fix it
Images show as broken icons, blank boxes, or are missing from the media library. The cause is usually one of five things, and you can check them in this order.
What to check, in order
- Open a broken image in a new tab. Right click, open image in new tab. A 404 means the file is missing or the address is wrong. A 403 means the server refuses to serve it. A security warning means mixed content.
- Moved to https or a new domain? Old image addresses still point at http or the old domain. Use a search and replace plugin such as Better Search Replace to change the old address to the new one in the database. Back up first.
- File permissions. Folders in
wp-content/uploads should be 755 and files 644. Wrong permissions after a migration give 403 errors.
- A lazy load or image optimizer plugin. Turn off lazy loading, image optimization and CDN plugins one at a time. If images come back, that plugin is the cause.
- Hotlink protection or a CDN. Your host or Cloudflare may block images when the address does not match. Check hotlink protection settings in your hosting panel.
- Upload path. In Settings, Media, the upload folder should be empty or
wp-content/uploads. A leftover path from an old server breaks every new upload.
If none of this finds it, send me the page address and I will tell you why the images fail.
Want the rest of your site checked after it is back? Run a free 40-point check at tinkeraudit.com.