Is an uninstalled app still slowing down your Shopify store? A five-minute check

✍️ Mindaugas Bružas4 min readShopifyPage SpeedUninstalled AppsLeftover CodeChrome DevToolsCore Web Vitalstheme.liquidThemeMedicShopify Apps
Is an uninstalled app still slowing down your Shopify store? A five-minute check

You uninstalled the review app in March. It is September and PageSpeed Insights still lists a script from that app's domain as a blocking resource. This is not a bug in Shopify; it is how apps that were built before theme app extensions worked. They wrote code into your theme, and uninstalling revoked their access without removing what they wrote.

Here is a five-minute check to find out whether your store has this problem, and what to do if it does.

Check 1: the Network tab (2 minutes)

  1. Open your store's home page in Chrome. Press F12, open the Network tab, tick "Disable cache", reload.
  2. Filter by JS. Sort by the Domain column.
  3. Look for domains you do not recognise. Your theme and Shopify's own scripts come from cdn.shopify.com. Anything else belongs to an app, a pixel or a font service.
  4. For each unknown domain, ask: is this app still installed? Open Apps in Shopify admin and compare.

A red status (failed request) is the clearest sign: the app's server no longer answers, but your theme still asks it on every page view.

Check 2: theme.liquid (2 minutes)

  1. Online Store → Themes → Edit code → layout/theme.liquid.
  2. Search (Ctrl+F) for <script. Read each src attribute. Names like loox, judge, privy, klaviyo, hotjar, smile tell you whose it is.
  3. Search for {% render and {% include. Each one names a snippet; check the Snippets folder contains it. A missing snippet is a broken reference from a removed app.
  4. Look for comment blocks such as <!-- BEGIN app --> or {% comment %} added by ... {% endcomment %}.

Check 3: the Snippets folder (1 minute)

Sort snippets by name. App-added snippets usually carry the app name: judgeme_core.liquid, booster-seo.liquid, pushowl-init.liquid. For each one, search the whole theme for its name. If nothing renders it, it is dead weight.

What you will typically find

On a store that has run for two years or more, it is normal to find two to six leftover scripts, one or two broken render calls and a handful of orphan snippets. Together they often add half a second to a second on mobile, and the broken CSS from an old app is a frequent cause of "why does the button look different since the theme update".

What to do about it

Manual route. Duplicate the theme. In the copy, remove each confirmed leftover, preview, compare, publish. Never delete anything from the live theme directly. Budget an hour for a medium theme, and search every snippet name before deleting it.

With ThemeMedic. ThemeMedic runs the three checks above in one scan and adds two you cannot easily do by hand: it tests whether each external script host still responds, and it matches code against known app signatures so each finding says which app most likely added it. Code from apps that are still installed is marked as informational and cannot be removed by accident.

Scanning is free and unlimited. Pro (7.99 USD per month or 59 USD per year) removes the findings you confirm, after a full backup, with one-click restore; the recommended mode cleans a draft copy of the theme so the live store is untouched until you publish. Pro also re-scans weekly and emails you when something new appears, which catches the next app that leaves something behind.

There is a similarly named app on the App Store by another developer (handle theme-medic); ours is theme-medic-1. The ThemeMedic documentation covers findings, cleanup modes and backups.

Frequently asked questions

Can I just delete the script tag and see what happens? On a duplicate theme, yes, that is the manual method. On the live theme, no. A script tag can be shared by an app you still use.

Does this affect theme app extensions? No. Apps built as theme app extensions (all modern apps, including ours) add nothing to theme files and leave nothing on uninstall. Leftovers come from older apps.

How often should I check? After uninstalling any app, and once a quarter. Or turn on weekly monitoring and forget about it.


ThemeMedic is built by MB „Liūto media" in Lithuania. All our Shopify apps are listed at liutoapps.com.

MB
Mindaugas Bružas

Founder of MB „Liūto media“ — building six focused Shopify apps: estimated delivery dates, shipping bars, product badges, email deliverability, theme cleanup and reorder reminders.

Built by the team behind six Shopify apps. See what we make →