Apps are how most Shopify stores grow, and also how many of them get slow, expensive and fragile. Every app added during a launch, a sale or a test tends to stay forever. This guide is for founders and ecommerce managers who want a repeatable way to decide which apps earn their place, which ones Shopify now covers natively, and how to remove the rest without breaking anything.
Key takeaways
- Audit apps on four dimensions: business value, monthly cost, storefront performance impact and overlap with other apps or native features.
- Use Shopify's web performance reports, which annotate app installs on the Core Web Vitals timeline, plus a before-and-after Lighthouse test with the app's embed turned off.
- Shopify now covers jobs that used to need apps: bundles, subscriptions, forms, search filters, translations, automation and theme A/B testing.
- Uninstalling isn't the same as removing. Shopify warns that some apps leave theme code behind, and charges billed outside Shopify continue until you cancel them.
Why app bloat happens
It's rarely one bad decision. A review app gets installed at launch, a second one during a migration, a popup tool for a holiday sale, a page builder for one landing page, and a "speed optimizer" to fix the slowdown the others caused. Two years later nobody remembers why half of them are there.
The costs add up in three places:
- Money. Subscription fees, usage charges and overlapping tools doing the same job.
- Speed. Storefront apps can add JavaScript, CSS, fonts and network requests to every page. Google's web.dev guidance notes that third-party scripts can trigger many requests, keep the main thread busy and delay page load even when loaded with
asyncordefer. - Risk. More apps means more access to your store data, more scripts in checkout-adjacent pages and more things that break when your theme updates.
Step 1: Build the inventory
Create a spreadsheet with one row per app. Pull from three places:
- Settings > Apps in your admin: everything installed, including custom apps.
- Billing: what each app actually charged in the last few months. Check for charges billed outside Shopify, too (card statements, PayPal).
- Online Store > Themes > Customize > App embeds: which apps are injecting code into your live theme.
For each app, record:
| Column | What to capture |
|---|---|
| App | Name and developer |
| Job | The one job it does, in plain words |
| Owner | Who on the team relies on it |
| Monthly cost | From billing, including usage fees |
| Storefront footprint | App embed, app blocks, legacy theme code, or admin-only |
| Data access | What it can read or write (customers, orders) |
| Last used | When someone last logged in or changed a setting |
| Native alternative | Shopify feature or app that could replace it |
| Decision | Keep, replace, remove, or investigate |
Admin-only apps (reporting, inventory, fulfillment) don't affect storefront speed, so judge them on cost, value and data access. Storefront apps need the performance check below.
Step 2: Measure performance impact
Don't trust "lightweight" claims on app listings. Measure.
- Check the trend. Shopify's web performance reports (on the Online Store themes page and under Analytics > Reports) show LCP, INP and CLS from real visitor data at the 75th percentile. The Over Time charts annotate events like app installs and theme updates, so you can see if a metric got worse after an install. Data can lag up to 36 hours.
- Test with and without. Duplicate your live theme. In the copy, turn off one app's embed (or remove its blocks), then run Lighthouse or PageSpeed Insights on the same pages in both themes, several times each. Compare.
- Use DevTools for the details. In Chrome DevTools, block the app's script domains and reload to see the difference. web.dev recommends at least three recordings because third-party scripts can load different resources each time.
- Test real templates. Homepage, a collection page and a product page. Many apps only load on product pages, so test where they run.
As a benchmark, Shopify's Built for Shopify requirements say an app "must not reduce the storefront Lighthouse performance score by more than ten points." If an app costs you more than that in your own tests, it needs a very good business case.
Watch out: Lab tests like Lighthouse are noisy. Look for consistent differences across several runs, and confirm with the real-user trend in Shopify's reports before concluding an app is the problem.
Step 3: Find overlap
Group your apps by job and look for duplicates. Common overlaps I see:
- Two review apps (an old one kept "for the reviews") or a review app plus a separate UGC photo app.
- An email platform plus a separate popup app plus Shopify Forms, all collecting emails.
- A page builder used for two pages, alongside a theme that now has flexible sections and blocks.
- Several upsell, bundle and discount apps whose logic conflicts in the cart.
- A "speed booster" app on top of the apps that caused the slowdown.
Step 4: Check what Shopify now does natively
Shopify has steadily added free first-party apps and built-in features. Before renewing any app, check this list:
| Job | Native option | When a third-party app still makes sense |
|---|---|---|
| Fixed bundles and multipacks | Shopify Bundles (free, all plans) | Mix-and-match builders, complex rules; note Shopify Bundles isn't compatible with Shopify Subscriptions |
| Subscriptions | Shopify Subscriptions (free) | Advanced retention flows, build-a-box, deep analytics |
| Email capture forms | Shopify Forms (free) | Advanced targeting tied to your email platform |
| Search filters, synonyms, recommendations | Shopify Search & Discovery (free) | Large catalogs needing merchandising rules or AI search |
| Translations | Translate & Adapt | Professional translation workflows |
| Automations | Shopify Flow | Rarely; Flow plus Sidekick covers most internal automations |
| Theme and checkout A/B tests | Rollouts (Spring '26 Edition) | Full experimentation programs |
| Simple internal tools | Sidekick app generation (Grow, Advanced, Plus) | Anything storefront-facing or integration-heavy |
| Customer support chat | Shopify Inbox | Helpdesks with ticketing and multichannel support |
Native doesn't always win. A specialized app can earn its cost through features or conversion. But "we've always had it" isn't a reason.
Step 5: Decide
For each app, pick one:
- Keep. Clear value, acceptable speed impact, no overlap.
- Replace. A native feature or a consolidated app covers it. Plan the switch.
- Remove. Nobody uses it, or the value doesn't justify the cost or speed.
- Investigate. The owner is unclear or the impact is unknown. Give it two weeks and a name.
I usually start with the easy wins: unused apps with no storefront footprint, then apps with a clear native replacement, then the expensive or slow ones that need a migration plan.
Step 6: Remove apps cleanly
Uninstalling is where stores get burned. Follow this order:
- Export the app's data first: reviews, subscriber lists, settings, reports. Shopify notes that some apps store data you can't recover after uninstalling.
- Read the app's uninstall instructions on its listing or ask the developer. Shopify warns that some apps add theme code that isn't removed automatically.
- Remove app blocks and turn off app embeds in a duplicate theme, then publish.
- Uninstall from Settings > Apps. Future Shopify-billed charges stop, though you may be billed for the current cycle.
- Cancel external subscriptions billed outside Shopify. Uninstalling doesn't stop those.
- Search the theme code for leftover snippets, script tags or
{% render %}calls with the app's name, and remove them carefully. - Re-test the pages the app touched, plus checkout and the cart.
Apps built with theme app extensions are easier: Shopify's docs say they don't edit theme code, and Built for Shopify apps are required to use them. Older apps that injected code directly are the ones that leave residue, and leftover code can include duplicate structured data. See our product structured data guide for how to check.
Step 7: Keep it from happening again
- One owner per app, named in your inventory.
- A short approval rule for new storefront apps: what job, what it replaces, and a before-and-after speed test.
- Trial dates in the calendar, so a free trial doesn't silently become a subscription nobody uses.
- A quarterly review of the inventory and the web performance trend.
FAQ
How many apps is too many for a Shopify store?
There's no magic number. A store with 30 admin-only apps can be fast, and a store with five heavy storefront apps can be slow. Judge each app on value, cost and measured impact.
Do apps slow down my Shopify store?
Storefront apps can, because they add scripts and styles to your pages. Admin-only apps don't affect storefront speed. Measure with Shopify's web performance reports and a with/without test.
Will uninstalling an app remove its code?
Not always. Apps built with theme app extensions don't edit theme code, but Shopify warns that some apps add code that isn't removed automatically. Check the app's instructions and search your theme after uninstalling.
Should I install a speed optimization app?
Be cautious. Removing what slows the store usually beats adding another script on top. For theme-level improvements, see our Core Web Vitals guide.
Next steps
Block two hours, build the inventory, and mark every app keep, replace, remove or investigate. Remove the obvious ones this week and schedule the replacements. If you'd like an outside review of your stack, book a Shopify consultation.
Sources
- Shopify Help Center: Uninstalling apps
- Shopify Help Center: Web performance dashboard
- Shopify.dev: Built for Shopify requirements
- Shopify.dev: Theme app extensions
- Shopify Help Center: Bundles eligibility and considerations
- Shopify Help Center: Subscriptions
- Shopify Help Center: Generate apps with Sidekick
- Shopify App Store: Apps by Shopify
- Shopify Editions Spring '26
- web.dev: Loading third-party JavaScript
