Most merchants assume "Delete" removes everything. Wrong: Shopify only revokes API permission. Script tags, Liquid snippets, app blocks and assets stay in the theme. Here's exactly what happens — and how to fix it.
What happens on Shopify app uninstall?
Shopify only revokes the app's API access (OAuth token). All theme files the app wrote during use — script tags in theme.liquid, app blocks in settings_data.json, snippets, assets — stay fully intact. This is by design, not a bug.
Script tags
External JS like <script src="//cdn.judge.me/..."> in theme.liquid
App embed snippets
Liquid snippets with {% render 'klaviyo-signup' %} without existing source
OS 2.0 app blocks
JSON entries in settings_data.json that often break the theme editor
JavaScript bundles
Files in /assets (20-80 KB per app), loaded on every page
Section files
sections/*.liquid from page builders like PageFly, Shogun, GemPages
Locale keys
Translation entries in de.json, en.json for UI strings that no longer exist
Manual
3-5 hours per store. Risk: broken theme editor on settings_data.json errors
Shopify agency
€300-€1,500 per store. Not scalable but thorough
GhostCode
Under 3 minutes. Auto backup before every change. 200+ app patterns
Since April 2023 Shopify grants the write_themes scope restrictively. Most theme-cleanup scanners in the App Store are therefore read-only— they show you problems but leave you to search and delete manually.
GhostCode has held an official Asset API exemption since 11 March 2026. That's why GhostCode can not only scan but also safely write back to the theme — with automatic backup and one-click restore.
GhostCode scans, shows every finding with context, and cleans with one click.