Meta Quest / Horizon Store Submission (VRC)

Pre-submission checklist for publishing on the Meta Horizon Store (Meta Quest). Steps are sourced directly from the official Meta Virtual Reality Check (VRC) guidelines at developers.meta.com. Requirements are marked Required (✓) or Recommended (+). All Required items must pass before a build is accepted for store distribution.

Meta Horizon Store — Virtual Reality Check (VRC) Guidelines (developers.meta.com)
84 steps~3h 30mCertification
Meta QuestVRHorizon StoreOculusVRCmobileXR

Steps (84)

  • Packaging (All Required)

    Build must meet all packaging requirements before it can be submitted to the Horizon Store.

    • VRC.Quest.Packaging.1 ✓ · Application manifest conforms to release build manifest requirements

      ~5m

    • VRC.Quest.Packaging.2 ✓ · APK is signed with APK signature scheme v2

      ~5m

    • VRC.Quest.Packaging.3 ✓ · App does not require Android features unsupported on Quest hardware

      ~5m

    • VRC.Quest.Packaging.4 ✓ · Supported SDK and engine version used — check Meta's supported versions list

      ~5m

    • VRC.Quest.Packaging.5 ✓ · APK file size is under 1 GB; OBB files are under 4 GB each

      ~3m

    • VRC.Quest.Packaging.6 ✓ · App binary is 64-bit

      ~3m

  • Performance

    • VRC.Quest.Performance.1 ✓ · App runs at the target refresh rate specified in submission metadata

      ~10m

    • VRC.Quest.Performance.3 ✓ · Head-tracked graphics visible within 4 seconds of launch, or a VR loading indicator is shown during that window

      ~5m

    • VRC.Quest.Performance.4 + · App maintains at least 85% render scaling for the majority of the experience (recommended)

      ~10m

  • Functional (All Required unless noted)

    • VRC.Quest.Functional.1 ✓ · App installs and runs without crashes, freezes, or extended unresponsive states

      ~10m

    • VRC.Quest.Functional.2 ✓ · Single-player app pauses correctly when Horizon OS requests a pause

      ~5m

    • VRC.Quest.Functional.3 ✓ · App does not leave the user stuck at any point in the experience

      ~10m

    • VRC.Quest.Functional.4 ✓ · App does not lose user data under any tested scenario

      ~5m

    • VRC.Quest.Functional.5 ✓ · App correctly responds to headset positional tracking and orientation at all times

      ~5m

    • VRC.Quest.Functional.6 ✓ · Only Meta Quest headsets and controllers appear in title and store assets — no other VR platform hardware shown

      ~3m

    • VRC.Quest.Functional.7 + · If internet is required for core functionality, offline users are notified clearly (recommended)

      ~5m

    • VRC.Quest.Functional.9 ✓ · In experiences using Local tracking space, users can reset their forward orientation

      ~5m

    • VRC.Quest.Functional.10 + · No headlocked menus or UI elements — these cause discomfort (recommended)

      ~5m

    • VRC.Quest.Functional.12 ✓ · App runs correctly with full functionality for multiple entitled users on the same headset

      ~10m

    • VRC.Quest.Functional.13 + · App defaults to the user's configured language, falling back to English (recommended)

      ~5m

    • VRC.Quest.Functional.14 ✓ · Apps supporting passthrough show passthrough loading screens correctly

      ~5m

  • Security

    • VRC.Quest.Security.1 + · Platform entitlement check performed within 10 seconds of launch (recommended)

      ~5m

    • VRC.Quest.Security.2 ✓ · App requests only the minimum permissions required to function — no unsupported permissions included

      ~5m

  • Tracking & Input (All Required unless noted)

    • VRC.Quest.Tracking.1 ✓ · Submission metadata correctly specifies supported play modes — sitting, standing, or roomscale

      ~5m

    • VRC.Quest.Tracking.2 ✓ · Submission metadata correctly specifies supported input modes

      ~5m

    • VRC.Quest.Input.1 + · In-game menus activated via menu button on gamepad or left Touch controller (recommended)

      ~3m

    • VRC.Quest.Input.2 + · Grip button used for picking up objects, not the trigger (recommended)

      ~3m

    • VRC.Quest.Input.3 + · In-app hands and controllers align with user's real-world counterparts in position and orientation (recommended)

      ~5m

    • VRC.Quest.Input.4 ✓ · App is focus-aware — continues rendering when losing focus, hides hands/controllers, and ignores input

      ~5m

    • VRC.Quest.Input.5 + · Hand-tracking apps render hands in correct position and orientation with appropriate animation (recommended)

      ~5m

    • VRC.Quest.Input.7 ✓ · App correctly handles switching between controller and hand tracking

      ~5m

    • VRC.Quest.Input.8 ✓ · System gesture is reserved — does not trigger unintended app actions

      ~3m

  • Store Assets (All Required unless noted)

    All assets must be submitted before the app can go through review.

    • VRC.Quest.Asset.1 ✓ · App logo is on a transparent background

      ~3m

    • VRC.Quest.Asset.2 ✓ · Store cover art has clear branding — no extraneous text, taglines, or banners

      ~3m

    • VRC.Quest.Asset.3 + · Cover art avoids placing text in the top or bottom 20% of the image (recommended)

      ~2m

    • VRC.Quest.Asset.4 + · Hero art includes the app branding and/or title centred in the image (recommended)

      ~2m

    • VRC.Quest.Asset.5 ✓ · Screenshots represent the app accurately — no additional logos, text, or iconography overlaid

      ~5m

    • VRC.Quest.Asset.6 ✓ · App description, screenshots, and videos do not include headsets, controllers, or logos for other VR platforms

      ~5m

    • VRC.Quest.Asset.7 ✓ · Trailer is not longer than 2 minutes

      ~3m

    • VRC.Quest.Asset.8 + · Artwork text uses a minimum 24pt font size (recommended)

      ~2m

    • VRC.Quest.Asset.9 ✓ · Immersive Image Layers are on transparent backgrounds

      ~3m

  • Ads (All Required — if app contains advertising)

    • VRC.Quest.Ads.1 ✓ · App meets all Meta advertising policy requirements

      ~5m

    • VRC.Quest.Ads.2 ✓ · 'Contains Ads' label included on the Product Details Page

      ~2m

    • VRC.Quest.Ads.3 ✓ · Ads are not stereoscopic, head-tracked, or immersive

      ~3m

    • VRC.Quest.Ads.4 ✓ · Ads that interfere with app use provide a clear dismissal method

      ~3m

    • VRC.Quest.Ads.5 ✓ · Ads do not appear after every consecutive user action

      ~3m

    • VRC.Quest.Ads.6 ✓ · Ads do not impair device functionality

      ~3m

    • VRC.Quest.Ads.7 ✓ · Ads do not mimic Horizon OS notifications or app UI elements to facilitate inadvertent clicks

      ~3m

  • Accessibility (All Recommended)

    • VRC.Quest.Accessibility.1 + · App is playable without audio

      ~5m

    • VRC.Quest.Accessibility.2 + · Text and controls necessary for progression are clearly legible

      ~5m

    • VRC.Quest.Accessibility.3 + · Clarity provided through visual, audio, and/or haptic feedback

      ~5m

    • VRC.Quest.Accessibility.4 + · Option to play with one hand or controller

      ~5m

    • VRC.Quest.Accessibility.5 + · Display settings (brightness/contrast) are user-configurable

      ~3m

    • VRC.Quest.Accessibility.6 + · Colourblindness options available, or pattern/colour combinations used throughout

      ~3m

    • VRC.Quest.Accessibility.7 + · Option to rotate view without physical head/neck movement

      ~3m

    • VRC.Quest.Accessibility.8 + · Multiple locomotion styles supported where possible

      ~3m

    • VRC.Quest.Accessibility.9 + · All interactions possible from a fixed position in sitting/standing mode

      ~3m

  • Privacy Policy (All Required)

    • VRC.Quest.Privacy.1 ✓ · Privacy policy URL links to a live, valid page managed by the app's team

      ~3m

    • VRC.Quest.Privacy.2 ✓ · Privacy policy clearly explains what user data is collected

      ~5m

    • VRC.Quest.Privacy.3 ✓ · Privacy policy clearly explains how user data is used

      ~5m

    • VRC.Quest.Privacy.4 ✓ · Privacy policy clearly explains how users can request deletion of their data

      ~5m

    • VRC.Quest.Privacy.5 ✓ · Team and app have cleared Meta's data protection checks

      ~5m

  • Content & Publishing (All Required unless noted)

    • VRC.Content.1 ✓ · App meets all Meta Horizon Store content guidelines

      ~5m

    • VRC.Content.2 ✓ · App metadata (name, description, screenshots) accurately matches the app's actual in-app content

      ~5m

    • VRC.Content.3 ✓ · UGC apps include a reporting form for Code of Conduct violations (if applicable)

      ~5m

    • VRC.Content.4 + · UGC apps allow users to immediately hide undesired content (recommended)

      ~5m

    • VRC.Publishing.1 ✓ · App website URL links to a valid, live page

      ~2m

    • VRC.Publishing.2 ✓ · External support link (if present) leads to a valid support page

      ~2m

    • VRC.Publishing.3 ✓ · Terms of Service URL (if present) links to a valid TOS page

      ~2m

    • VRC.Publishing.4 ✓ · App name meets all content guidelines

      ~2m

    • VRC.Publishing.5 ✓ · Short description meets all content guidelines

      ~2m

    • VRC.Publishing.6 ✓ · Long description meets all content guidelines

      ~2m

    • VRC.Publishing.7 ✓ · Search keywords are relevant to the app and meet content guidelines

      ~2m

    • VRC.Publishing.8 ✓ · Any use of Meta branding in metadata follows Meta Brand Guidelines

      ~3m