Magento Site Performance Optimization

1)  Enable output compression

Apache files compression is the fastest way to improve your Magento website speed and performance.

To enable Apache served files compression mechanism, you need to open .htacess file of your Magento. Find this code in .htaccess file:
And replace it with this code:

# Insert filter on all content
SetOutputFilter DEFLATE
# Insert filter on selected content types only
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
# Netscape 4.x has some problems…
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Don’t compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don’t deliver the wrong content
Header append Vary User-Agent env=!dont-vary
# enable resulting html compression
# For security reasons, mod_php is not used on this server. Use a php.ini file for php directives
php_flag zlib.output_compression on

2)  Enable Expires Headers

Expires headers tell the browser whether they should request a specific file from the server or whether they should grab it from the browser’s cache.
The whole idea behind Expires Headers is not only to reduce the load of downloads from the server, but rather to reduce the number of HTTP requests for the server.
To turn this feature on, just uncomment in .htaccess file the appropriate line and add “ExpiresActive On” right above it. See below:

ExpiresActive On
ExpiresDefault “access plus 1 year”

3)  Disable ETags

ETags are a way for browsers to validate cached components across subsequent visits. They can slow down a site served from a cluster if the cluster hasn’t implemented them properly. It is best to just turn them off as follows:

FileETag none

4)  Increase php memory limit

Most PHP settings actually do not influence the performance of Magento, but just set certain limits. For instance, settings like memory_limit and max_execution_time do not increase the page load but just make sure that certain actions do not timeout or run into memory problems.

Find the following section in the php.ini file.
max_execution_time = 300
max_input_time = 600
memory_limit = 512M

5)  Disable Magento logging

Within the Magento configuration, you can enable logging under the Developers-tab. Depending on the Magento modules this could lead to more logs needed to be written to the filesystem, slowing down your shop. Because the logging-abilities are only needed to debug something, in daily usage, it’s best to disable logging altogether.

6)  MySQL table optimization

Goto MySQL Admin and select all the tables and repair and then optimize them.

Through phpMyAdmin, you can perform the command OPTIMIZE TABLE on specific Magento database-tables. When a table is cluttered, this could lead to improved performance. This does not only count for the complex EAV-tables, but also for regular MySQL tables that are used frequently (for instance, core_config_data).

Database Log Cleaning using Magento Administration

  • From the Magento administrator interface, go to System > Configuration.
  • In the left menu under Advanced, click System.
  • Under Log Cleaning, change Enable Log Cleaning to Yes and configure the Save Log for 15 days:
  •      Click Save Config.

Mysql server memory size increase

Recommended innodb_buffer_pool_size.
Combined web and db server, 6 GB RAM:  2-3 GB
Dedicated database server, 6GB RAM: 5 GB
Dedicated database server, 12 GB RAM: 10 GB

 7)  Combine CSS and JS files

Combine Javascript and Combine CSS files: System ->Configuration ->Advanced ->Developer -> ‘Javascript settings’ and ‘CSS Settings’. You can also consider using an extensions to do this like the Fooman Speedster extension, whichever works best for you.

Attention: Combining CSS/JS when using CDN will cause CSS/JS to “break” until the CDN updates completely. Nexcess recommends starting this process at the beginning non-peak hours to allow enough time for the “new” CSS/JS to reach the CDN.

8)  Remove Unnecessary Components

There were leftover embedded scripts and css that were not being used. When removed the speed increased. This wasn’t tested, because everyone’s situation will change.
Check for leftover scripts
Check for leftover CSS

Disable not needed extensions in app/etc/modules/*.xml or delete

9)  Enabling Flat Catalog

The model Magento uses to store customer and product data results in longer than average SQL queries and more reads. Enabling the Flat Catalog option for Categories and Products will merge product data into one table, therefore improving performance. Magento Development India

Login to your administration area and go to – System > Configuration > Catalog
Under “Frontend”, change “Use Flat Catalog Category” to yes.
Under “Frontend”, change “Use Flat Catalog Product” to yes – this is optional.
Finally you will want to clear your Magento cache.

10)  Use a Content Delivery Network (CDN)

In most cases it makes sense to distribute static media in a different way than HTML – it can be a different web daemon, moving media to a subdomain, distribution across several servers or moving it out on a CDN.

CDN helps to trim down server load, by serving the static content like images, CSS files or JavaScript files through a network of servers intimately located to your customers. A CDN can truly perk up the user experience on the web site.

To know more about our web and mobile development service visit
For more information, please contact us with the specifications for your project. You can email our sales team at, also you can call us at following numbers.
India: (+91) 44 42170775, (+91) 91766 40375
USA [Toll Free]: 866 220 6565