Concerned about the Vitals app slowing down your store?
In the fast-paced world of e-commerce, concerns about the impact of third-party apps on store performance persist.
Apps are usually the ones to blame for skyrocketing page load times ( 1, 2, 3, 4). For each app installed on a Shopify store, a different request is made to a different server worldwide when a visitor lands on it.
This is the first reason that drove us to build Vitals. Far from being a hindrance, our app prioritizes efficiency, and our commitment to transparency is evident in the favorable results we've obtained through different speed tests.
Below are some of the benefits of our app related to your store's speed and performance compared to installing multiple Shopify apps with the same functions:
- Vitals will only load the apps you've activated on your store. Even though our app has 40+ apps within, with each one able to be activated individually, only the apps that you've enabled will load on the storefront in a single script, resulting in an improved page speed for your store.
- All of the Vitals apps work seamlessly with each other. Since all of our apps are made by the same development team, each app follows the same development principles and structures, providing seamless interaction between them. Installing different Shopify apps made by different developers almost always results in conflicts, as apps are not designed to effectively work with the thousands of apps offered in the Shopify app store.
- Continuous reduction of the app script file. While we regularly introduce new app features, we also simultaneously improve our script's performance by continuously reducing its size and load time. We are actively doing this to ensure that the app is still performant and always ready to support new updates regularly.
- The Vitals script runs independently of your theme. By allowing our script to run independently (named bundle.js on the list of scripts running on your store), we ensure your store's core functionalities proceed without interruption. This behavior is also a great factor to know during testing, as this enables you to test your store freely without our Vitals app running temporarily by simply blocking the script. (We have the steps on how to do it on our Help Center here: How to test if Vitals causes a bug on your store)
💡 We recommend using GTMetrix to determine your store's performance and our app's impact to it. To initiate a test using GTMetrix, you may refer to this article: How to test your Shopify store speed.
Frequently Asked Questions
I ran a speed test using Google PageSpeed/Lighthouse, and it shows that your app script has "unused Javascript/CSS" that needs to be removed.
This is more inclined to how Google Pagespeed does its test and how our script works. This is because certain scripts from our app are not actively being loaded if bots visit the site.
For example, our Visitor Recordings app does not activate and start recording sessions if a bot or a testing tool visits the store, as these types of visits are not from real visitors, avoiding the needless consumption of your Visitor Recordings app credits (and also these visits do not show a real customer behavior). But since the Visitor Recordings app is enabled, its script is active inside our main app file, and Google PageSpeed would tag it as "unused" on their tool.
This also rings true with our app detected in having an "unused CSS" - certain elements in our app only appear on the storefront after specific conditions (for example, our Pop-up upsell only appears when the Add-to-Cart button is clicked). Therefore, the CSS structures used by those will be tagged as "unused" since bot behaviors do not generally click the buttons.
We recommend using GTMetrix to provide a transparent bird's eye view of your store as it will show not just your store's overall performance (with suggestions on how to improve them), but will also provide detailed reports per script that runs on your store, including our Vitals script (bundle.js).
I made a speed test using Google PageSpeed Insights and I saw this error: "wss://vrso.vitals.co/socket.io/?EIO=4&transport=websocket' failed: net::ERR_NAME_NOT_RESOLVED" . What does this mean and how does it affect my store?
This is a false positive, not an error. This error shows up in PageSpeed Insights because our Visitor Recordings app does not start recording sessions from bot visits, such as visits made by PageSpeed Insights (to avoid consuming the page visit credits).
Rest assured that when a real visitor visits your store, that is the only time that the Visitor Recordings app starts recording, and therefore, this error is not encountered in those visits.