1.Third-party app scripts blocking the main thread
Every installed app can inject its own JavaScript into your storefront, and most load synchronously in the head. A store with 15–20 apps often ships megabytes of scripts that delay rendering and make taps feel sluggish (INP).
How to fix it: Audit installed apps quarterly and uninstall what you don't actively use. Newer apps built as app embeds can be switched off in the theme editor, but older ScriptTag-based apps may keep loading — and can even leave leftover code in your theme after uninstalling, so search the theme for the app's name to be sure. For your own theme scripts, always load them deferred.
<!-- theme.liquid: never load theme JS synchronously -->
<script src="{{ 'custom.js' | asset_url }}" defer></script>