Embedded vs standalone. App architecture.
How to choose between embedded (App Bridge inside Shopify admin) and standalone (external UI) architectures for a Shopify app. Tradeoffs, patterns, and when each fits.
Embedded by default. Standalone by exception.
Embedded apps render inside the Shopify admin via App Bridge and feel native to merchants; standalone apps live on your own domain and require merchants to leave the admin to use them. Installed-to-first-use conversion is measurably higher for embedded (70-85 percent) vs standalone (45-60 percent). For 95 percent of Shopify apps, embedded is the correct architecture. Standalone still makes sense in four cases: UI needs more than admin-chrome-width real estate, app is used by non-merchant roles, app spans multiple storefronts, or app is a full tool where Shopify is one integration of many. Mature apps often ship both: embedded for daily workflow, standalone for heavyweight analytics and multi-store views, with single sign-on via Shopify OAuth between the two.
App Bridge wraps the iframe boundary.
An embedded Shopify app renders as an iframe inside the Shopify admin. The merchant clicks your app in the left-hand admin sidebar, Shopify's chrome wraps a full-width iframe, and your app's UI loads inside that frame. Shopify's App Bridge library provides the context bridge between the iframe and the parent admin: session tokens for API calls, navigation events, toast messages, modal dialogs, and in App Bridge 4, direct Shopify API access without a server middleman.
The merchant experience: they never leave Shopify. Clicking into your app loads the iframe in under 1 second on Built for Shopify apps, a few seconds on standard apps. The app feels like a first-party Shopify feature. Shopify's left-nav, top bar, and search stay visible; a merchant switching to another Shopify page does not lose their place. This is a large part of why Shopify prefers embedded: it reinforces Shopify as the center of the merchant's workflow.
The technical tradeoffs of embedded. Iframe sandboxing means your app cannot directly access the parent admin's DOM or cookies. Communication with the parent happens through App Bridge APIs; if you need to do something App Bridge does not expose, you cannot. Memory and CPU use are shared with the admin; a heavy embedded app that loads slowly looks like Shopify itself is slow. SEO is a non-issue because embedded apps are not public pages, but cross-origin iframe behavior (cookies, local storage, login sessions) requires some care in implementation.
A separate web app, OAuth-connected.
A standalone app is a full web application on its own domain (app.yourbrand.com) that merchants log into separately. The app connects to the merchant's Shopify store via OAuth, so the underlying API access is the same as an embedded app. The difference is the UI: merchants leave Shopify, navigate to your domain, log in with their Shopify-connected account, and interact with the app there.
The merchant experience: more friction, more freedom. Every interaction requires a context switch from the Shopify admin to your domain. The tradeoff is that you control the full screen: no admin chrome, no Shopify-imposed layout constraints, full freedom to design the UX however you want. For apps whose core interaction is complex data visualization, multi-window workflows, or creative tools (image editors, page builders), the extra real estate is worth the context-switch cost.
The technical tradeoffs reverse. No iframe sandboxing means full access to browser APIs, local storage, cookies. Full control over performance (no sharing with Shopify admin). SEO matters if you have public marketing pages on the same domain (separate subdomain usually handles this). The downside: every merchant must navigate away from Shopify to reach your app, which lowers daily engagement. Many merchants who install the app never return to it because the context-switch barrier is too high.
Embedded wins the activation battle.
Across 50+ Shopify apps we have shipped, worked on, or audited, the activation numbers are consistent. Embedded apps see 70 to 85 percent of installers reach first meaningful use (connecting a store, configuring the first feature, sending the first event) within 48 hours. Standalone apps see 45 to 60 percent activation in the same window. The 25-point gap compounds: apps that activate faster see better retention, better app-store ratings, and better expansion revenue.
The gap is entirely about friction. When an embedded app's "continue setup" button is one click inside the Shopify admin, the merchant continues. When a standalone app's "continue setup" requires navigating to app.yourbrand.com, logging in (Shopify OAuth but still a login screen), and finding where they left off, a significant fraction never complete the flow. This is not an app-quality issue; it is a context-switch friction issue that applies even to excellent standalone apps.
Mobile amplifies the gap. The Shopify Admin app (iOS and Android) renders embedded apps as in-app webviews; merchants interact with your app from their phone without friction. Standalone apps open in Safari or Chrome, require logging in again (mobile autofill is less reliable), and often get abandoned. For apps that expect significant mobile usage from merchants on the go (inventory checks, order confirmations, quick content updates), embedded is strongly preferred.
Most mature apps ship both.
Klaviyo, Gorgias, Recharge, Loox, and most top-tier Shopify apps are both. The embedded UI handles the merchant's daily workflow inside the Shopify admin: configuration, quick actions, light reporting, setting-changes. The standalone UI at app.klaviyo.com or app.gorgias.com handles the heavyweight use cases: deep analytics dashboards, multi-store management, long-form content creation, customer support workflows.
The pattern works because each surface plays to its strength. Embedded wins on activation because merchants do not need to leave Shopify for basic setup. Standalone wins on depth because complex workflows need more screen real estate and more time than a merchant typically spends in the admin. Single sign-on via Shopify OAuth means the same merchant identity flows through to both; the merchant does not log in twice.
The build cost for a hybrid app is roughly 1.4 to 1.6 times a pure-embedded app: some UI work is shared (components, API clients, business logic) but the two frontends need separate page routing, separate deploy pipelines, and separate UX design. For apps below 1M annual revenue, the hybrid pattern is usually premature. For apps above 5M annual revenue, it is almost always worth the investment because the retention and expansion revenue from power users justify the standalone surface. See the public vs private app decision guide for the prior-step distribution choice.
Framework-agnostic, direct API access.
App Bridge 4, released in 2024, replaced the React-specific App Bridge 3 with a framework-agnostic custom element API. The practical impact: Vue, Svelte, vanilla JavaScript, and future frameworks can all consume App Bridge without React-specific wrappers. Shopify also added direct API access from the embedded iframe for many endpoints, removing the need for a server middleman on simple Admin API calls.
Migrating from App Bridge 3 to 4 is non-trivial but less painful than the 2-to-3 jump. The core APIs (authenticated fetch, navigation, toast, modal) remain similar; the shift is how you consume them (custom elements vs React hooks). Most apps complete the migration in 1 to 3 weeks of engineering time. Apps still on App Bridge 2 or earlier are unsupported as of 2026 and will fail new App Store submissions.
New-in-4 worth knowing. Direct API access from the iframe lets your frontend call the Shopify Admin API without a server round-trip for read-only queries; this cuts page-load latency meaningfully for data-heavy embedded apps. Better iframe sandboxing under stricter cross-origin cookie policies (relevant for Safari users). Web Components for Shopify-native UI (navigation bars, action buttons, save-bar) make it easier to match the admin's look and feel without custom Polaris work.
Six answers.
What is an embedded Shopify app?
An embedded app is one whose admin UI renders inside the Shopify admin as an iframe, wrapped by Shopify's App Bridge library for context and navigation. Merchants never leave the Shopify admin to interact with your app; they click into your app's menu entry and your UI loads within the admin chrome. App Bridge 4, the current version in 2026, uses a custom element API rather than React-specific bindings, so any framework (React, Vue, Svelte, vanilla) can consume it. The embedded pattern is the default for new public apps and strongly encouraged by Shopify's review team.
What is a standalone Shopify app?
A standalone app is one whose admin UI is a separate web application on your own domain that merchants log into independently of the Shopify admin. The app still connects to the merchant's store via OAuth and uses Shopify's APIs, but the merchant's workflow takes them out of the Shopify admin into your standalone UI. Standalone architecture was the Shopify-app default until around 2018; since then embedded has become the strong preference for most use cases. Standalone is still used for apps whose UX is best handled outside the admin chrome (extensive analytics, complex multi-store management, full-screen creative tools).
Which one do Shopify merchants prefer?
Embedded, strongly. In app-review user feedback, merchants consistently mention that leaving the Shopify admin to log into a separate dashboard feels disruptive and increases the mental load of running the store. Embedded apps feel native; standalone apps feel like a separate tool. The conversion-rate impact is measurable: installed-to-first-use conversion for embedded apps is 70 to 85 percent, compared to 45 to 60 percent for standalone apps that require a separate login. The gap widens on mobile where Shopify admin is an app and standalone web UIs require context-switching.
When does standalone architecture make sense?
Four cases. One, the UI needs more screen real estate than the admin chrome leaves (1200+ pixels horizontal for a full dashboard). Two, the app is used by non-merchant roles (data analyst, creative director) who do not have Shopify admin access. Three, the app serves multiple storefronts (Shopify Markets, multi-brand agencies) where embedding inside one admin does not fit the multi-store workflow. Four, the app is a tool with significant non-Shopify functionality where Shopify is one of many integrations. In all other cases, embedded wins.
Can an app be both embedded and standalone?
Yes, and this is a common pattern for mature apps. The embedded UI handles the merchant's daily workflow inside the Shopify admin (configuration, light reporting, quick actions). The standalone UI handles the heavyweight use cases (deep analytics, multi-store views, bulk editing) on the same domain. Single sign-on between the two is via Shopify OAuth; the merchant's Shopify identity flows through to the standalone app. Klaviyo, Gorgias, Loox, and most top-tier Shopify apps use this dual model.
How does App Bridge 4 differ from previous versions?
App Bridge 4, released in 2024, moved from a React-specific library to a framework-agnostic custom element API. The migration from App Bridge 3 is non-trivial but less disruptive than the 2-to-3 jump: routing, navigation, and toast messages still use similar APIs. New-in-4: direct API access (your app can make authenticated Shopify API calls without a server middleman for many endpoints), better iframe sandboxing for security, Web Components for Shopify-native UI elements (navigation bars, action buttons). Every new embedded app in 2026 should target App Bridge 4; apps on App Bridge 2 or earlier are unsupported.
Architecture is a product decision.
Our Shopify app engagements include architecture review, App Bridge 4 migration, and hybrid embedded-plus-standalone builds. Scoped quote in 48 hours.