WordPress Media Library Not Loading or Stuck Spinning
You open Media in WordPress and the library never fills in — the spinner keeps turning, the grid stays empty, or thumbnails show as grey boxes. Your images are almost always still there; something is stopping the library from displaying them.
Common signs of this issue
- The WordPress media library is not loading — Media, then Library shows a spinning circle that never stops.
- The grid is empty or says "No media items found" even though you know you have uploaded images.
- Thumbnails appear as grey boxes, broken image icons, or blank squares.
- The Add Media button or the image block's Media Library tab opens an empty window or hangs.
- Images still display fine on the live website — only the admin library is broken.
- It started after a plugin or theme update, a site move, or a change of hosting.
Safe checks you can do yourself
None of these require sharing passwords with anyone.
- Try the list view trick. At the top of Media, then Library, click the small list icon next to the grid icon (or add
?mode=listto the end of the upload.php address). List view loads in a simpler way. If your images appear there, the files and database are fine and the problem is the part of the admin that builds the grid. - Open the library in a private or incognito window, and then in a different browser. Browser extensions, especially ad blockers and privacy tools, can stop the grid from loading. If it works in private mode, the problem is on your computer, not the site.
- Open your browser's developer tools (press F12, or right-click and choose Inspect) and click the Console tab, then reload the library. Red errors often name the plugin or file responsible. Screenshot them — they are exactly what a developer will want.
- In the same developer tools, click the Network tab, reload, and look for a request called
admin-ajax.php. If it shows a status like 500, 403, or 400 in red, the server is refusing or failing that request. A 403 usually means a firewall or security plugin; a 500 usually means a plugin or theme error. - Think back to what changed. A plugin just updated or installed — especially image optimization, security, page builder, or media organization plugins — is the most likely culprit.
- Use the free Health Check and Troubleshooting plugin's troubleshooting mode. It turns off plugins and switches to a default theme only for your login, so visitors see nothing change. Re-enable plugins one at a time until the library breaks again.
- If thumbnails show as broken images, right-click one and open the image in a new tab. Look at the address: if it points to an old domain, a staging address, or http instead of https, the site's stored addresses were not updated after a move.
- Check Settings, then Media. If you see a field for the uploads folder path or URL that has something typed in it, that is a legacy setting that can point the library at the wrong place. Note what it says before changing anything.
- If files were uploaded by FTP or the hosting file manager, know that they will not appear in the library at all — WordPress only lists files added through WordPress. That is expected behavior, not a fault.
What this usually means
The media library grid does not load like a normal page. It asks the server in the background (through admin-ajax.php) for a list of your images and expects a clean data reply. If a plugin or theme prints an error into that reply, if a firewall blocks it, or if the server runs out of memory building it, the grid just keeps spinning. That is why the list view often works when the grid does not — list view is built on the server in one go and is less fragile.
The most common cause by far is a plugin or theme conflict, usually right after an update. Next come security rules (a security plugin, a host firewall, or Cloudflare blocking the admin request), server limits (PHP memory or time limits reached on a large library — see memory exhausted errors), and address problems after a move, where the library points to the old domain so thumbnails break. Less often, file permissions on the uploads folder stop images being read, which also tends to break uploads — see HTTP error uploading images.
Your images are rarely gone. The files live in the uploads folder and the records live in the database; the library is only a viewer. That is reassuring, but it also means the fix is about finding what interferes with the viewer rather than re-uploading anything. If images are also missing on the live site, that is a different and more serious problem — see images not loading.
What not to do
- Don't re-upload your whole image collection. It creates duplicates, fills your hosting space, and does not fix the cause.
- Don't delete files from the uploads folder by FTP to tidy up. Images removed that way break every page that uses them.
- Don't deactivate all your plugins at once on the live site. Use troubleshooting mode or a staging copy so visitors and forms are not affected.
- Don't change folder permissions to 777 because a forum post suggested it. That opens a serious security hole.
- Don't run a search-and-replace on the database to fix old addresses without a full backup first. One mistake can break the whole site.
- Don't assume it is a browser problem just because clearing the cache helped once. If it returns, look for the real cause.
When to get help
If list view is also empty, if the developer tools show server errors you cannot trace to a plugin, or if the problem began after a site move, it is time to get help. Those point to memory limits, firewall rules, file permissions, or stored addresses in the database — all fixable, but all places where a well-meant change can break other parts of the site. The same is true if thumbnails are broken site-wide, since repairing addresses or regenerating images is best done once, with a backup, by someone who can check the results. An experienced person will read the actual error, fix the one thing causing it, and leave the rest of your site alone.
Glenn runs WebsiteSelfHelp and fixes stuck and blank WordPress media libraries for small businesses, from plugin conflicts to post-migration address problems. Request a review with a screenshot of what you see (and the browser console, if you managed to open it), and you will get an honest read on the cause and the likely fix — no passwords needed up front.
Not sure what to do next?
Answer a few short questions and we'll point you to the safest next step — DIY, a freelancer, or a direct review. No passwords required.
Is this a business website? If this issue may be costing you leads, sales, or trust, you may want a direct review instead of trial and error.
Frequently asked questions
Why is my WordPress media library not loading?
Most often a plugin or theme conflict is breaking the background request that fills the library grid. Security rules, low server memory, and wrong addresses after a site move are the other common causes. Your images are usually still there.
Why does the media library work in list view but not grid view?
Grid view loads your images through a separate background request that is easily disrupted by plugin errors or firewalls. List view is built directly by the server, so it often works when the grid does not. That difference is a strong clue the problem is a conflict, not missing files.
Did I lose my images?
Almost certainly not. The library is only a viewer for files in your uploads folder and records in your database. If images still show on your live pages, they are safe.
Why don't images I uploaded by FTP show in the media library?
WordPress only lists files that were added through WordPress, because each one needs a database record. Files copied in by FTP exist on the server but are invisible to the library unless they are imported with a tool made for that.
Why are my media library thumbnails broken after moving the site?
The database usually still holds the old domain or an http address, so the admin tries to load thumbnails from the wrong place. A careful search-and-replace of the old address, done with a backup, is the normal fix.
Can a security plugin stop the media library from loading?
Yes. Security plugins and host firewalls sometimes block admin-ajax.php requests they consider suspicious. The browser's Network tab will show a 403 status if that is happening, and the rule can usually be relaxed for logged-in administrators.
How long does it take to fix a media library that won't load?
A plugin conflict is often found and fixed in under an hour. Problems caused by a site move or server limits can take longer, mainly because the fix should be tested with a backup in place.