A WordPress admin plugin to Customize and secure your WordPress dashboard
Dark or light? The choice follows you: dark mode in the WordPress admin
A button that's always within reach flips the whole dashboard. The preference belongs to each user and travels with the account: it's there on the same site from another computer, with nothing to reconfigure.The switch is instant, with no page reload.
How WordPress dark mode works
Dark mode isn't a global setting an administrator imposes on everyone: it's a preference saved on each user's profile. People working at night keep it on, people in a bright office don't, and neither bothers the other.
Dark mode switches itself off in two places, and that's a considered choice:
There's also a class for excluding specific screens, if a plugin you use behaves the way Elementor does.
Frequently asked
Five answers on who decides about dark mode in the WordPress admin, what gets covered, and where dark mode deliberately steps back.
Just to you. It is a preference saved on your own user profile, not a site setting: people working at night keep it on, people in a bright office don’t, and neither bothers the other.
It is stored both in the browser and on the account: the browser applies it immediately, the profile keeps it for next time and for other devices. And it never touches your public site, which keeps looking to visitors exactly as it did before.
No, and that’s a choice. There is a system preference that browsers expose to websites through the prefers-color-scheme media query, and hooking into it would have been easy.
The trouble is that the two rarely coincide. People running a light system often want a dark dashboard for long sessions, and people on a dark system sometimes prefer a light workspace when they are judging colours. An explicit switch leaves the decision to you, whereas the automatic version would change the interface under your hands at sunset.
Partly, and we would rather be precise than promise too much. Dark mode in the WordPress admin covers the admin area proper: menus, list tables, settings pages, metaboxes and everything built with core markup, which is most of what you look at every day.
Screens a plugin styles entirely on its own keep their own appearance. That is deliberate: forcing a dark background onto a component designed for a light one produces unreadable badges, invisible status dots and charts you cannot decipher. Readable and slightly inconsistent beats consistent and broken.
In the customizer you are judging how your public site looks, not the dashboard: a dark interface all around would skew your reading of the colours you are choosing.
Elementor, for its part, forces a light background onto its own panels. Layering a dark theme over that would give light text on a light background — unreadable. Better not applied than applied badly. There is also a class for excluding other screens, if a plugin you use behaves the same way.
No, it happens in place: no reload, and no white flash between screens. The button is always within reach in the bottom-right corner, showing a sun or a moon depending on the state, and there is a dedicated item in the admin bar menu as well.
The preference applies to the login screen too, which is where the wrong contrast is most irritating. Animations respect the system setting for reduced motion.