Skip to content

Get the nod from App Review.

An agent taps through your app before Apple does.

Nod installs your build in a simulator and uses it the way a reviewer would, with your listing and your code open next to it. You get the full replay, what would get the build sent back, and how to fix it.

Apple always makes the final call. We help you walk into review prepared.

Found so far · 0

  • Nothing yet. Nod is looking around…
Pantry Pal 2.4.0 · step 2 of 20

Run log · simulator

  1. 0:04Read the first onboarding screen

    Copy is final and readable at the default text size. No placeholder text.

Why now

Rejections were always annoying. Now they're expensive.

23%
of App Store submissions were rejected in 2025: about 2.09 million of 9.1 million.
Source: Apple, App Store transparency data
2+ weeks
is how long developers report waiting for a first review of new apps this autumn. Each avoidable rejection now costs weeks, not days.
Developer reports, autumn 2026
No. 1
rejection category is Performance: crashes, incomplete apps, broken logins, placeholder content. You only find those by running the app.

How it works

Like a friendly reviewer, available before you submit.

  1. 1Connect

    Add an App Store Connect API key and your GitHub repository. Read-only, about two minutes.

  2. 2Audit

    Nod checks your listing and code, then an agent installs your build and taps through it like a reviewer.

  3. 3Fix and submit

    Get a clear verdict, a fix for every finding, and a reviewer package to paste into your submission.

Three audit layers stacked: store listing, code, live run123

Three layers

Reading the code isn't enough. The app has to run.

Most rejections are about what happens when someone actually uses your app. So Nod checks three layers, and the third one is a real run.

  1. Store listing via App Store Connect

    Texts, screenshots and age rating · Privacy details · Subscription setup · Review notes and demo account

  2. Code via GitHub

    Permission strings · Privacy manifest · Account deletion and sign-in options · Paywall terms

  3. Live run in an iOS simulator

    Onboarding and sign-in with your demo account · Paywall and restore purchases · Account deletion · Crashes, placeholder text, dead links

Studio plan: the same run on a real iPhone, with the exact build you submit.

The replay

Don't trust a score.
Watch the run.

Every audit comes with a step-by-step replay of what the agent did and what it noticed. Each finding links to the exact moment it happened, so you can see the problem for yourself. Try it: this is a real-looking sample audit.

Pantry Pal 2.4.0 · simulator audit

Sample app · iPhone 17 simulator · 20 steps

Sample data
Step 14 of 201:05 / 1:43
Look

App terminates

Crash: EXC_BAD_ACCESS in RestoreManager.swift:88 when there is nothing to restore. Reproduced 3 of 3 times.

Blocker

App crashes when tapping “Restore purchases”

  • Every tap, in orderLaunch, sign-in, paywall, restore, settings: nothing is hidden.
  • Evidence on every findingCrash logs, the screen, and what the agent tried, at the exact second.
  • Share itSend the replay to a teammate or a client instead of writing up repro steps.

Fix it

Every finding comes with a fix you can hand to your coding agent.

Findings are graded Blocker, Risk or Note, cite the guideline, and explain what we saw in plain language. Then there's a concrete fix and a prompt you can paste straight into Claude Code or any other coding agent.

BlockerRiskNote

Shape and colour both carry meaning, so severity reads at a glance without shouting.

Blocker§ 2.1Live run · 1:05

App crashes when tapping “Restore purchases”

On the paywall, tapping “Restore purchases” with an account that has never bought anything terminates the app (EXC_BAD_ACCESS, RestoreManager.swift:88). Reproduced 3 of 3 times.

How to fix

  1. 1Stop force-unwrapping the latest transaction in RestoreManager.restore().
  2. 2Call AppStore.sync() and treat “nothing to restore” as a normal result, not an error.
  3. 3Show a friendly “No previous purchases found” message instead.
Prompt for your coding agent

In PantryPal/Purchases/RestoreManager.swift, restore() force-unwraps `latestTransaction` on line 88, which crashes when the user has no purchase history. Refactor restore() to: 1) call `try await AppStore.sync()`, 2) iterate `Transaction.currentEntitlements` and collect verified transactions, 3) if none are found, return `.nothingToRestore` instead of throwing. In PaywallView, show an alert “No previous purchases found” for that case. Keep the existing public API. Add a unit test for the empty-history path using StoreKitTest.

Reviewer package

Hand the reviewer everything they need.

Many delays come from a reviewer who can't find a feature or can't sign in. Every audit prepares a package you paste into your submission.

  • Review notes. Written from what the agent actually did: where features are, how to sign in, why you need each permission.
  • A screen recording. The main flows, trimmed for a reviewer.
  • Tested devices. Which devices and iOS versions the run covered.
  • Demo account check. We sign in with your demo account, so you know it works before a reviewer tries.

After you submit

Still on your side once the build is with Apple.

Rejection help

Paste Apple's message. Get the likely cause, the fix, and a calm draft reply to App Review.

Guideline 2.1 - Performance - App Completeness. We were unable to sign in with the demo account…

Likely cause: the demo account asks for an email code.

Fix: skip the code for the review account. Draft reply ready to copy.

Monitoring

We watch your published apps against App Review guideline changes and tell you which ones are affected, calmly.

  • § 3.1.2Free-trial wording on paywalls
  • § 2.5.4Explaining background location
  • § 4.8Privacy-focused login options

Example feed with sample apps.

Pricing

Cheaper than a week of waiting.

Monthly plans in euro. Unlimited quick checks on every plan.

Indie

For a solo developer with a couple of apps in flight.

39 € / month

  • 3 apps
  • Unlimited quick checks
  • Store listing and code checked against the guidelines
  • Fix suggestions with agent prompts
Our suggestion

Pro

For developers who ship often and want company through review.

129 € / month

  • 10 apps
  • 25 simulator audits / month
  • Everything in Indie
  • Live run in the simulator with replay
  • Reviewer package
  • Rejection help with draft replies
  • Guideline monitoring for published apps
  • Unlimited quick checks

Studio

For studios shipping apps for themselves and for clients.

399 € / month

  • Unlimited apps
  • 100 simulator audits / month
  • Everything in Pro
  • Runs on a real iPhone with your submitted build
  • Team seats
  • Client-ready audit reports
  • Unlimited quick checks

No plan can guarantee approval: Apple makes the final decision on every submission. What Nod gives you is a clear view of the likely problems, before a reviewer finds them.

FAQ

Good questions.

Will Nod get my app approved?

No one can promise that, and we won't. Apple makes the final decision on every submission. Nod shows you what a reviewer is likely to flag, based on the current App Review Guidelines and on what it sees when it runs your app, so you can fix those things before you submit.

What access do you need?

An App Store Connect API key, which we use only to read your listing, never to change it, and read access to the GitHub repository with your Xcode project. You can disconnect either at any time.

How does the live run work?

We build your app for the iOS simulator and install it. An AI agent then taps through it like a reviewer: onboarding, sign-in with your demo account, the paywall, restore purchases, account deletion. It looks for crashes, placeholder text and dead links. Everything is recorded as a replay. On Studio, the same run can happen on a real iPhone with the build you submit.

What's the difference between a quick check and an audit?

A quick check covers the store listing and the code. It takes about a minute and is unlimited on every plan. An audit adds the live run, which is where crashes, broken sign-in and incomplete flows show up. Audits are part of the Pro and Studio plans.

I build with AI coding tools. Is that a problem?

Not at all; many of the people we're building this for do. Every finding comes with a prompt you can paste into Claude Code or another coding agent working in your repository.

Do you keep my code?

The checkout is used for the audit and deleted afterwards. We keep the findings and the replay so you can come back to them.

Is Nod made by Apple?

No. Nod is an independent tool. It isn't affiliated with or endorsed by Apple.

Walk into review prepared.

Connect an app, run an audit, and see what a reviewer would see, before they do.