JCH Optimize


Speed up your WordPress site instantly with JCH Optimize! This plugin provides all the front end optimizations you need to optimize your website download speed. Core feature is to automatically combine CSS and javascript files to reduce the number of http requests made by the browser to download your web page. The combined CSS and javascript files can be further optimized by minifying and compressing the file with gzip. Also, the HTML output can be minified for optimized download. These optimizations will reduce server load, bandwidth requirements, and page loading times.

Major Features

  • Page Cache
  • Combine and minify javascript and CSS files
  • HTML minification.
  • GZip compress the combined files.
  • Generate sprite to combine background images.
  • Ability to exclude files from combining to resolve conflicts

This plugin runs on a framework that is tried and proven within the Joomla! community. View the plugin’s page on Joomla!’s Extension Directory to see the reviews it has earned and why it has gain so much popularity in that community.

There is a pro version available on the plugin’s website with more features to further optimize your website such as:

  • Load combined javascript file asynchronously
  • Optimize CSS Delivery to eliminate render blocking
  • CDN/Cookie-less Domain support
  • Optimize images
  • Lazy load images


Just install from your WordPress “Plugins|Add New” screen. Manual installation is as follows:

  1. Upload the zip-file and unzip it in the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to Settings -> JCH Optimize and enable the options you want
  4. Use the Automatic Settings (Minimum – Optimum) to configure the plugin. This automatically sets the options in the ‘Automatic Settings Groups’. You can then try the other manual options to further configure the plugin and optimize your site. Use the Exclude options to exclude files/plugins/images that don’t work so well with the plugin.


How do I know if it’s working?

After installing and activating the plugin, combining CSS and javascript files are selected by default so it should start working right away. If you look at your web page and it doesn’t look any different that’s a good sign…maybe. To confirm if it’s working, take a look at the page source. You can do that in most browsers by right clicking on the page and selecting that option. You should see the links to your CSS/Js files removed and replaced by the aggregated file URL in the source that looks like this:

There’s no CSS Formatting after enabling the plugin

The combined files are accessed by the browser via a jscss.php file in the /wp-content/plugins/jch-optimize/assets/ directory. If you’re not seeing any formatting on your page it means that the browser is not accessing this file for some reason. View the source of your page and try to access the JCH generated url to the combined file in your browser. You should see an error message that can guide you in fixing the problem. Generally it’s a file permission issue so ensure the file at ‘/wp-content/plugins/jch-optimize/assets/jscss.php` has the same permission setting as your /index.php file (usually 644) and make sure all the folders in this hierarchy have the same permissions as your htdocs or public_html folder(Usually 644).

How do I reverse the change JCH Optimize makes to my website?

Simply deactivate or uninstall the plugin to reverse any changes it has made. The plugin doesn’t modify any existing file or code but merely manipulates the HTML before it is sent to the brower. Any apparent persistent change after the plugin is deactivated is due to caching so ensure to flush all your WordPress, third party or browser cache.


500 Internal Server Error

By using this plugin, this has ensured that all our customers have received a 500 Internal Server Error and have not been indexed for months by Google. This is very disappointing and wrong.

Was OK in Joomla

… but not in WordPress. Produces garbage at the bottom of my home page regardless of settings and cache cleaning, and the GT Metrix scores are poor as well. No browser caching. Stick to WP fastest cache!

Trabaja Muy Bien

Este plugin, lo he utilizado para hacer más suave la carga de mis páginas y el trabajo, hasta el momento, es muy bueno.

Es sencillo de manejar.

Felicitaciones y agradecido con su desarrollador.

No support at all: want my money back

Pro Features don’t work (with my site). After 2 tickets and 7 days of not getting any answer at all to my questions I decided to cancel my license and ask the money back. Support is inexistant. Thats totally unacceptable.

Works perfectly

I like how this plugin works, especially PRO version. You don’t need to extract critical CSS manually, this plugin find critical CSS automatically and place it in code. Allows to optimize JS loading, CSS, optimize images, add images lazy load. Developers, please add Lazy for iframes 🙂 Very helpful plugin for website speed optimization. With this plugin and with help of my brain I have 97/100 score in Google Pagespeed for website homepage (which contains full-screen Revolution slider, products gallery and interactive map on home page).

Incredible Jump In Pagespeed

Using many other page speed plugins with high hopes, they all failed and made this worse. So I had low hopes this would work well. WOW, I was wrong, and glad I was wrong. With a few easy to use settings, my pagespeed score increased by a whopping 20 points on mobile and desktop on a few sites without breaking anything in the process. One of my fears. While I have not yet purchased the upgrade, Ill be sure to buy and support this developer , as well as see how the extra pro features may help drive things closer to the 100 dream. For now, 85 ain’t that bad! Thank you!

Read all 57 reviews

Contributors & Developers

“JCH Optimize” is open source software. The following people have contributed to this plugin.


Translate “JCH Optimize” into your language.

Interested in development?

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



  • Fixed issue with plugin not running on some sites with last version
  • Added ability to mark and skip images already optimized in subfolders [PRO VERSION]
  • Fixed issue with autoupdate of PRO version reverting to FREE version [PRO VERSION]


  • Fixed issue in page cache causing PHP errors


  • Added page cache feature
  • Improved support for LiteSpeed Cache
  • Other minor bug fixes and improvements.


  • Minor bug fixes and improvement


  • Improved caching to reduce instances of excess cache.
  • Fixed issue with xml sitemaps when ‘Debug plugin’ is enabled.
  • Fixed issue with deprecating PHP error using the ‘each’ function.
  • Added minifier for json
  • Other bug fixes and improvements.


  • Fixed bug with exclude settings not being saved


  • Expired cache flushed daily
  • Codes added to .htaccess file to gzip compress files
  • Major improvement to Optimize Image feature handling more images much more efficiently (PRO VERSION)
  • Various bug fixes and improvement


  • Ability to exclude files while maintaining original execution order for all Automatic Settings added.
  • Ability to select static files for combined css and js files added.
  • Cache lifetime hardcoded to 1 day and setting removed.
  • ‘Exclude javascript dynamically’ setting removed.
  • Ability to select file type for each CDN domain added.(PRO VERSION)
  • CDN feature will use base element to determine the base url for relative urls.(PRO VERSION)
  • Automatically exclude images above the fold from Lazy-load feature to avoid css render-blocking issues.(PRO VERSION)
  • Improvements in the Optimize CSS Delivery feature.(PRO VERSION)
  • Various bug fixes and improvements.


  • Fixed bug creating errors in JchOptimizeSettings
  • Removed some exclusion settings
  • Fix javascript error in options page
  • Other minor bug fixes


  • Fixed conflicts with select plugins that cause JCH Optimize to generate a Fatal Error
  • Removed cache lifetime setting. Lifetime hardcoded to 1 day
  • Other minor bug fixes and improvement


  • Fix issue with the plugin not running on some sites
  • Now Compatible with Google AMP pages
  • Added setting to exclude pages from the plugin that don’t work well or you don’t want optimized


  • Couple bug fixes from the last version


  • Improved compatibility with PHP7
  • Improved support for Google font files
  • Fixed issue with script that flushes expired cache daily
  • Other minor fixes and improvements.


  • Fixed bug that was causing some javascript errors in some browsers on some sites.


  • Fixed bug with handling Google font files
  • Grouped settings related to the combine CSS/javascript feature together to make it more intuitive to configure and added setting to disable/enable this feature
  • Added feature to add missing height and width attributes to img elements
  • Fixed bug with lazy-load feature that was affecting other javascript libraries
  • Other minor bug fixes and improvements


  • Fixed issue with CSS Optimize library that caused some pages to load slowly


  • The settings in the backend are rearranged in a more logical and intuitive manner
  • Support for up to 3 CDN/Cookieless domains and the ability to select the file type to load over CDN
  • Exclude images from Lazy Load based on the folder (useful if you want to exclude all images from an extension), or by the CSS class defined on the image
  • Improved compatibility with slideshows and ajax content with the LazyLoad function and also support for non-javascript users (probably some mobile)
  • Ability to remove files from loading on the page for eg., if you have more than one jQuery libraries or libraries you’re not using like Mootools.
  • Psuedo-cron script that flush expired cache daily to reduce the build up of excess cache
  • Support for those pesky Google font files that are always blocking on PageSpeed
  • Option to ‘Leverage Browser Cache’ for common resource files.
  • Option to correct permissions of files/folders in plugin.
  • Added functionality to recursively optimize images in subfolders
  • Can scale images during optimization if image dimensions are larger than required.
  • Optimized/resized images will be automatically backed up in a folder.
  • Developed our own API for optimizing images so we’ll no longer be using Kraken.io
  • Added language translations for Spanish, French, Russian, German, and Hebrew
  • Other improvements to existing features and various bug fixes.


  • Fixed issue in validating HTML that prevented the plugin running on some sites.


  • Fix links to combined file to include scheme and domain for better compatibility with other plugins
  • Improved code that manipulates urls in the plugins


  • Fixed bug in Autoloader function that conflicts with other plugins that have classes beginning with ‘JCH’
  • Fixed bug with HTML Minify removing spaces from inside pre elements when it contains other HTML elements
  • Fixed compatibility issue with plugins using PHP internal buffering eg. CDN Linker, cache plugins, etc.
  • Will delete plugin options on uninstall
  • Multisite supported
  • Fixed issue with Optimize Images not working with open_basedir setting (PRO VERSION)
  • Now able to automatically update the Pro version when your download id is saved in the plugin (PRO VERSION)


  • Improved method of accessing HTML for optimization considering levels of buffering
  • Corrected function used to access home url in backend so that exclude options lists can be populated
  • Fixed bug in and improved HTML minification library
  • Fixed bug with Sprite Generator
  • Fixed bug with CDN/Cookie-less domain feature (PRO VERSION)
  • Improved Image Optimization feature (PRO VERSION)


  • Fixed issue with the setting ‘Use url rewrite – Yes (Without Options+SynLinks)’ not working properly
  • Fixed issue with combine javascript options sometimes creates javascript errors
  • Now using Kraken.io API to optimize images (PRO VERSION)


  • Fixed compatibility issue with XML sitemaps and feeds.
  • Minor bug fixes


  • Improved code running in admin section
  • Add Profiler menu item on Admin Bar to review the times taken for the plugin methods to run.
  • Keep HTML comments in ‘Basic’ HTML Minification level. Required for some plugins to work eg. Nextgen gallery.
  • Saving cache in non-PHP files to make it compatible with WP Engine platform.
  • Minor bug fixes and improvements.


  • Added visual indicators to show which Automatic setting is enabled
  • Added multiselect exclude options so it’s easier to find files/plugins to exclude from combining if they cause problems
  • Bug fixes and improvements in the HTML, CSS, and javascript minification libraries
  • Added levels of HTML minification


  • Fixed bug in HMTL Minify library manifested on XHTML templates
  • Fails gracefully on PHP5.2


  • First public release on WordPress plugins repository.