You type in yourdomain.com/wp-admin, press Enter — and nothing happens. Or you get a blank white screen. Or the page just spins endlessly, never actually loading. Or maybe you can log in but the dashboard itself is broken — widgets missing, menus not responding, the screen completely empty.
Being locked out of your own WordPress admin dashboard is one of the most disorienting problems a site owner can face. Everything else on your site might be working fine — but without dashboard access, you can't update plugins, publish content, change settings, or fix anything else.
The good news: every variation of this problem has a clear cause and a clear fix. This guide walks through every known reason the WordPress admin dashboard fails to load — and exactly how to resolve each one, step by step.
Before jumping into fixes, it helps to identify which specific failure you're experiencing — because each points to a different root cause:
Each scenario is covered below with its specific fix.
wp-admin/ or wp-includes/ prevent the dashboard from assembling correctly.Always start with the simplest possible cause — browser-level issues are responsible for a surprising number of WordPress admin loading problems.
Hard refresh your browser:
Ctrl + Shift + RCmd + Shift + RClear your browser cache completely:
Test in a private/incognito window:
Private browsing bypasses both cache and extensions entirely. If wp-admin loads fine in an incognito window, your browser cache or an extension is the culprit.
Disable browser extensions:
Ad blockers, privacy extensions, and script blockers are particularly likely to interfere with wp-admin's JavaScript. Disable all extensions temporarily and reload wp-admin. If it loads, re-enable extensions one by one to identify the offending one.
Try a completely different browser:
If wp-admin loads in Chrome but not Firefox (or vice versa), the issue is browser-specific and almost certainly related to cache or extensions.
Plugin conflicts are the most common server-side cause of a broken WordPress admin dashboard. Since you can't access wp-admin to deactivate plugins the normal way, you'll need to do it via FTP.
Step 1: Connect via FTP
/wp-content/Step 2: Rename the plugins folder
plugins folderplugins_disabledyourdomain.com/wp-admin/WordPress will detect that the plugins folder is missing and automatically deactivate all plugins. If the dashboard loads, a plugin was the cause.
Step 3: Identify the culprit plugin
plugins_disabled back to pluginsIf deactivating plugins didn't fix the problem, your active theme may be running code in the admin area that's causing the conflict.
/wp-content/themes/divi to divi_backup)If the dashboard loads with the default theme active, your theme was the cause. Options:
The WordPress admin dashboard loads considerably more code than the front end — admin scripts, plugin settings panels, the block editor, widget areas, and more all load simultaneously. This means the dashboard is much more likely to hit PHP memory limits than regular front-end pages.
Add to wp-config.php:
wp-config.php in your WordPress root/* That's all, stop editing! */:define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
WP_MAX_MEMORY_LIMIT specifically increases the memory ceiling for admin-side operations — this is the one that matters most for wp-admin loading issues.
If wp-admin is redirecting incorrectly, returning a 404, or loading the front end instead of the dashboard, a URL misconfiguration is likely the cause — especially if this started after a migration, domain change, or SSL certificate installation.
Via wp-config.php (works even when locked out of admin):
wp-config.php via FTP/* That's all, stop editing! */:define( 'WP_HOME', 'https://yourdomain.com' );
define( 'WP_SITEURL', 'https://yourdomain.com' );
Replace https://yourdomain.com with your actual domain — ensuring you use the correct http/https and www/non-www version.
Via phpMyAdmin (most reliable):
wp_options tableoption_name is siteurl and homeoption_value to your correct domainhttp:// stored in the database but your site now uses https://. www.yourdomain.com in one field and yourdomain.com in another. A staging or localhost URL leftover from a migration (e.g., http://localhost/mysite).If you're seeing a blank screen or a cryptic error and don't know what's causing it, enabling debug mode will reveal the exact PHP error — file name, line number, and error type — instead of a blank page.
wp-config.php via FTPdefine( 'WP_DEBUG', false );
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', true );
@ini_set( 'display_errors', 1 );
Instead of a blank screen, you should now see the actual PHP error. The error message will tell you exactly which plugin, theme file, or core function is responsible.
define( 'WP_DEBUG', false ); — You can also check the debug log at /wp-content/debug.log for errors that occurred before you enabled debug mode.If wp-admin loads but is broken — empty panels, non-responsive menus, missing widgets, or a blank content area — a JavaScript conflict is most likely the cause. This is different from a PHP error, which prevents the page from loading at all.
How to identify a JavaScript error:
F12 on Windows, Cmd + Option + I on Mac)Common JavaScript conflict causes:
Fix: Once you identify the script causing the error (the console message will show the file name), trace it back to the plugin or theme that loads it. Deactivating that plugin or switching themes will resolve the conflict.
If the dashboard fails to load after a WordPress update, or if you suspect malware has tampered with core files, re-uploading fresh WordPress admin files can fix the problem without affecting your content, plugins, or database.
wp-content folder from the unzipped package — never overwrite your live wp-contentwp-admin folder to your WordPress root, overwriting existing fileswp-includes folder as well, overwriting existing fileswp-config.phpTry loading wp-admin after the upload is complete. This replaces every WordPress core file while leaving all your content, settings, plugins, and themes intact.
If you can log in to wp-admin but see a restricted dashboard — missing menus, "You do not have permission" messages, or an almost empty interface — your admin user's capabilities in the database may be corrupted.
Check via phpMyAdmin:
wp_usermeta tablewp_users table for your username)wp_usermeta by your user IDmeta_key = wp_capabilitiesmeta_value should be exactly:a:1:{s:13:"administrator";b:1;}
If it shows a different role, is empty, or contains garbled data, click Edit and replace the value with the string above exactly.
meta_key = wp_user_level and confirm meta_value = 10In rare cases — particularly on resource-limited hosting — the WordPress admin toolbar or admin color scheme CSS can fail to load correctly, causing the dashboard to appear blank or broken.
Disable the admin toolbar via wp-config.php:
add_filter( 'show_admin_bar', '__return_false' );
This is more commonly added to functions.php, but it can be tested quickly via wp-config.php as a temporary diagnostic measure.
Reset the admin color scheme:
If the dashboard loads but is visually broken (missing styles), the admin color scheme CSS may be failing. Via phpMyAdmin:
wp_usermeta tablemeta_key = admin_colormeta_value to fresh (the default WordPress color scheme)If none of the above fixes have identified the problem, your server's error logs will contain the raw PHP or Apache error that's causing the dashboard to fail.
Via cPanel:
Via FTP:
Error logs are sometimes written to your WordPress root directory as error_log or to a /logs/ folder on your server. Download and open the most recent log file and look for PHP Fatal error entries.
If you've worked through every fix in this guide and wp-admin still won't load, the problem may be at the server infrastructure level — something only your hosting provider can address.
Contact support and provide:
Good hosting providers can check:
| Symptom | Most Likely Cause | Fix |
|---|---|---|
| Blank white screen on wp-admin | Plugin conflict or PHP memory | Deactivate plugins via FTP, increase memory limit |
| wp-admin redirects to login | Cookie issue or URL mismatch | Clear cookies, fix WP_SITEURL in wp-config.php |
| 500 error on wp-admin | PHP fatal error | Enable debug mode to identify error, re-upload core files |
| 404 on wp-admin | URL misconfiguration | Fix WP_HOME and WP_SITEURL |
| Dashboard loads but is empty | JavaScript conflict | Check browser console for JS errors, deactivate plugins |
| "No permission" message | Corrupted user capabilities | Fix wp_capabilities in wp_usermeta via phpMyAdmin |
| Dashboard spins forever | JavaScript or resource loading failure | Disable browser extensions, check console for errors |
| Broke after WordPress update | Corrupted core files | Re-upload wp-admin and wp-includes via FTP |
wp_capabilities user meta value is corrupted or set to a non-admin role. Fix it via phpMyAdmin as described in Fix 9.
A WordPress admin dashboard that won't load is disorienting — but it's never permanent. Work through the fixes systematically: start with your browser, then move to plugins, theme, memory, URLs, and core files. In almost every case, one of these steps will restore your access well before you reach the end of the list.
The most important thing is not to panic. Your content is safe in the database. Your site's front end is likely still running. You just need to identify and remove the one obstacle preventing WordPress from assembling the admin interface.
If you've tried everything and still can't get into your dashboard, our WordPress development team can diagnose and restore wp-admin access quickly — we've seen and solved every variation of this problem.
Contact us today