Most Shopify stores rely on apps. Reviews, upsells, product options, subscriptions, translations, wishlists, pop-ups, shipping rules, tracking: each one usually comes from a different developer.
When something on the store suddenly looks or behaves wrong, an app is often one of the first suspects. Typical symptoms include:
- a section of the product page has disappeared or moved
- the add to cart button no longer works
- the cart drawer opens empty or shows the wrong total
- a pop-up, badge or widget appears twice
- prices, discounts or product options display incorrectly
- the store has become noticeably slower
- an error or blank area appears where a widget used to be
The good news is that Shopify itself is hosted and managed, so an app problem rarely means your store data is damaged. Products, orders and customers are normally still safe in the admin. What is usually affected is the storefront: what your customers see and click.
The difficult part is that apps can touch the store in several different ways, and two apps that work perfectly on their own can interfere with each other. The goal is to find out which app is involved without removing things blindly.
This guide explains how apps interact with your theme, what you can check safely, how to test on a duplicate theme and when it makes sense to ask for help.
How do Shopify apps change my store?
Understanding how apps connect to the store makes it much easier to work out where a problem comes from. There are a few common methods.
App blocks and app embeds
Many modern apps use Shopify's theme app extensions. These add:
- app blocks, which you place inside a section using the theme editor, for example a reviews block on the product page
- app embeds, which are switched on for the whole theme and usually load a script, a floating widget or a pop-up
These are the cleanest method. You can see them in the theme editor, switch them on and off, and they are normally removed when the app is uninstalled.
Code added directly to the theme
Older apps, and some current ones, insert code straight into theme files. This might be a snippet file, a line in the main layout file or changes to product and cart templates.
This code is not always visible from the theme editor. It is also not always removed automatically when you uninstall the app.
Scripts loaded outside the theme
Some apps load scripts on the storefront in ways that do not depend on the theme files. This means that switching theme, or removing code from the theme, will not necessarily stop them from running.
Tracking pixels and customer events
Marketing and analytics apps often register pixels that track visits, add to cart events and purchases. These are managed separately from the theme in the store settings.
Apps that change data
Some apps change data behind the scenes, such as inventory, prices, tags or discount rules. If these misbehave, the symptom may look like a theme problem when it is actually a data problem.
What are the signs that an app is the cause?
No single sign proves it, but several together make an app a strong suspect.
The timing matches an app change
Think about what happened just before the problem appeared:
- Did you install a new app?
- Did an existing app release an update or change its settings?
- Did you change a setting inside an app?
- Did you switch on a new app embed or add an app block?
- Did someone uninstall an app?
- Did you update or replace the theme around the same time?
Apps can update without any action from you. If nothing changed on your side, check the app's changelog, release notes or support page, or look at whether other merchants are reporting the same issue in the app's reviews.
The problem is limited to one feature
If only the reviews section, only the product options or only the cart drawer is affected, the app responsible for that feature is the natural place to start. Bear in mind, though, that a different app may be interfering with it.
Two apps do similar jobs
Conflicts are especially common when two apps work on the same part of the store, for example:
- two apps that both change the cart
- a currency converter and a translation app
- two discount or upsell apps
- a product options app and a bundles app
- a subscription app and a custom add to cart button
The problem appears on some pages and not others
An app may only load on product pages, collection pages or the cart. If the issue follows that pattern, it points towards the app that loads there.
What should I check first?
These checks are safe and do not change anything on the store.
Write down what changed and when
Make a simple note with the date the problem started, any apps installed, updated or removed recently, any theme changes and who else has access to the store, such as staff, a freelancer or an agency.
Reproduce the problem in a private window
Open the store in a private or incognito browser window, so that you see it as a new visitor. Try it on both mobile and desktop.
Write down the page URL, what you clicked, what you expected and what happened instead. A screenshot or short screen recording helps anyone who investigates.
Check whether the checkout is affected
Try to reach the checkout with a test product. If customers cannot pay, the problem becomes urgent and you may want to deal with it before anything else. See Shopify checkout not working for more on that situation.
Review your installed apps
Open the list of installed apps in the Shopify admin and look at it with fresh eyes:
- Are there apps you no longer use?
- Are there apps that do the same job?
- Are there apps installed recently that you do not recognize?
- Is any app showing a warning or asking for new permissions?
Do not uninstall anything yet. Just make a list.
How do I test on a duplicate theme?
Testing on a duplicate theme is the safest way to investigate a theme-related app problem. Your live store stays exactly as it is while you experiment on a copy.
The general idea is:
- Duplicate the live theme.
- Open the duplicate in the theme editor.
- Switch off one app embed or remove one app block at a time.
- Preview the duplicate and check whether the problem is still there.
- Write down the result of each change.
If the problem disappears after switching off a particular embed, you have found a strong lead.
A few points to keep in mind:
- The duplicate theme is only visible to you in preview, so customers are not affected.
- Changes made to the duplicate do not affect the live theme.
- Some apps load scripts that do not depend on the theme, so they may still run in the preview.
- Some apps are linked to a specific theme and may not behave identically on a copy.
If the problem does not change in the duplicate at all, that is still useful information. It may point to an app that works outside the theme, to the app's own settings or to something unrelated to apps.
What about code left behind by old apps?
This is one of the most common causes of hard to explain problems.
When an app adds code directly to the theme and is then uninstalled, that code can stay in the theme files. It may:
- try to load a script that no longer exists
- display an empty box or a broken widget
- cause errors that stop other scripts on the page from working
- slow down the store
- interfere with an app that replaced it
Some app developers publish instructions for removing their code after uninstalling, so check the app's help pages.
Leftover code also explains why a fresh copy of your theme can sometimes make a problem disappear. That is a useful test, but rebuilding the live theme this way means redoing every customization.
What you should avoid
When the store is not working properly, it is tempting to try everything at once. These actions often make the situation harder to understand or to reverse:
- Uninstalling several apps at once. You will not know which one was responsible, and you may lose app settings and data that are difficult to rebuild.
- Editing the live theme code directly. Work on a duplicate first.
- Deleting code you do not understand. It may belong to an app you still use or to a custom feature.
- Installing another app to fix the problem. This can add a new conflict on top of the old one.
- Publishing a different theme in a hurry. The new theme may not include your sections, settings or app blocks.
- Ignoring the app's data. Uninstalling reviews, subscriptions or loyalty apps may remove data customers rely on. Check for an export first.
Should I contact the app developer?
Often, yes. App developers know their own code and frequently see the same conflicts across many stores.
To get a useful answer quickly, include:
- your store's myshopify address
- the name of the theme and its version, if you know it
- the page URL where the problem appears
- a short description of what happens and what should happen
- screenshots or a screen recording
- when the problem started
- any other apps that work on the same feature
- what you have already tried, including tests on a duplicate theme
Many developers will ask for collaborator access to investigate. Grant only the permissions they need, use Shopify's collaborator or staff access features rather than sharing your own login, and remove the access when the work is finished. Never send your password by email or chat.
When two apps conflict, each developer may point at the other. Someone who can look at the whole store can decide where the fix belongs.
When should I ask for support?
It is a good idea to involve a developer when:
- the checkout, cart or add to cart button is affected
- you cannot tell which app is responsible after simple tests
- two or more app developers are pointing at each other
- the problem involves code added directly to the theme
- you suspect leftover code from apps you removed long ago
- the store has many apps and has become slow or unstable
- the issue affects prices, inventory, discounts or orders
- you are not comfortable working with the theme code
What information should I collect?
The same details you would send an app developer are useful here, plus a list of installed apps, the results of any duplicate theme tests, any replies from developers and whether customers have reported problems. You do not need all of this to get started: a short description is enough to open a request.
How D4Hub can help
The aim is not only to make the symptom disappear, but to understand which component is responsible and fix it in the right place.
Depending on the situation, D4Hub can help with:
- reviewing your installed apps and how each one connects to the store
- testing app embeds and blocks on a duplicate theme
- finding and safely removing code left behind by uninstalled apps
- identifying conflicts between apps that work on the same feature
- talking to app developers with the technical details they need
- checking the cart, add to cart and checkout after a fix
- reducing the number of apps where several overlap
- recommending a safer routine for installing and testing new apps
You can ask for support at any stage. D4Hub can guide you through a single check, confirm whether an action is safe, or take over the full investigation.
Open a support ticketFor hands-on users: checking apps and theme code
These checks are for users comfortable with the Shopify theme editor and theme code. Always work on a duplicate of the live theme, never on the published one.
Before starting, keep a backup of the live theme: either download a copy from the theme actions menu (Shopify sends the file by email) or make an extra duplicate that you leave untouched as a reference.
Duplicate the live theme
- In the Shopify admin, go to Online Store > Themes.
- Open the actions menu (the three dots) next to the live theme.
- Choose Duplicate.
- Rename the copy clearly, for example with "app test" and the date.
Use this copy for all the following steps.
Switch off app embeds one at a time
- Open the duplicate in the theme editor by clicking Customize.
- In the left sidebar, open the App embeds panel.
- Switch off one embed and save.
- Preview the duplicate and test the problem again.
- Switch the embed back on before testing the next one, unless you want to test combinations.
Record each result. If the problem disappears when a specific embed is off, contact that app's developer with the details.
Look for app blocks in the affected template
In the theme editor, open the template where the problem appears, such as the default product template. Check the sections for app blocks. Hide or remove them one at a time on the duplicate and preview the result.
Search the theme code for app snippets
- On the duplicate, open the actions menu and choose Edit code.
- Look in the Snippets folder for files named after apps, including apps you have uninstalled.
- Open the main layout file, usually
layout/theme.liquid, and look for lines that render those snippets or load external scripts.
App code often appears as a line similar to:
{% render 'app-name-snippet' %}Older themes may use include instead of render. If you find a reference to an app you no longer use, comment it out on the duplicate rather than deleting it:
{% comment %}
{% render 'old-app-snippet' %}
{% endcomment %}Preview and test. If everything works, keep a note of the change before applying the same edit to the live theme. The code editor keeps earlier versions of each file you edit, which helps if you need to go back.
Check the browser console
Open the affected page in your browser, open the developer tools and look at the Console tab. Errors that mention a domain or script name belonging to an app are a useful clue. Copy the message text for the app developer, but check it does not include personal data first.
Review pixels and app permissions
Tracking apps may register pixels that are managed in the store settings rather than the theme. Look at the customer events area in Settings to see which pixels are active. In the installed apps list, check each app's access and remove apps you no longer use, one at a time, after exporting any data they hold.
D4Hub can help you read the results of these tests and decide which change is safe to apply to the live store.
FAQFrequently asked questions
Most apps that cause storefront problems do not touch your products or orders. However, apps with permission to edit data, such as inventory, pricing or bulk editing apps, can change data if they misbehave. If you notice unexpected changes to products or orders, pause the app's automations and contact the developer before doing anything else.
Not always. Apps built with theme app extensions are usually removed cleanly. Apps that added code directly to the theme may leave snippets and script references behind, which can cause errors or slow the store.
Some apps load scripts independently of the theme, so they keep running whatever you change in the theme files. The problem may also come from the app's own settings, from another app or from the theme itself. A duplicate theme test narrows things down but does not answer every case.
No. Removing apps one by one on the live store can break features customers rely on and may delete app data. Test on a duplicate theme first, and only uninstall an app once you are confident it is the cause and you have exported anything you need.
There is no fixed number. What matters is whether each app is necessary, whether several apps overlap and how much each one adds to page loading. A periodic review of installed apps is a good habit. See Why is my Shopify store slow? for more on how apps affect speed.
That can be true: the cause may be another app or the theme. Share the results of your duplicate theme tests with them, and if two developers each point at the other, ask someone who can look at the whole store to identify where the conflict happens.