Publishing Your App on the Shopify App Store
The Shopify App Store hosts over 10,000 apps competing for merchant attention, yet getting an app approved — and discovered — is a process that trips up even experienced developers. Shopify's review team rejects approximately 40% of first submissions, most for preventable reasons that are well-documented but widely ignored.
This guide provides the complete submission playbook: technical requirements, design standards, listing optimization, and the growth strategies that move apps from zero installs to consistent monthly recurring revenue.
Key Takeaways
- Shopify's review process takes 10-15 business days on average — plan your launch timeline accordingly
- Polaris design system compliance is non-negotiable for embedded app sections
- App listing quality directly impacts conversion from search results to installs — invest in it
- Onboarding flow quality is a review criterion — first-run experience must be intuitive without Shopify staff help
- Pricing transparency requirements: all charges must use Shopify Billing API, no off-platform payments
- Privacy compliance (GDPR, CCPA) documentation must be accurate and complete
- A 4.0+ review rating in your first 6 months is critical for sustained App Store visibility
- Partner Dashboard analytics reveal exactly where merchants abandon your install funnel
Partner Account and App Setup Prerequisites
Before submitting, your Shopify Partner account and app configuration must be complete.
Partner account requirements:
- Verified Shopify Partner account at
partners.shopify.com - Bank account connected for revenue payouts
- Two-factor authentication enabled
- Partner agreement accepted (including revenue share: Shopify takes 20% of subscription fees, 0% on apps free forever or above $1M annual revenue under the revenue share restructure)
App configuration in Partner Dashboard:
Navigate to Apps > Create app. Configure:
- App name: Unique, descriptive, no "Shopify" in the name (trademark policy)
- App URL: Your production app URL (must use HTTPS)
- Allowed redirect URLs: Include all callback URLs used in your OAuth flow
- Scopes: Request only the minimum necessary scopes — excessive scope requests trigger review rejection
- App proxy (if applicable): Configure URL path and target URL
GDPR compliance webhooks (required for all apps):
# shopify.app.toml
[[webhooks.subscriptions]]
topics = ["customers/data_request"]
uri = "/webhooks/gdpr/customers-data-request"
[[webhooks.subscriptions]]
topics = ["customers/redact"]
uri = "/webhooks/gdpr/customers-redact"
[[webhooks.subscriptions]]
topics = ["shop/redact"]
uri = "/webhooks/gdpr/shop-redact"
These three endpoints must return 200 within 5 seconds and actually process the data deletion/export requests. The review team tests these endpoints. Returning 200 without implementing the functionality causes post-approval removal.
Technical Review Requirements
Shopify's review team performs manual and automated technical checks. Pass all of these before submitting.
Authentication and security:
| Requirement | Check |
|---|---|
| OAuth flow uses HTTPS exclusively | All redirect URIs must be HTTPS |
| State parameter in OAuth requests | Prevents CSRF attacks |
| HMAC verification on webhooks | Must verify all incoming webhooks |
| No hardcoded API credentials | Credentials in environment variables only |
| Session data encrypted at rest | Required for apps storing sensitive data |
| CSP headers on all pages | Required for embedded app pages |
API usage requirements:
- Never use deprecated API versions — always use a version from the last 12 months
- Handle API rate limiting gracefully (429 responses must trigger retry, not errors shown to merchants)
- Never make API calls on behalf of merchants after uninstall
- Clean up all merchant data within 48 hours of receiving a
shop/redactwebhook
App performance benchmarks:
- Embedded app initial load: under 3 seconds on average merchant hardware
- No JavaScript errors in browser console during normal use
- All pages render correctly on Chrome, Firefox, Safari, and Edge
- Mobile-responsive if your app has any customer-facing components
Onboarding flow review:
The review team installs your app and evaluates the first-run experience without documentation. Your onboarding must:
- Clearly explain what the app does within the first screen
- Guide new users through required setup steps
- Not require contacting support to complete initial configuration
- Use Polaris
CalloutCardorBannercomponents for onboarding prompts
Design and UX Standards
Shopify's design requirements are enforced strictly because merchant experience consistency across the admin is a core platform value.
Mandatory Polaris usage:
All UI elements within the embedded app (rendered within the Shopify admin iframe) must use Polaris components. Specifically prohibited:
- Custom button components that do not match Polaris
Buttonstyles - Custom form inputs that do not match Polaris
TextField,Select,Checkboxstyles - Custom color schemes that deviate from Polaris design tokens
- Custom loading states that do not use Polaris
SpinnerorSkeletonPage
App Bridge navigation:
Embedded apps must use App Bridge for navigation actions. Using window.location.href or <a> tags for navigation inside the embedded context breaks the merchant experience. Use:
import { useNavigate } from "@remix-run/react";
// For in-app navigation
const navigate = useNavigate();
navigate("/app/settings");
// For external links (opens in new tab, respecting embedded context)
import { useAppBridge } from "@shopify/app-bridge-react";
const app = useAppBridge();
// Use Redirect action for external URLs
Error states:
The review team specifically tests error conditions. Every form must handle:
- Network errors (show
Bannerwith error message, not a blank page) - Validation errors (inline, next to the relevant field)
- Empty states (use Polaris
EmptyStatecomponent with an action) - Loading states (use
SkeletonPagefor initial loads,Spinnerfor actions)
Accessibility requirements:
- All images must have descriptive alt text
- Interactive elements must be keyboard navigable
- Color contrast must meet WCAG AA standards (handled by Polaris if used correctly)
- Screen reader labels on all icon-only buttons
Listing Optimization for App Store Discovery
Your app listing is a sales page. Merchants who find your app via search or category browsing make install decisions based on your listing quality within seconds.
App name optimization:
Your app name appears in search results and should communicate the primary benefit. "Email Marketing Automation" ranks better for relevant searches than "MailBooster Pro." Keep names under 30 characters for clean display in search results.
App tagline:
One sentence, 60 characters maximum. Lead with the benefit, not the feature. "Recover 15% more abandoned carts" outperforms "Automated cart recovery emails."
App description structure:
Paragraph 1 (above the fold): Core value proposition and primary use case.
What problem does your app solve? For whom? What is the primary outcome?
Paragraph 2: Key features and how they deliver the benefit.
Paragraph 3: Social proof — merchants using the app, notable results, reviews.
Feature list (bullet points): 5-8 specific features with brief descriptions.
Paragraph 4: Integration information, compatibility notes.
Paragraph 5: Support and documentation resources.
Screenshot requirements:
- Minimum 3 screenshots, maximum 8
- Resolution: 1600x900 pixels minimum
- Show your app in use — not marketing graphics or feature diagrams
- First screenshot is the most important — it appears in search results
- Annotate screenshots to highlight key features
- Include a video walkthrough (30-90 seconds) — apps with video convert 40% better
Category and keyword selection:
Choose the most specific category that accurately describes your app. Miscategorized apps are penalized in search ranking. For keywords: include synonyms, use case descriptions, and problem statements that merchants actually search for. Do not keyword-stuff your description — Shopify's algorithm is sophisticated and penalizes unnatural density.
Pricing Page Strategy
Pricing architecture significantly impacts install conversion rates and churn.
Freemium model performance:
Apps with a free tier have 3-5x higher install rates than paid-only apps. Free tiers create a conversion funnel: merchant installs for free → experiences value → upgrades for advanced features. Design your free tier to be genuinely useful but limited in a way that makes upgrading natural (usage limits, feature gates, merchant count caps).
Pricing page best practices:
- Show all plans with clear feature comparison table
- Highlight the recommended plan (most apps make the middle tier "Popular")
- Include a money-back guarantee if offering paid plans
- Use monthly pricing as the primary display even if annual is available
- Never display pricing that differs from what the Billing API charges — review rejection is automatic
Shopify Billing API implementation:
All charges must go through Shopify's Billing API. Off-platform payment links (Stripe, PayPal) are prohibited for in-app features. You may have off-platform payments for professional services, but app features must be gated behind Billing API plans.
// billing configuration example for tiered pricing
billing: {
"Starter": {
amount: 9.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
trialDays: 14,
},
"Professional": {
amount: 29.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
trialDays: 14,
},
"Enterprise": {
amount: 99.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
}
}
The Review Submission Process
Pre-submission checklist:
- App installs cleanly on a fresh development store
- OAuth flow completes without errors
- All GDPR webhooks return 200 and process correctly
- App uninstalls cleanly (session deleted, no orphaned data)
- Onboarding flow guides new users through setup without external help
- All Polaris components used for embedded UI
- App loads in under 3 seconds on a throttled connection
- Privacy policy URL is live and accurate
- App listing screenshots show real app UI
- Pricing page is complete and matches Billing API configuration
- No console errors during normal app operation
- Rate limiting handled gracefully
- Test on multiple browsers (Chrome, Firefox, Safari, Edge)
Submitting for review:
In the Partner Dashboard, navigate to your app > Distribution > Submit for review. Provide:
- Test instructions: exact steps for the review team to install and use every feature
- Test credentials: login details for any third-party integrations your app connects to
- Video walkthrough (optional but recommended for complex apps): 2-5 minute demo
- Changelog notes (for updates): what changed and why
After submission:
- Review begins within 3 business days of submission
- Initial review feedback typically arrives within 10-15 business days
- If rejected, you receive specific feedback — address all points before resubmitting
- Resubmission queue is faster (typically 5-7 business days)
Post-Launch Growth Strategies
Approval is day one, not the finish line. Sustained App Store growth requires active management.
Review generation:
Apps with fewer than 10 reviews have significantly lower conversion rates than apps with 50+. Implement an in-app review request after a merchant achieves a meaningful milestone (first 100 emails sent, first recovered cart, first synced order). Use Shopify's native review request flow:
// Trigger in-app review prompt via App Bridge
import { Modal, TitleBar } from "@shopify/app-bridge/actions";
// Display after user achieves milestone
const modal = Modal.create(app, {
title: "Leave a review",
url: `https://apps.shopify.com/your-app/reviews`,
});
modal.dispatch(Modal.Action.OPEN);
Feature release cadence:
Apps that release updates frequently rank higher in Shopify's "New and updated" filter and demonstrate active maintenance — a key purchase signal for merchants. Aim for at least one meaningful update every 4-6 weeks.
Support quality:
Shopify monitors support response times and resolution rates. Apps with support response times over 48 hours see review score degradation. Use Shopify's built-in support inbox (accessible from Partner Dashboard) for tier-1 support, with escalation to email/Slack for complex issues.
App Store optimization (ASO):
Track your keyword rankings in App Store search monthly. Use Partner Dashboard analytics to identify which search terms drive impressions and installs. A/B test your app listing title and tagline — even small improvements in conversion rate compound significantly at scale.
Frequently Asked Questions
How long does the Shopify App Store review take?
Initial reviews typically take 10-15 business days (2-3 weeks). Resubmissions after addressing rejection feedback take 5-7 business days. Complex apps with third-party integrations or unusual permission scopes may take longer as reviewers need more time to verify functionality. Plan your launch timeline with an 8-week buffer from submission to public availability: 2 weeks for first review, 2 weeks to address feedback, 1 week for resubmission review, and 3 weeks buffer for unexpected issues.
What are the most common reasons for App Store rejection?
The five most common rejection reasons are: (1) Polaris design standards not followed in embedded sections, (2) GDPR webhooks not properly implemented, (3) Excessive API scope requests not justified by app functionality, (4) Onboarding flow requires external documentation to complete, (5) Pricing structure includes off-platform payment options for in-app features. Address all five proactively before submitting to significantly reduce rejection probability.
Can I list my app as free and add paid plans later?
Yes, and this is a recommended strategy. Launch as free to build initial install volume and reviews, then introduce paid plans once you have 50+ active merchants and a 4+ star rating. Use Shopify's Billing API grandfathering capabilities to let existing users retain free access if desired. A free launch generates reviews and social proof that significantly improves conversion rates when paid plans go live.
What happens if my app violates policies after approval?
Shopify monitors published apps for policy compliance. Violations can result in: warning with required remediation deadline, suspension from the App Store (existing installs continue but no new installs), or removal from the App Store (all installs lose access). Common post-approval violations include: API credential hardcoding discovered via security audits, off-platform payment links found in app UI, and data retention violations (storing merchant data after uninstall).
How important is the app's rating for discoverability?
Rating is one of the most important factors in Shopify's App Store ranking algorithm. Apps below 4.0 are significantly suppressed in search results and category browsing. Apps with 4.7+ ratings appear in curated "Top picks" sections. Actively monitor your reviews, respond to negative reviews professionally and with solutions, and implement a systematic review request flow to maintain a healthy rating over time.
Next Steps
Building an app that passes Shopify review and grows to sustainable MRR requires expertise in Shopify's technical standards, App Store listing optimization, and merchant acquisition strategy.
ECOSIRE's Shopify app development services cover the complete journey from architecture through App Store approval: technical development, review preparation, listing optimization, and post-launch growth support. Our apps have a 92% first-submission approval rate.
Start building your Shopify app with ECOSIRE — speak with our development team about your app concept.
Written by
ECOSIRE Research and Development Team
Building enterprise-grade digital products at ECOSIRE. Sharing insights on Odoo integrations, e-commerce automation, and AI-powered business solutions.
Related Articles
Case Study: eCommerce Migration to Shopify with Odoo Backend
How a fashion retailer migrated from WooCommerce to Shopify and connected it to Odoo ERP, cutting order fulfillment time by 71% and growing revenue 43%.
Integrating GoHighLevel CRM with eCommerce Stores
Step-by-step guide to integrating GoHighLevel CRM with Shopify and WooCommerce. Sync orders, automate post-purchase flows, and recover abandoned carts at scale.
Odoo + Shopify Sync: Products, Orders, and Inventory
Complete guide to syncing Odoo 19 with Shopify. Covers product sync, real-time order import, bidirectional inventory, financial reconciliation, and multi-store management.