WordPress WPO Tweaks & Optimizations


By default, WordPress load several functions, services and scripts that aren’t mandatory and usually slow down your installation and waste hosting resources. From years I’ve been trying out some tweaks to save hosting resources and improve WordPress Performance and Load Time. After thousands of tests this plugin include my best speed and performance optimizations with just one click.

With this plugin you can safely deactivate that annoying services, unnecessary codes and scripts in order to save hosting resources and costs, and to speed up WordPress for better results in tools like Google PageSpeed, Pingdom Tools, GTMetrix, WebPageTest and others.

The improvements (tweaks) that the plugin automatically applies securely are the following:

  • NEW: Added browser cache expires rules to main WordPress .htaccess file
  • NEW: Added GZIP compression rules to main WordPress .htaccess file
  • Remove Dashicons in admin bar (only for non logged users)
  • Remove Emoji’s styles and scripts
  • Disable REST API (full disabled)
  • Control Heartbeat API interval
  • Remove Query Strings from Static Resources
  • Defer Parsing of JavaScript and YouTube videos iframes
  • Remove Gravatar Query Strings
  • Remove Really Simple Discovery link from header
  • Remove wlwmanifest.xml (Windows Live Writer) from header
  • Remove Shortlink URL from header
  • Remove WordPress Generator Version from header
  • Remove s.w.org DNS Prefetch
  • Remove unnecessary links from header
  • Remove generator name from RSS Feeds
  • Remove Capital P Dangit filter
  • Disable PDF thumbnails preview
  • Disable Self Pingbacks

No options. Just activate the plugin and test your site’s speed in your favourite tool (GTMetrix, Pingdom Tools, etc.)

Plugin Requirements

  • This plugin requires WordPress 4.8 or greater
  • This plugin requires PHP 7.3 or greater


  • Pingdom Tools results before plugin activation.
  • Pingdom Tools results after plugin activation.


  1. Go to your WP Dashboard > Plugins and search for ‘wpo tweaks’ or…
  2. Download the plugin from WP repository
  3. Upload the ‘wpo-tweaks’ folder to the ‘/wp-content/plugins/’ directory
  4. Activate the plugin through the ‘Plugins’ menu in WordPress


What does WPO mean?

WPO is short for Web Performance Optimization. It measures a bunch of several improvements in the optimization and improvement of the performance and times of load of web pages

Where can I test my site Performance?

What is the best way to test my site performance?

Use one of the tools above and make al least two tests to measure your site performance. That’s because the cache systems don’t load the first time your site is tested with this tools. Always test your site with the same tool and measure your site performance over time, not just only one time.

And always remember that no tool can replace human perception. If you see that your web loads faster than ever no tool is going to tell you what you and your visitors feel in real life.

Don’t go crazy with tools, they’re machines and, i.e. Google PageSpeed can show you a 100/100 measure when your site is broken, and that’s far away from an optimised web, isn’t it?

Something went wrong after activation

This plugin is compatible with all WordPress JavaScript functions (wp_localize_script(), js in header, in footer…) and works with all well coded plugins and themes. If a plugin or a theme is not properly enqueuing scripts, your site may not work. If your host doesn’t support any of the tweaks, usually due to security restrictions, is possible that something fails. If anything fails please access to your /wp-content/plugins/wpo-tweaks/ directory via your favourite FTP client or hosting panel (cPanel, Plesk, etc.) and rename the plugin folder to deactivate it.

If you get an Error 500 (server error) then go to your host panel and edit the .htaccess file to remove the lines added by the plugin (they begin with ‘WordPress WPO Tweaks by Fernando Tellado’) and save changes or delete the file and create it again from Dashboard > Settings > Permalinks > Save Changes.

What’s next?

I’ll be including for next updates every new performance tweak I test for better results in order to speed out WordPress.

Do you plan to include a settings panel?

No. WordPress WPO Tweaks plugin is intended for users that want to safely obtain optimizations and speed with one click. If you are a developer and know what you’re doing, then please check my friend Nilo Velez’s Machete plugin, a complete suite to decide how to solve common WordPress issues and annoyances. And yes, it has a huge settings page!


Dicamba 15, 2020
Mi ecommerce sigue siendo lento, pero nada más activar este plugin he alcanzado la zona amarilla de Pagespeed por lo que estoy contentísima! Gracias Fernando!
Dicamba 11, 2020
Tried many similar plugins. This one is definitely the best!
Nuwamba 29, 2020
Just like the developer of this plugin, I think I’ve used nearly every type of caching plugin to try and increase speed. Some of them end up breaking the site or not pulling images through. You just simply activate this and that’s it! I went from 45% to 83% on Google speed test in an instant using the Divi theme and builder. Brilliant work!! Thank so much. PS I’ve been using WP Super Cache, sis it best to deactivate it or leave it running?
Nuwamba 11, 2020 1 reply
Ideal para los que no somos programadores, acaba de bajarle un segundo entero de carga a mi web al haber aplazado la carga de JavaScript. ¡Gracias Tellado!
Read all 30 reviews

Contributors & Developers

“WordPress WPO Tweaks & Optimizations” is open source software. The following people have contributed to this plugin.


“WordPress WPO Tweaks & Optimizations” has been translated into 8 locales. Thank you to the translators for their contributions.

Translate “WordPress WPO Tweaks & Optimizations” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Tested up to WordPress 6.4


  • Tested up to WordPress 6.2


  • Tested up to WordPress 6.1
  • Updated requisites for WP and PHP


  • Tested up to WordPress 6.0.2


  • Tested up to WordPress 6.0
  • Yeah! It was time to bump tu 1.x version!


  • Change PageSpeed URL


  • Tested up to WordPress 5.9


  • Tested up to WordPress 5.8


  • Tested up to WordPress 5.6


  • Removed the jQuery Migrate option because it’s not needed since WordPress 5.5


  • Tested up to WordPress 5.5


  • Regression to old method for defer parsing of JavaScript due to Divi theme support issues.


  • Tested up to WordPress 5.4.1


  • New method for defer parsing of JavaScript. Specially useful with YouTube iframes and other external video sources.


  • Tested up to WordPress 5.3.2


  • Changes in the jQuery Migrate code to solve Elementor last version support


  • Tested up to WordPress 5.3


  • Tested up to WordPress 5.2.2


  • Tested up to WordPress 5.2.


  • Tested up to WordPress 5.1


  • Added conditionals to deflate lines in .htaccess file to prevent error 500 in some hosts (Props to frayca – https://profiles.wordpress.org/frayca)


  • Tested up to WordPress 5.0 tag added


  • Tested up to WordPress 4.9.8


  • Added functions to disable internal self pingbacks


  • Added line to check if “expires” module is active to prevent error 500 in some servers where module isn’t active.


  • Tested up to WordPress 4.9.6


  • Added Browser cache expires rules to main WordPress .htaccess file. It’s a pretty secure procedure because the plugin first check if the .htaccess file exists and it’s writable, and if there aren’t previous WPO Tweaks Plugin rules too. The rules added by the plugin are removed at plugin deactivation. Props to @carloslongarela.
  • Added GZIP compression rules to main WordPress .htaccess file. It’s a pretty secure procedure because the plugin first check if the .htaccess file exists and it’s writable, and if there aren’t previous WPO Tweaks Plugin rules too. The rules added by the plugin are removed at plugin deactivation. Props to @carloslongarela.
  • This is the first release with version tags. This way you can download previous versions of the plugin. They are at the bottom of Advanced View of the plugin page at wordpress.org.


  • Tested up to WordPress 4.9.5. It works!


  • Exception added Dashicons removal in order to show them in the Customizer (Thanks to Juan Ramón Navas for reporting!)


  • Changed method for Hearbeat API because some users need it for autosaves, co-edits and more. From now it isn’t disabled but controlled the interval to trigger after 60 seconds instead of default 15 seconds.
  • Credits added to admin footer.
  • Plugin tested up to WordPress 4.9 RC.


  • Added link to WebPageTest in readme.txt to measure results.
  • Changed to the script_loader_tag filter method to Defer Parsing of JavaScript in order to solve AMP issues with Google’s CDN and parsing of scripts in several themes.


  • Changed method to Defeat Parsing of JavaScript to solve AMP issues with Google’s CDN (thanks to Juan María Arenas for reporting!)
  • Changed Donate URL


  • Changed WP min version from 4.0 to 4.1
  • Added filter to remove capital_p_dangit filter
  • Added functions to disable PDF thumbnails preview (included in WP 4.7)
  • Added action to remove link to homepage from header (thanks @carloslongarela)
  • Added action to remove extra links to rss feeds from header (thanks @carloslongarela)
  • Added action to remove prev-next links from header (thanks @carloslongarela)
  • Added action to remove prev-next links from header (thanks @carloslongarela)
  • Added action to remove random post link from header (thanks @carloslongarela)
  • Added action to remove parent post link from header (thanks @carloslongarela)
  • Added filter to remove generator name from rss feeds in header (thanks @carloslongarela)
  • Better coding standards and ordering of functions (thanks @carloslongarela)
  • Changes in readme.txt


  • Added action to remove really simple discovery link from header
  • Added action to remove wlwmanifest.xml from header
  • Added action to remove shortlink url from header
  • Added action to remove WordPress generator version from header
  • Added action to remove s.w.org DNS prefetch
  • Added function to remove jquery_migrate


  • Fixed Text Domain for translation ready


  • Initial release