---
title: Run an Audit
description: Start a full ASO audit for a project, follow its progress, and understand what happens on a first run, a re-run, or a failure.
---

An audit analyzes your live store listing across every audit engine and produces a scored report with prioritized recommendations. You run one from inside a project whenever you want a fresh read on where your ASO stands — after a listing change, before planning a revision, or on a schedule.

## Before you start

- The project must have a **linked store** for the storefront you want to audit. See [Google Play Linking](/docs/store-setup/playstore-credential) or the App Store equivalent.
- Auditing consumes plan entitlements. Which engines run — and how far back the Sentiment Engine looks — depends on your plan. See [Plans and entitlements](/docs/billing/plans-and-entitlements).
- One audit run covers one **store** and one **locale**. If your project has more than one configured locale, see [Per store and per locale](#per-store-and-per-locale) below.

## Start a run

### 1. Open the project and pick the store

Open the project. The store switcher (**App Store** / **Play Store**) selects which storefront the audit runs against. Audits always run against the store you have selected.

### 2. Click Run Full Audit

- On a project that has **never been audited** for the selected store, the empty state reads **No Audit Available** with the copy "Run a full audit to get a comprehensive ASO performance overview with actionable recommendations." Click **Run Full Audit**.
- On a project that already has a report, use the **Re-run** action (also labeled **Run New Audit** in the run dialog) from the audit view or [Watchtower](/docs/projects/watchtower).


### 3. Confirm and start

The **Run New Audit** dialog confirms the **App ID**, **Store**, and **Region** it's about to audit. Click **Start Audit**.

## What you'll see while it runs

The run streams live progress. It moves through these states:

- **Queued** — briefly, if the engine hasn't picked the run up yet ("Starts shortly...").
- **Running Audit...** — a per-engine progress list shows each engine as it works. An audit takes a few minutes; the keyword work is usually the longest leg.
- **Audit Complete** — a success state with a **View your report** button.

You don't have to keep the dialog open. You can close it and keep working — the run continues in the background, and Apptonomy **emails you when the audit is ready**. On a re-run, your existing report stays on screen unchanged until the new one finishes, so nothing flashes to a loading state mid-read.

:::note[First run vs re-run]
On a **first run**, the banner reads "Running your first audit — this can take a few minutes," and the report appears as soon as it completes. On a **re-run**, the banner reads "Re-running audit — this can take a few minutes"; when it finishes you'll see an **Audit refreshed** confirmation, and the report updates to the new run.
:::

## Verify it worked

When the run completes you'll see **Audit completed successfully** and a **View your report** button. Opening the report should show the overall **ASO Readiness Score** and every engine section appropriate to your plan. To learn how to read it, see [Understanding your report](/docs/audits/understanding-your-report).

## Per store and per locale

An audit is scoped to one store and one locale:

- **App Store** audits are scoped by **country/region**.
- **Play Store** audits are scoped by **country and language**.

If your project has multiple configured locales and you start an audit without pinning one, Apptonomy fans out and runs a separate audit for **every configured locale**. Each locale gets its own report and its own score, so you can see how the listing performs market by market. Running against a store you haven't linked isn't possible — link it first.

## When a run doesn't fully succeed

An audit doesn't fail all-or-nothing. If most engines finish but one or two don't, you get a **partial** report rather than an error.

### Partial coverage

If a specific engine couldn't finish, the completion dialog says **Your report is ready (partial coverage)** and names which section is missing (for example, "The Keyword engine couldn't finish, so that section is missing"). Everything else is present and scored. The overall score is computed from the engines that did run — a missing engine's weight is redistributed across the rest, so the score stays on a 0–100 scale. See [How the overall score handles missing engines](/docs/audits/understanding-your-report#missing-engines).

### The whole run failed

If the run fails outright, you'll see **Audit Failed** with an error message and a **Try Again** button. On the project view, a banner reads "Audit failed." with a **Retry** link. Note the **Run ID** shown in the dialog if you need to report the problem.

## Troubleshooting

### The audit seems stuck on "Running"

### The audit seems stuck on Running {#stuck-running}

Audits run for a few minutes, and the keyword work can take a while against external data sources. If a run genuinely stalls, Apptonomy detects the stalled run server-side and marks it failed so you can retry — you don't need to leave the dialog open for this to happen. Refreshing the page mid-run reconnects you to the running audit; it does **not** start a new one.

### I clicked Run again and it reconnected instead of starting fresh

### It reconnected instead of starting fresh {#reconnect-existing}

If a run for the same app, store, and locale is already in flight, Apptonomy reconnects you to it rather than starting a duplicate. Wait for the active run to finish, then run again.

### The button is greyed out or shows a gating state

### The button is greyed out or shows a gating state {#gating-state}

Auditing requires an active plan entitlement. If your trial has expired or your plan doesn't include audit execution, you'll see an upgrade prompt instead of a spinner. See [Plans and entitlements](/docs/billing/plans-and-entitlements).

## Related

- [Understanding your report](/docs/audits/understanding-your-report)
- [Working with recommendations](/docs/audits/recommendations)
- [Sharing and export](/docs/audits/sharing-and-export)
- [Audit History](/docs/audits/history)
- [Scheduled Audits](/docs/audits/scheduled-audits)
- [Audit Engines](/docs/audit-engines/overview)
