Why do we need to optimize the front end of the website?
Every user today, trying to access a website on the internet wants it to behave flawlessly, Imagine accessing a website that would take 2-3 minutes for the initial load, it raises questions to the user to stay longer and wait until it loads, some may just leave and jump to the next website which is more easily available, so it’s very important to have your website perform well and here in this blog you can find steps to improve your Magento website performance via Front end.
Major Steps to Improve Magento Website Performance
- All CSS styles loaded from external files are considered render-blocking. This means that a web page will not be displayed until these files are loaded. By using ‘CSS critical path’, we deliver minified critical CSS inline in <head> and defer all non-critical styles that are loaded asynchronously. Thus we can significantly improve the time to first render our pages.
- The ‘critical’ CSS file should be located in app/design/frontend/<your_vendor_name>/<your_theme_name>/web/css/critical.css
Enable CSS Critical Path
- CSS critical path configuration is located on the Stores > Settings > Configuration > ADVANCED > Developer tab. However, the Developer tab is hidden in production mode. Once in production mode, CSS critical path can only be enabled using the CLI.
- Lazy load feature allows only loading images when needed instead of loading them upfront, thus reducing loading time.
Remove Unnecessary Fonts
- When you try to provide a better experience for your customers you explore a lot of trendy designs, themes, and fonts. The last ones can reduce the page loading speed even if they are not used.
- Sometimes, it happens that you add some custom font to the <head> section of the page configuration file and forget about it. Regardless if the font is used or not, it will be loaded anyway.
- So, to speed up Magento 2 you can also try to delete unused fonts. GooglePageSpeed suggests it too.
Standard Google Fonts
- When building a website, consider using standard fonts provided by Google.
- Google Fonts will act like an additional CDN, which will add a necessary boost to Magento 2 speed.
Enable Deferred JS Loading
- Together with CSS and HTML, there are a lot of JS files loaded during the page load. All of this contributes to slow website loading which neither customers nor merchants like to experience.
- To optimize JS file loading, you can use deferred JS loading. It allows you to execute the JS script after page parsing and increase Magento website speed accordingly.
- Navigate to Stores > Configuration > Advanced > Developer.
- Enable the Minify CSS Files and Merge CSS Files in the CSS Settings sections.
Enable Advance JS Bundling
- Since using regular Magento JS bundling is not recommended because of the inefficiency, there is an alternative — advanced JS bundling.
- It allows you to reduce the number of HTTP requests to the server and decrease the size of JS files, the same as the regular JS bundling. However, advanced JS bundling eliminates the need to load all of the bundles, for all pages requested by a browser.
- Since only some specific bundles will be loaded for one page, Magento speed will increase significantly.
- Use a lightweight Magento theme with minimal customizations to improve loading speed.
- Compress and optimize all product images, making sure that they’re saved in JPEG format.
- Start using a CDN to take some of the load off the server and improve download times for customers.
These are some of the steps you could take utmost care of from front end perspective for a better performing website.