Platform Compliance Verification for Games
Submission rejection from Sony, Microsoft, or Apple is not just a release delay. It's a disruption to the marketing campaign, lost advertising budgets, and reassessment of partner agreement dates. Most rejections don't happen because of serious technical violations, but because of details the team didn't check, thinking "it's always worked like this."
What platforms actually verify
Each platform has its own technical requirements (TRC for PlayStation, TCR for Xbox, App Review Guidelines for Apple), and they're updated. What worked a year ago could be grounds for rejection today.
PlayStation (TRC). Most common rejection reasons: improper handling of system events — suspend/resume, game exit via PS Button, controller loss. TRC requires that when a controller is lost the game must pause gameplay (not just show a message). Many teams implement only UI notification, forgetting to set Time.timeScale = 0 or send appropriate NetworkEvent in multiplayer. Also critical: trophy unlock should only be called on actual achievement, not test calls accidentally left in the build.
Xbox (TCR). Achievement unlock without a real trigger — automatic rejection. Besides this: xinput compatibility, Quick Resume working correctly (game must recover from suspended state without restarting session), Xbox Accessibility Guidelines compliance. The latter is often ignored as "optional," but Microsoft increasingly checks basic accessibility requirements.
iOS App Store. List of rejection reasons is broad, but technical favorites: using private APIs (easy to catch if third-party plugins are used without audit), improper App Background Modes handling, in-app purchase flow issues (Apple requires strict specific UX for IAP, deviations from Human Interface Guidelines in this area almost guarantee rejection), and — especially relevant for games — incorrect privacy manifests starting from iOS 17.
Google Play. Since 2024 Google actively checks Target API Level (must be current), correct Data Safety section (if the game collects data — it must be declared precisely, mismatch between code and declaration leads to suspension), and compliance with Families Policy for child-rated games.
Compliance audit process
Work starts with reading current requirements for a specific platform and SDK version. Not year-old documentation — current, as of submission date. Sony, Microsoft, and Apple update requirements regularly, and subscribing to developer newsletters is mandatory practice.
Next we form a compliance checklist for each platform. It's not universal — it's compiled for the specific game: genre, monetization, online modes, age rating, target regions (GDPR for EU, COPPA for USA).
Testing covers:
- All system scenarios (suspend, resume, sign-out, controller disconnect, low battery)
- Complete IAP flow, including restore purchases and error handling
- Network interruption scenarios (connection loss during transaction)
- Age rating compliance (in-game content vs declared rating)
- Privacy and permissions (requested only when needed, with proper justification strings)
- Localization of system messages (in all supported platform languages)
After testing — pre-submission report with identified inconsistencies, prioritized by likelihood of rejection.
In one mobile project a week before release we discovered that Game Center integration was calling GKAchievement.reportAchievements twice in a certain level progression scenario — once from gameplay logic, second time from analytics event. Apple tracks duplicate achievement calls and flags them as cheating attempts at certain frequency. Fixed through deduplication at AchievementManager level with cache of already-sent achievements in PlayerPrefs.
Submission preparation
Compliance testing is the final step, but better to start it in parallel with main development. Basic things (system event handling, IAP flow) can be verified on early builds.
Final submission checklist includes: verifying all metadata (screenshots, description, age rating in each region), certificate and provisioning profile verification, clean install test without previous data.
| Platform | Estimated audit timeline |
|---|---|
| iOS or Android (one platform) | 1–2 weeks |
| iOS + Android | 2–3 weeks |
| Console (PlayStation or Xbox) | 2–4 weeks |
| Multi-platform (PC + Mobile + Console) | 4–8 weeks |
Cost is calculated after analyzing platforms, monetization model, and feature scope.





