asc publish
Submit your app for review and publish to the stores.
Important
This command submits your app for review. Make sure all metadata and binaries are ready before publishing. This action cannot be undone.
Usage
Syntaxbash
asc publish [store] [options]
Options
| Option | Description |
|---|---|
appstore | Submit to App Store only |
playstore | Submit to Google Play only |
--version, -v | Version to submit |
--track | Release track (production, beta, alpha) |
--rollout | Staged rollout percentage (Play Store) |
--auto-release | Release automatically after approval |
--phased | Enable phased release (App Store) |
--project, -p | Project ID (uses current if not specified) |
Examples
Submit to both stores
Both Storesbash
asc publish --version 2.0.0# Output:# Pre-submission check...# ✓ Version 2.0.0 binary uploaded# ✓ All metadata complete# ✓ Screenshots uploaded for all locales# ✓ Store credentials valid## Ready to submit version 2.0.0 for review?# This will submit to both App Store and Google Play.## [y/N]: y## Submitting to App Store Connect...# ✓ App submitted for review# Version: 2.0.0# Status: Waiting for Review# Estimated review time: 24-48 hours## Submitting to Google Play Console...# ✓ App submitted for review# Version: 2.0.0 (200)# Track: Production# Status: Pending publication## Both stores submitted successfully!
Submit to App Store with phased release
Phased Releasebash
asc publish appstore --version 2.0.0 --phased --auto-release# Output:# Pre-submission check for App Store...# ✓ Version 2.0.0 binary uploaded# ✓ All metadata complete# ✓ Screenshots uploaded## Submitting to App Store Connect...# ✓ App submitted for review# Version: 2.0.0# Release Type: Phased (7 days)# Auto-release: Enabled# Status: Waiting for Review
Submit to Play Store with staged rollout
Staged Rolloutbash
asc publish playstore --version 2.0.0 --rollout 10# Output:# Pre-submission check for Google Play...# ✓ Version 2.0.0 (200) AAB uploaded# ✓ All metadata complete# ✓ Screenshots uploaded## Submitting to Google Play Console...# ✓ Release created# Version: 2.0.0 (200)# Track: Production# Rollout: 10%# Status: Pending publication## Use 'asc publish playstore --rollout 50' to increase rollout.
Submit to beta track
Beta Releasebash
asc publish --version 2.1.0-beta --track beta# Output:# Pre-submission check...# ✓ Version 2.1.0-beta binary uploaded# ✓ All metadata complete## Submitting to beta tracks...## App Store Connect (TestFlight):# ✓ Build submitted to TestFlight# Version: 2.1.0 (beta)# External testing: Enabled## Google Play Console:# ✓ Release created on beta track# Version: 2.1.0-beta (210)# Track: Beta
Release Tracks
| Track | App Store | Play Store |
|---|---|---|
production | App Store (public) | Production track |
beta | TestFlight (external) | Open testing track |
alpha | TestFlight (internal) | Internal testing track |
CI/CD Integration
For automated releases in CI/CD pipelines:
CI/CD Examplebash
# Non-interactive publish (requires --force for CI)asc publish --version $VERSION --force# GitHub Actions example- name: Publish to storesenv:ASC_API_KEY: ${{ secrets.ASC_API_KEY }}run: |asc publish --version ${{ github.ref_name }} --force