Guideline 2.3 rejections: Accurate Metadata

Guideline 2.3 is the rejection for a listing that does not match the app: screenshots of the website, a description that mentions features the app does not have, keywords naming other brands, or an age rating that does not fit. The fix is in App Store Connect, not in a build.

#What Apple says

From the App Store Review Guidelines:

Customers should know what they're getting when they download or buy your app, so make sure all your app metadata, including privacy information, your app description, screenshots, and previews accurately reflect the app's core experience and remember to keep them up-to-date with new versions.

#What the rejection says

In substance, one of: the screenshots do not show the app in use on the device (they show the website, a desktop browser, marketing artwork, or a device frame that is not the one selected); the description or keywords reference other platforms, other apps, or features not in the app; the app name or subtitle makes a claim the app does not back up; the age rating does not match the content; or the privacy information does not match what the app collects.

#Why it happens to Rails apps

The listing gets written last and borrowed from the website. Screenshots come from a laptop, the description is the homepage copy with "Android" still in it, and the keywords field has competitor names because that is what the SEO page said. Reviewers read the listing before they open the app.

#Why Ruby Native helps

Screenshots are captured on a real device against your deployed site, so they show the app, with the tab bar, at the sizes Apple wants. The listing is a file in your repo, config/ruby_native_listing.yml, and ruby_native listing push checks it against each store's limits before anything is sent. ios: and android: blocks keep the stores' descriptions apart, so the App Store text never mentions Google Play. Listing.

#The fix

  1. Replace the screenshots with captures from the app: ruby_native screenshots capture, or the dashboard. Five or so at the 6.9 inch size covers every iPhone. Screenshots.
  2. Describe the app, not the company. What the user does in it, in the first two lines. Remove "Android", "web", "coming soon", and anything the app does not do today.
  3. Keywords are yours. Remove other brands' names and trademarked terms. Apple also rejects keyword stuffing in the name and subtitle. Field-by-field advice.
  4. Match the age rating to the content, including user-generated content and anything behind the demo account. Age rating.
  5. Match the privacy information to what the app actually collects. App privacy.
  6. Reply with the changes. Metadata changes do not need a new build; update the listing and reply.

#When the reviewer is wrong

If the screenshots are real and the reviewer thought otherwise, or a keyword is your own brand:

Thank you for the review. The screenshots were captured on an iPhone from the submitted build and show the app's [tabs/screens]. "[Keyword]" is our own registered product name, not a third party's. We've [removed/updated] [the other item] as requested. We'd appreciate a second look under 2.3.

From Joe: TODO one line on what actually got an app through 2.3.

Want the listing read before Apple reads it?

The launch review is exactly this: Joe reads your listing and screenshots the way a reviewer will, before you submit, and tunes the keywords and categories so the app gets found.

See the launch review