[VRChat] Troubleshooting by Symptom: Finding the Cause from What You See

Created: 2026-09-09

Can't grab it, pitch black, pink, not syncing, won't upload. Ten common symptoms with candidate causes and the articles that fix them, plus three questions for narrowing it down.

Something always stops working mid-build. You can't grab it, it's pitch black, it's pink, it won't sync.

What eats time when you're stuck isn't the fixing. It's the time spent not knowing where to look.

This article is an index from symptom to cause. The fixes are handed off to their own articles. Use this as the entry point.

Following symptoms to candidate causes

What You'll Learn

  • Ten common symptoms and their candidate causes
  • Three questions for narrowing things down
  • Which article to read once you've narrowed it
Sponsored


Hands-On: Narrow it down with three questions

Before consulting the index, answer three questions. They cut the search space by more than half.

Three questions that narrow the search
QuestionYes meansNo means
1. Does it happen on your own screen?A configuration or code problemA synchronization problem
2. Does it happen in Unity's Play mode?A scene or code problemA build or device problem
3. Did it used to work?Whatever you changed most recentlyIt's been wrong from the start

Let's actually do it, with the symptom "pressing doesn't open the door."

Question 1: does it fail to open on your own screen?

If it only fails on your friend's screen, the door itself works. Look at the synchronization side.

If it fails on your screen too, synchronization is irrelevant. Reading the synchronization code here would be a waste of time.

Question 2: does it fail in Play mode?

Try pressing it in Unity's Play mode. Failing there means a scene or code problem.

Opens in Play mode but not inside VRChat. In that case, suspect the build settings or a platform limitation.

Question 3: did it open before?

If it opened yesterday, whatever you changed since is the cause. Retrace your steps in reverse.

If it has never opened, an assignment or setting has probably been missing from the start.

Check your answers

If the three answers are "fails on my screen, fails in Play mode, never worked," it's not synchronization — it's a missing setting.

Narrowed that far, working through pressing does nothing from the top usually hits.

Answering the questions decides which section to read. That's how to use this article.

Sponsored

Symptoms while building

From symptom to candidate cause to the article that fixes it

You can't grab an object

  1. No Collider, or one that's too small. Even with VRC Pickup, there's nothing for a hand to hit
  2. No VRC Pickup, or Pickupable is off. A Rigidbody alone isn't grabbable
  3. Is Trigger is on. It's set to pass through

building holdable objects with Pickup

The room is pitch black, or dark even after baking

  1. The light itself isn't working. No Directional Light, Intensity at 0, or a black color
  2. It isn't a bake target. Floors and walls aren't set to Contribute GI, or you've never baked
  3. Not enough ambient light. A dark Skybox, or a low Intensity Multiplier

baking lights / sky and fog set the mood

A material turns pink

  1. The shader isn't installed. The package for the shader in use isn't imported
  2. A different rendering setup. You're using a URP or HDRP shader
  3. It's unavailable on that device. You're opening a PC shader in the Android build

materials and textures / supporting Quest and phones

You fall through the floor

  1. The floor has no Collider. Common when you delete the Plane and build your own
  2. Is Trigger is on. It's set not to collide
  3. The spawn point is buried in the floor. Move it slightly up

collision basics / recovering from falls

It's heavy and stutters

  1. You haven't measured what's heavy. Rendering, processing, size, and synchronization have different fixes
  2. Transparency covers the screen. Particles or large transparent panels
  3. Physics isn't going to sleep. Props you placed keep jittering

measuring performance / reducing physics load

Symptoms when nothing works

Pressing a button does nothing

  1. No Collider. Happens when you attach a script to an empty object
  2. No Udon Behaviour assigned. Program Source is empty
  3. It's stopping at an if you wrote. The condition isn't met

fixing it when nothing works

It works on your screen but not on theirs

  1. You haven't taken ownership. Writing a synced variable doesn't send it. And there's no error
  2. The sync mode is None, or you aren't calling RequestSerialization()
  3. You're driving it with local logic only. You're just touching the Animator directly

understanding ownership / networking basics

Only late joiners have a different state

  1. You aren't applying state in Start(). The logic that renders the received value is missing
  2. You're conveying it with network events alone. Events don't reach people who arrive later
  3. You're sending only the change, not the value. The current state has to live in a variable

network events / a synchronized door

Different people get different results

  1. Each person is rolling their own random number. Have one person roll and distribute the result
  2. You're relying on each machine's physics. Rolling behavior differs by device
  3. You're measuring time on each computer. Use server time

a synchronized die

You can't hear the sound

  1. Play On Awake is off, or the playback logic never gets called
  2. Spatial Blend is 3D and you're too far away
  3. VRC Spatial Audio Source's reach is set too short

BGM and spatial audio

Sponsored

Symptoms around publishing

You can't upload

  1. There are red errors in the Console. Without a successful compile, you can't upload
  2. Something required is missing. No VRCWorld, or no spawn point configured
  3. The size exceeds the limit. Shrink your textures

uploading a world / measuring performance

You can't enter the uploaded world, or loading never finishes

  1. The size is too large. Loading is taking a long time
  2. An old build is still there. Upload again
  3. There's no build for that device. Without a Quest build, you can't enter from Quest

supporting Quest and phones

It looks different on Quest, or you can't enter

  1. You haven't uploaded the Android build. It needs uploading for Android under the same Blueprint ID
  2. Realtime lights remain. Without baking, it goes pitch black
  3. You're using unsupported shaders. They turn pink or get replaced

supporting Quest and phones

You updated it and nothing changed

  1. People already inside don't get the update. Re-entering gives them the new version
  2. The Blueprint ID changed. It uploaded as a different world
  3. You forgot to build. Saving alone doesn't publish anything

growing a world after release

Bonus: Good to Know Up Front

  • Work top to bottom: Each symptom's causes are ordered by frequency. The first one or two usually hit
  • Try one at a time: Fixing three places at once leaves you unsure which helped. Change one, confirm, move on
  • Errors are welcome: Failing silently is more trouble. Anything in the Console is a lead
  • When it isn't listed, check the entrance: Put one log line at the top of the routine and see whether it gets there. Not reaching means configuration; reaching means the code
  • Note anything you hit twice: The things you personally trip over are consistent. Writing down three of them makes the next fix faster

Summary

When you're stuck, narrow the search space first.

  • Does it happen on your own screen? No means synchronization
  • Does it happen in Play mode? No means the build or the device
  • Did it used to work? Yes means whatever you changed most recently
  • Once narrowed, work through this article's matching section from the top

The first question is: "Is this a synchronization problem or not?" Splitting that alone halves how much code you read.

To learn the chasing technique itself, go to fixing it when nothing works. To find what's heavy, go to measuring performance.

VRChat Notes in this section63