WordPress loads a small but unnecessary emoji detection script on every page load. Modern browsers handle emoji natively — this extra JavaScript doesn't add value for most sites.

Why This Matters

The emoji script (wp-emoji-release.min.js) and its associated inline CSS:

  • Add ~15KB to every page
  • Run JavaScript on every page load to detect and convert emoji characters
  • Are unnecessary because all modern browsers (Chrome, Firefox, Safari, Edge) render emoji natively since 2015+

It's a small optimization, but it's also a 2-minute fix.

How to Fix It

Method 1: mu-plugin (Recommended)

Create a file at wp-content/mu-plugins/disable-emoji.php:

<?php
/**
 * Plugin Name: Dravasite – Disable Emoji Script
 * Description: Removes the WordPress emoji detection script and styles.
 *              All modern browsers render emoji natively since 2015.
 * Version:     1.0.0
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit;
}

// Remove emoji JavaScript from frontend <head>
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );

// Remove emoji scripts from admin area too
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );

New to mu-plugins? Read our guide to adding code snippets safely with mu-plugins — it takes 2 minutes to set up and survives theme updates.

Method 2: Using a Plugin

Performance plugins like Perfmatters, Asset CleanUp, and Autoptimize include an option to disable emoji script in their settings.

What to Watch For

  • This is a safe change for virtually all sites. If you're publishing content that relies on very old browser emoji rendering, you might notice differences — but that's extremely rare.
  • The savings are small (~15KB), so prioritize bigger performance wins first (caching, image optimization, reducing plugins).
  • This doesn't remove emoji from your content — it just stops WordPress from loading extra JavaScript to detect and render them. Your emoji will still display correctly.