How to Change the WordPress Admin Font (and Make It Bigger)

WordPress doesn't give you a setting for the admin font. Every dashboard uses the same system font at the same small size, and the only built-in way to change it is to write code. You notice it when you're setting up a branded dashboard for a client, or after a long day of reading 13px text.

We tested two ways to change the WordPress admin font on WordPress 7.1: the Body Font option in WP Adminify's dashboard customizer, and a small must-use plugin you can paste in. After those come a snippet for bigger admin text and a rundown of what a font change reaches. For the rest of the admin area, see our WordPress dashboard customization guide.

Quick answer: with WP Adminify Pro, go to WP Adminify > Settings > Customize > Body Font, pick a font and save. Without a plugin, create a must-use plugin that enqueues the font on admin_enqueue_scripts and applies it to body, #adminmenu and #wpadminbar *. Additional CSS in the Customizer won't work, because it only loads on the front end.

What Font Does the WordPress Admin Use?

The WordPress admin uses the native system font stack instead of a web font. You can see it in core's common.css: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif. So the dashboard shows San Francisco on a Mac, Segoe UI on Windows and Roboto on Android. WordPress switched to this stack from Open Sans in version 4.6. The default size is 13px for body text and 14px for the main admin menu.

Default WordPress 7.1 dashboard using the system font stack

In this guide, "admin font" means the text on wp-admin screens: the admin menu, the admin bar, headings, tables, forms and buttons. Your theme controls the front-end fonts, and WordPress 7.0's Font Library (Appearance > Fonts) manages those. The content area of the block editor is also separate, as the section on what changes explains.

Method 1: Change the Admin Font with WP Adminify

If you already use WP Adminify, the admin font is a dropdown. Body Font is a Pro option; the free version shows it with an upgrade badge. You can leave the Adminify UI theme switched off. We tested that on WP Adminify 4.3.2, and the font still applied everywhere.

  1. Go to WP Adminify > Settings and open the Customize tab.
  2. Find Body Font and choose a font in Font Family. The list includes Google Fonts and web-safe fonts.
  3. Pick a weight and style in Font Style, for example Normal 400.
  4. Click Save Settings and reload any admin screen.
WP Adminify Customize tab with the Body Font option set to Poppins, Normal 400

Body Font in WP Adminify's Customize tab, set to Poppins. After saving: the dashboard, admin menu and admin bar all use Poppins.

WordPress dashboard, admin menu and admin bar all using the Poppins font after changing Body Font in WP Adminify

WP Adminify downloads the Google Font and serves it from your own site (under wp-content/uploads/adminify-google-fonts/), so browsers never contact Google's font servers and the privacy question below doesn't apply. Body Font sets the family, weight and style. It has no size setting, so use the font-size snippet further down if you want bigger text. The Body Font documentation covers the option in more detail.

Method 2: Change the Admin Font with a Must-Use Plugin

Without WP Adminify, a short must-use plugin does the same job. I'd use that over your theme's functions.php: theme code disappears when you switch themes, and a parent theme update overwrites it. Must-use plugins load on every admin page whatever theme is active.

Create wp-content/mu-plugins/admin-font.php (make the mu-plugins folder if it doesn't exist) and paste this in. It uses Lexend as the example; change the font name in both places for any other Google Font.

1
2<?php
3/**
4 * Plugin Name: Custom Admin Font
5 * Description: Changes the font used across wp-admin.
6 */
7
8function adminify_custom_admin_font() {
9	// 1. Load the font. Swap the URL for a self-hosted stylesheet if you prefer.
10	wp_enqueue_style(
11		'adminify-admin-font',
12		'https://fonts.googleapis.com/css2?family=Lexend:wght@400;600&display=swap',
13		array(),
14		null
15	);
16
17	// 2. Apply it to admin screens, the admin menu, the admin bar and form fields.
18	$css = '
19		body,
20		#adminmenu,
21		#wpadminbar *:not(.ab-icon),
22		input, select, textarea, button {
23			font-family: "Lexend", sans-serif;
24		}
25	';
26	wp_add_inline_style( 'adminify-admin-font', $css );
27}
28add_action( 'admin_enqueue_scripts', 'adminify_custom_admin_font' );
29
WordPress dashboard using the Lexend font through the custom admin font must-use plugin, including the admin bar

Most snippets you'll find (including the one this post used to show) target #wpadminbar, which changes nothing you can see. WordPress sets the font on every element inside the admin bar with #wpadminbar *, so your rule has to target those children. The :not(.ab-icon) part keeps the admin bar icons intact, and nothing here touches Dashicons, so the menu icons don't turn into empty squares.

Old admin font snippet applied: the dashboard uses the new font but the admin bar still shows the system font

Use a self-hosted font instead of Google Fonts

Loading fonts from fonts.googleapis.com sends each admin user's IP address to Google. Only a handful of people use the admin area, but if your agency or client has a strict GDPR policy, host the font yourself. Download the font files and a stylesheet (the google-webfonts-helper tool does this), upload them to wp-content/uploads/admin-fonts/, and change the URL in step 1:

1
2// Self-hosted version: upload lexend.css and the font files to
3// wp-content/uploads/admin-fonts/, then replace the URL in step 1 with:
4content_url( 'uploads/admin-fonts/lexend.css' )
5

Change the font for one user only

The plugin changes the font for everyone who logs in. If only you want the new font, add this at the top of the function, with your own user ID (you'll see it as user_id= in the address bar when you edit your profile from Users > All Users):

1
2// Only change the font for specific users: add this as the first line
3// inside adminify_custom_admin_font().
4if ( ! in_array( get_current_user_id(), array( 1 ), true ) ) {
5	return;
6}
7

How to Change the WordPress Admin Font Size

WordPress has no admin font-size setting, and neither does WP Adminify's Body Font option. You can use browser zoom, a CSS snippet or a plugin:

  • Browser zoom (Ctrl or Cmd and +) enlarges everything, icons and spacing included, and your browser remembers it per site. If you're the only one who wants bigger text, it's the quickest fix.
  • The CSS snippet below changes the text size for everyone and leaves the layout alone.
  • PublishPress Capabilities has an Admin Font Size setting under Admin Styles, if you'd rather click than code.

Add it to the same admin-font.php file or to a must-use plugin of its own. WordPress sets font sizes on many different selectors, so a single body { font-size } rule only enlarges part of the text. This version covers the menu, tables, settings forms, fields and buttons:

1
2// Make the admin text bigger (WordPress uses 13px by default).
3function adminify_admin_font_size() {
4	$css = '
5		body.wp-admin,
6		#adminmenu a.menu-top,
7		#adminmenu .wp-submenu a,
8		.wp-list-table td, .wp-list-table th, .wp-list-table .row-title,
9		.form-table th, .form-table td,
10		.wp-admin input, .wp-admin select, .wp-admin textarea,
11		.wp-core-ui .button {
12			font-size: 15px;
13		}
14		#wpadminbar *:not(.ab-icon) {
15			font-size: 14px;
16		}
17	';
18	wp_add_inline_style( 'common', $css );
19}
20add_action( 'admin_enqueue_scripts', 'adminify_admin_font_size' );
21
WordPress Posts list at the default admin font size

The Posts screen at the default size. The same screen with the snippet: 15px text in the menu, table and buttons.

WordPress Posts list with a larger 15px admin font size from the CSS snippet

What Changes and What Doesn't

We checked each of these on WordPress 7.1 with the must-use plugin active:

  • Admin screens, the admin menu, the admin bar, forms and buttons all switch to the new font.
  • So do the block editor's toolbar and sidebar.
  • The post content in the editor keeps your theme's fonts (Manrope on Twenty Twenty-Five), because the editor previews content the way visitors will see it. Change the theme's typography if you want that to change.
  • Your front end stays the same, because admin styles only load in wp-admin.
  • The login page has its own stylesheet, so it keeps its font too. Loginfy or a login_enqueue_scripts snippet handles that.
Block editor with the interface in Lexend while the post title and content keep the theme font

Troubleshooting

  • The admin bar didn't change. Your CSS targets #wpadminbar instead of #wpadminbar *.
  • Icons turned into squares or letters. A rule like * { font-family: ... } has overridden Dashicons. Target specific elements, as in the plugin above.
  • Nothing changed at all. Check that the file is directly in wp-content/mu-plugins/ (not in a subfolder), and that you didn't paste the code into Appearance > Customize > Additional CSS. That panel only styles the front end.
  • The font falls back to sans-serif. The font name in the CSS must match the family in the stylesheet URL exactly, including capitals and spaces.

WordPress Admin Font FAQ

What is the default WordPress admin font?

The WordPress admin uses the native system font stack: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto and similar fonts, depending on your device. WordPress switched to it from Open Sans in version 4.6. The default body size is 13px.

Can I change the admin font without a plugin?

Yes. Create a must-use plugin in wp-content/mu-plugins/ that enqueues the font on admin_enqueue_scripts and applies it with CSS to body, #adminmenu and #wpadminbar *. Don't use Additional CSS in the Customizer, because it only loads on the front end.

How do I make the WordPress admin text bigger?

Use browser zoom for yourself, or add CSS that sets a larger font-size on body, the admin menu, list tables, form fields and buttons. WordPress uses 13px by default. PublishPress Capabilities also has an Admin Font Size setting.

Will changing the admin font affect my website's front end?

No. Admin styles only load in wp-admin, so visitors see your theme's fonts as before. The login page and the content area of the block editor also keep their own fonts.

Does the admin font change the block editor?

Partly. The editor's toolbar, sidebar and buttons switch to the new font, but the post title and content keep your theme's fonts, because the editor previews content the way visitors will see it.

Is using Google Fonts in the admin a GDPR problem?

Loading fonts from Google's servers shares each admin user's IP address with Google. Self-hosting the font files avoids that. WP Adminify's Body Font option downloads the font to your own server automatically.

What's the best font for the WordPress admin?

A clear sans-serif with open letter shapes reads well at small sizes, such as Inter, Lexend, Roboto or Open Sans. The system font stack is also a good choice because it needs no download at all.

Is the admin font option free in WP Adminify?

No. Body Font is part of WP Adminify Pro. The free version shows the option with an upgrade badge. The must-use plugin in this guide is a free alternative.

Wrapping Up

You can change the WordPress admin font with WP Adminify Pro's Body Font dropdown, or with a short must-use plugin that loads a font and targets #wpadminbar * so the admin bar changes too. Font size needs its own CSS snippet. Your front end and the editor's content area keep their fonts either way. Fonts pair well with the admin color scheme and dark mode if you're giving wp-admin a full makeover. WP Adminify handles all three from one settings page (see the Pro plans).

Get notified about Updates & Offers

Subscribe to get Updates & Offers

You Might Also Like:

Leave a Comment

Your email address will not be published

Coupons