Third-Party Scripts Are Eating Your Storefront Speed

No single tag ruins a storefront. The problem is accumulation: a review widget, two analytics tools, a chat bundle, a personalisation script, three remarketing pixels, an A/B testing library and a currency converter — each added deliberately, none ever removed, all executing on the main thread.
Why this shows up as an INP problem
Third-party scripts mostly do not block first paint, so the page still looks fast. What they consume is main-thread time, which is exactly what the browser needs when a shopper taps a variant selector or a filter. The result is a page that renders quickly and then responds sluggishly — the worst combination, because the shopper has already committed attention before discovering it is slow.
Run the audit before the optimisation
List every script actually loading in production. This will not match anyone’s mental model, and it will not match the tag manager’s container either, because scripts inject other scripts.
For each one, answer three questions: who owns it, what decision does its data inform, and what breaks if it is removed. Anything where the answer to the second question is vague is a candidate for deletion, and in most audits that is a meaningful share of the list.
The order of intervention
Remove
The cheapest millisecond is the one you never spend. Duplicate analytics, tools from a finished trial, pixels for campaigns that ended, and widgets nobody has opened a report on in a year are pure cost.
Defer
Most of what survives does not need to run during initial render. Chat widgets, review carousels below the fold, and remarketing pixels can load after interaction or on idle without affecting their function.
Move server-side
Some measurement can run server-side, which removes client execution cost entirely. This is more work and has its own tradeoffs, so it is the third option rather than the first — but for high-value tags it is often the right end state.
Constrain what remains
Set a script budget and treat it as a real constraint: new tags require a decision about what comes out. Without that, the list only grows, because every individual addition looks small.
The organisational part
This is rarely a purely technical problem. Tags accumulate because adding one is easy and owned by whoever wanted it, while removing one requires knowing who depends on it. A quarterly review with named owners fixes more than any loading strategy — and it is the part most teams skip.