Short answer: no
CompareKit is built using Shopify's Theme App Extension system, which is specifically designed by Shopify to keep stores running fast. Theme App Extensions are the recommended way for apps to add functionality to storefronts, and Shopify has built performance safeguards directly into the system.
How CompareKit stays lightweight
No render-blocking scripts — The CompareKit widget loads asynchronously, meaning it doesn't block your page from rendering. Your product images, text, and layout all load as normal, and the compare button appears once the extension has loaded in the background.
On-demand processing — Comparisons are only generated when a customer actually clicks the compare button and selects products. Nothing happens on page load — there are no background API calls, no data pre-fetching, and no processing until the customer actively requests a comparison.
Lightweight code — The widget is built with vanilla JavaScript and CSS. There are no heavy frontend frameworks bundled into your storefront. The total footprint is minimal.
Cached results — When a comparison has been generated before, the cached result is returned instantly without any AI processing. This means repeat comparisons are fast for customers and use no additional server resources.
Shopify's performance guarantees
Theme App Extensions run within Shopify's managed infrastructure, which means:
- Shopify controls how and when extension scripts load to prevent performance issues
- Extensions are sandboxed and can't interfere with your theme's core functionality
- If an extension ever has an issue, it fails gracefully without affecting the rest of your page
This is a significant advantage over older methods of adding app functionality (like injecting script tags), which could slow down page loads. Theme App Extensions avoid these problems entirely.
What about the comparison itself?
The AI comparison generation happens on CompareKit's servers, not in the customer's browser. When a customer requests a comparison:
- The request goes through Shopify's app proxy to CompareKit's backend
- The comparison is generated server-side
- The finished table is sent back and displayed in the customer's browser
This means the customer's device does none of the heavy lifting. The only thing happening in the browser is displaying the results.