VRCAnalyticsDocsDashboard →

Troubleshooting

Common errors and how to resolve them.

No beacon traffic after joining my world

Walk through these in order:

  • In Unity, run VRCAnalytics → Debug — Dump Beacon URLs. All six URLs should appear and contain your wrld_xxx. If any are empty, the build hook didn't run — rebuild via Build & Publish.
  • Check the Unity console for [VRCAnalytics] Baked keyless URLs with world=wrld_... — this confirms the build hook baked URLs into the latest upload.
  • Make sure you joined the world after the upload completed. VRChat may serve a cached version for a minute after upload. Join via the VRChat menu rather than a portal or "recent instance" link.
  • Check Allow Untrusted URLs in your VRChat client settings (Settings → Downloads). Disabled = no beacon traffic.

"Orphan beacon" / "program asset missing" warnings

Happens when the VRCAnalytics package was reinstalled but the scene still has an old beacon UdonBehaviour pointing to a program asset that no longer exists.

Fix:

  • Run VRCAnalytics → Enter Setup Key and click Save. Our orphan-cleanup logic detects this state automatically, removes the dead GameObjects, and re-creates them fresh.

"Build registration failed" dialog on Build & Publish

The build hook calls POST /v1/register-build with your setup key and the scene's wrld_xxx. Possible causes for failure:

  • Key unknown (401): key in EditorPrefs doesn't match any account. Re-paste from the dashboard.
  • Wrong world (409): this key is already bound to a different wrld_xxx. Either use a different key or rotate this one from the dashboard and try again.
  • API unreachable: check that the API URL in Enter Setup Key points at a live server. If you're using a Cloudflare tunnel for local dev, the URL changes every session.

"Enter Setup Key" shows an empty field after Unity restart

Setup keys are stored in Unity's EditorPrefs, which is scoped per-machine per-Unity-install. If you switch machines, switch Unity versions, or reset EditorPrefs, you'll need to re-paste. The dashboard can reveal your existing key (consent-gated) or issue a new one.

Dashboard shows no data despite beacons firing

  • Refresh the dashboard page. Stats don't auto-update in real time.
  • Check the time-window selector (top right of a world's analytics page). Default is 30 days.
  • Inspect the API log (or the trycloudflare log if dev) for the actual beacon request — if requests are arriving but the dashboard is empty, mention it in Discord with the request's reqId.

"Deleted on VRChat" banner appears for a world that still exists

Our daily existence check hits VRChat's API once every 10 days per world. If VRChat's API rate-limited our check or returned a transient error, the world could be flagged incorrectly. Status will self-correct on the next successful check. If it persists, rotate the key and rebuild — that triggers a fresh binding.

Zone "currently in" counts don't match total players

Intentional. Overlapping zonescount the same player in each overlapping collider. The world-level "Online Now" count is always the authoritative total.

"Suspicious source" warning banner

See the Dashboard tour. Small counts are noise; sustained counts from one or two IPs indicate someone is spamming your endpoint. Rotate your key from the dashboard — that invalidates the old key immediately.

Still stuck?

Include these when asking for help: the world ID, roughly when the issue started, any relevant log lines from Unity console or VRCX. Post in our Discord (link in dashboard footer) and we'll triage.