# App submission

Use the **app submission** step to verify or change your selected release candidate build in app stores, review any final release settings, and submit your update for review.

![](https://727226624-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjFmyReUsbJqDjHEAlW%2Fuploads%2FtRUzCGXAi7totMojpMVL%2FSubmit.png?alt=media\&token=94da1cab-a849-4690-a620-929bf0bff752)

### Release workflow

If a **release workflow** or **deploy branch** is defined in your settings — for teams that produce different builds for staging/RC and production — you will see an additional module that displays the status of your production build workflow, along with a **Run workflow** action.

See our [Builds and Branches](https://docs.runway.team/getting-started/setting-up-your-integrations/builds-and-branches) article for additional information about configuring Runway for multiple build workflows.

### Selected build in app store

<figure><img src="https://727226624-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjFmyReUsbJqDjHEAlW%2Fuploads%2FPgeyiWKnR6OSo9ygcDH0%2Fimage.png?alt=media&#x26;token=9e013b8e-f6dd-46c9-9427-4268271b31bd" alt=""><figcaption></figcaption></figure>

The **selected build** module indicates which build is currently selected in the relevant app store, as well as its matching CI build identifier.

{% hint style="warning" %}
Runway isn’t always able to match a CI build to your selected build in the app store. This can occur if a build was manually uploaded to the app store, or if commit info is missing from your build in CI.
{% endhint %}

You can click the **Change selected build** action to switch the build that will be submitted for review. The list of builds will also show linked app store and CI build identifiers if available.

{% hint style="warning" %}
(iOS) Builds can take up to five minutes to show up in Runway after being uploaded to App Store Connect.
{% endhint %}

{% hint style="success" %}
Runway will automatically select your latest uploaded build in the app store if the ‘[Select the latest build](https://docs.runway.team/automations/types-of-automations#select-the-latest-build-in-app-store-connect-or-play-console)’ automation is enabled.

Note that Runway will **stop** automatically selecting the latest build if it detects that a build was manually selected either in Runway, or in App Store Connect or the Play Console.
{% endhint %}

### (iOS) Additional review submission items

Additional items (custom product pages or in-app events) can be included alongside your app version submission. To add an item to your review submission, use the **Add item** button visible on the App submission step. Additional items included in your review submission can be removed from the submission bundle anytime prior to version submission.

{% hint style="warning" %}
Once a review submission bundle has been submitted for review, individual items included in the submission cannot be modified or removed. To remove an item from a submitted bundle, you must first pull the bundle from review.
{% endhint %}

#### Handling items blocking review submission

If you see an error that the submission is blocked, you can choose one of the following options:

* Select "Unblock submission" from Runway. This will pull the current submission down and will then submit your new release with the previously submitted items included.

{% hint style="danger" %}
The "Unblock submission" action pulls the current blocking item(s) from review before resubmitting and therefore **restarts** the App Store Connect review process.&#x20;
{% endhint %}

* Manually pull the review in App Store Connect and resubmit the new items with the previously submitted items.&#x20;

#### Handling review submission issues

If there's a problem with one or more of your review submission items, you can choose one of the following options:

* Remove the problematic review submission item and proceed with the release of approved items. You can do this from Runway.
* Manually resolve the problematic review submission item by going in to App Store Connect — this may involve making changes to the item, or answering questions posed by the App Store Review team. Note that manual item resolution is not currently supported within Runway.
* Pull your review submission bundle from review and resubmit.

### <mark style="color:blue;">(iOS)</mark> App Store Connect release settings

This module reflects current settings for this app version in App Store Connect.

* Version release
  * Automatically release this version
  * Automatically release this version after App Review, no earlier than a specified time
  * Manually release this version

{% hint style="warning" %}
If you want Runway to automate the release of your app update, the **Version release** setting in App Store Connect should be set to **Manual**.
{% endhint %}

For more details on version release options, visit :link: [Apple’s documentation](https://help.apple.com/app-store-connect/#/devf7c309ab5).

* Phased release
  * Off
  * On — When choosing this option, Apple will automatically increase your phased release percentage in the App Store each day over a 7-day period.

{% hint style="info" %}
Phased release sequence: 1% of users on Day 1, 2% on Day 2, 5% on Day 3, 10% on Day 4, 20% on Day 5, 50% on Day 6, and 100% on Day 7.
{% endhint %}

For more details on Phased releases, visit :link: [Apple’s documentation](https://help.apple.com/app-store-connect/#/dev3d65fcee1).

### App review information

Here, you can verify key information that will be passed along to Apple’s reviewers here. To make changes, or to view all available fields, visit App Store Connect directly.

* **Contact** — Information for the contact person in your organization if the App Review team needs additional information.
* **Sign-in required** — Sign-in information for a demo account, if relevant.
* **Review notes** — Additional information about your app that can help during the review process.

For more details on App review information, visit :link: [Apple’s documentation](https://help.apple.com/app-store-connect/#/devbef8ace74).

### <mark style="color:green;">(Android)</mark> Retained builds (Additional builds)

In certain cases for Android releases, you may want to include one or more past builds alongside new builds with your submission – this is known as *retaining* builds in the Play Console.&#x20;

To choose past builds to include (retain) with your submission, click the dropdown on the right of "Change selected build", and click "Include build(s) from a previous release". Choose the past builds that you would like to retain and include alongside new builds with your submission.&#x20;

Runway will automatically include the past builds you select when submitting your app for review.

{% hint style="info" %}
Runway will automatically carry over any chosen retained builds to upcoming releases. You can stop retaining builds at any time by simply clearing the selection and saving.
{% endhint %}

### <mark style="color:green;">(Android)</mark> Release settings

This module reflects the settings that Runway will use when submitting your app for review with Google.

{% hint style="danger" %}
**A note on Google review:** Because of a limitation with the Google Play Publishing API, Runway is unable to differentiate between updates that are in review with Google and those that have been released to the Google Play Store. Because of this, when you submit an Android build for review, Runway's Submission, Review, and Release steps will appear ready (green), though they may still be in review with Google.
{% endhint %}

{% hint style="warning" %}
Due to a limitation with the Google Play Publishing API, Runway cannot offer support for Managed Publishing. If you have Managed Publishing enabled on the Google Play Console, you must manually publish updates from there. Additionally, the status of an update may appear as **Released** or **Staged Rollout** **In Progress** in Runway even if it has not yet been made available for users via the Play Console.
{% endhint %}

* Staged rollout
  * Don’t stage, release updates to all users immediately
  * Staged rollout to a percentage of users
* Initial staged rollout percent
  * Select the percentage of users who will receive your rollout when initially released.

{% hint style="info" %}
Your app's staged rollout percentage won't increase automatically by default.

Runway offers a [Customized staged rollouts](https://docs.runway.team/automations/types-of-automations#customized-android-staged-rollouts) automation that you can configure and enable to effect multi-day rollouts with increasing staged percentages (similar to Apple's 7-day phased releases, but more customizable).
{% endhint %}

* &#x20;Set in-app update priority for Google Play Console releases
  * Indicate how strongly to recommend a given update to users by selecting a number between 0 (default) to 5 (highly recommend). For more information on how to use this setting, see Google's [update priority documentation](https://developer.android.com/guide/playcore/in-app-updates/native#update-priority).

<p align="center"><img src="https://727226624-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjFmyReUsbJqDjHEAlW%2Fuploads%2FRhIqenx9vRQYwIBQvSoF%2Funknown.png?alt=media&#x26;token=1e9a794a-7c9b-4336-b48e-e88bf8bd7d4f" alt=""></p>

### App submission automations

You can configure the following App submission automations by visiting the Automations tab on this step:

* [Submit app for review on target date](https://docs.runway.team/automations/types-of-automations#submit-app-for-review-on-target-date)
* [Select the latest build in App Store Connect or Play Console](https://docs.runway.team/automations/types-of-automations#select-the-latest-build-in-app-store-connect-or-play-console)
* <mark style="color:blue;">(iOS)</mark> [Apply default Export Compliance Information to new builds in App Store Connect](https://docs.runway.team/automations/types-of-automations#apply-default-export-compliance-information-to-new-builds-in-app-store-connect)
* [Upload build artifacts for distribution](https://docs.runway.team/automations/types-of-automations#upload-build-artifacts-for-further-distribution)
* <mark style="color:blue;">(iOS)</mark> [Upload dSYMs to stability monitoring](https://docs.runway.team/automations/types-of-automations#upload-dsyms-to-your-stability-monitoring-provider)

### App submission checklist

You can add **checklist items** to this step by visiting the Checklist tab.

[Checklist items](https://docs.runway.team/using-runway/checklists) cover any unique parts of your team's release process and live across all your releases. Steps with checklist items won't be marked as complete (green) in Runway until all checklist items have been completed (in addition to the normal criteria that would mark a step as completed).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.runway.team/using-runway/release-steps/app-submission.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
