Apple's guideline 4.3 (spam) targets apps that are "simply a generic interface without any realistic functionality" — which includes template-generated apps with the default Expo blue-circle icon, placeholder names like "MyApp" or "React Native App," and screens with no purposeful content beyond boilerplate. Apps that look like templates attract heightened review scrutiny on all other guidelines. The ISO 25010:2011 functional-completeness classification applies: an app that hasn't been customized beyond a starter template provides no functional value beyond what the template itself provides.
Info because this is a risk-indicator rather than a hard failure — template appearance attracts scrutiny but is not a standalone rejection cause by itself.
Replace default template assets and placeholder strings before generating the submission build.
In app.json, verify:
{
"name": "YourActualAppName",
"slug": "your-actual-app",
"icon": "./assets/images/icon.png"
}
The ./assets/images/icon.png file must not be the default Expo solid-blue-circle. Use a 1024×1024 custom icon with your actual branding. In your strings files (ios/MyApp/Info.plist, android/app/src/main/res/values/strings.xml), replace app_name = "MyApp" with your real app name. Search your source for HomeScreen, Screen1, MainScreen and verify each has app-specific content, not boilerplate placeholder text.
ID: app-store-review-blockers.risk-indicators.template-generated-appearance
Severity: info
What to look for: Count all relevant instances and enumerate each. Look for signs that the app is a minimally-customized template: default app names in strings files (app_name = "MyApp", app_name = "AppName", app_name = "React Native App"); icon files that are the default React Native, Expo, or Flutter template icon (the default Expo icon is a recognizable solid blue circle, the default React Native icon is a purple/blue logo); placeholder app descriptions; generic screen names that match common boilerplate (HomeScreen, Screen1, MainScreen with no customization beyond the name). This is informational — reviewers are more likely to scrutinize and reject apps that look like they were generated from a template with minimal effort.
Pass criteria: App has a distinct name, custom icon, and customized content that differentiates it from a starter template. The app's identity is clearly established.
Fail criteria: Not applicable — this is info only. Result is pass or skip only, never fail.
Skip (N/A) when: App clearly has custom branding — skip if custom name, icon, and screens are evident.
Detail on fail: Not applicable — result is pass or skip only.
Remediation: Template-generated apps with minimal customization are frequently rejected under Apple guideline 4.3 (spam) or for being "not useful."
Review the configuration in src/ or app/ directory for implementation patterns.