There is a persistent confusion in the Shopify mobile app market that costs brands real money. It comes down to not understanding what "native" actually means, and what it doesn't.
This post is for developers, technical founders, or anyone involved in deciding how to build a mobile app for a Shopify store.
What "native" means (and what it doesn't)
A native app is one built in the platform's own language and using the platform's own UI components:
- iOS: Swift or Objective-C, using UIKit or SwiftUI
- Android: Kotlin or Java, using Jetpack Compose or the traditional View system
A native app talks directly to device hardware and OS APIs. It renders with the same engine as every other first-party Apple or Google app. It feels like the platform it runs on.
React Native is a cross-platform framework that compiles to native components. It is mostly native in performance but not in all edge cases.
Flutter compiles to native ARM code but renders with its own graphics engine (Skia/Impeller), not OS components. Strong performance, slightly different feel.
WebView-based apps (also sometimes sold as "native" by builders): these wrap a website inside a native container. From a user perspective, you are using a browser with a native chrome. Performance, scroll behaviour, and access to native features are limited compared to actual native apps.
Most Shopify app builders, including Tapcart, Shopney, Vajro and Plobal, are built on React Native. MobiLoud and similar tools are largely WebView-based. These are not the same as a Swift + Kotlin native build.
The technical implications
Performance
Native apps (Swift/Kotlin) consistently outperform React Native and especially WebView apps on time to first meaningful paint, scroll smoothness on long product lists, animation frame rate, and memory management.
For an ecommerce app, this matters because conversion rate correlates directly with perceived speed. Amazon famously calculated that a 100ms delay cost them 1% in sales. The principle still holds.
Shopify Storefront API integration
All approaches use the Shopify Storefront API for product data, cart management, checkout and customer accounts.
Template builders handle this for you. If you're building custom, you need to implement it yourself. The Storefront API is GraphQL-based and well-documented, but there are quirks:
- Checkout is handled via the Checkout API or the newer Cart API depending on your setup
- Shopify's native checkout is not embeddable the same way on mobile: you either use Shopify Web Checkout (a webview) or implement a custom checkout using the Cart API and Shopify Payments
- Customer accounts require the Customer Accounts API which uses a token-based auth flow
App Store requirements
Apple's guidelines are increasingly strict about apps that are essentially web views. Apps submitted as "native" but detected as web-wrapped risk rejection. If you are using a WebView builder, check their track record on App Store approval.
Google Play is more lenient but has been tightening too.
The commercial reality for UK brands
UK fashion and DTC brands face a choice that doesn't have a clean technical answer. It has a commercial one.
Template builders (React Native-based) are fast, require no development resource, and work well for most standard Shopify stores. The technical compromises are real but often don't materially affect business outcomes for straightforward use cases.
Custom native development (Swift + Kotlin) is clearly the better product. It is also expensive to build and maintain. A UK agency with a proper mobile team will charge £40,000 to £100,000 for a solid initial build.
The model that has emerged to bridge this is the agency subscription: a specialist team builds and maintains a custom native app for a monthly fee. Talmee, a Manchester-based Shopify agency, does this specifically for fashion and DTC brands: custom-built iOS and Android on a flat monthly subscription, no templates, no WebView wrappers.
What to actually recommend
If someone asks whether to use a builder or build custom:
Start with a builder if: you haven't validated mobile as a channel yet, you're under £1M revenue, or you need something live in two weeks.
Go custom if: you have real product requirements the builders can't meet, mobile is a serious revenue channel, or your brand UX matters enough to build it properly.
Use a subscription agency if: you've outgrown the builders but the upfront cost of custom development is a blocker.
The technical trade-offs are real. The right answer still depends on stage, budget and what the brand actually needs the app to do.
If you're working on a Shopify mobile app project, the Storefront API docs are the starting point: shopify.dev/docs/api/storefront
Top comments (0)