The project has invalid dependencies (Error)
The "project has invalid dependencies" error usually means Unity cannot resolve the package setup the project expects. For beginners, this error often appears frustrating because it feels vague, but it is usually pointing to a real problem in the project's package state.
The simple meaning is:
- the project expects certain package dependencies
- Unity cannot load or resolve them properly
- because of that, the project may not compile or function correctly
Stabilize the project before changing packages, then fix the most recent dependency problem one step at a time.
- Back up the project folder before editing package files.
- Confirm the Unity version, Creator Companion state, and first Console error.
- Fix one package or manifest issue, reopen Unity, and let Package Manager resolve again.
If the project was created or managed through VRChat Creator Companion, check the project there before manually editing SDK packages. Creator Companion may be the safer place to repair or update VRChat SDK dependencies.
What Unity Is Trying To Resolve
When Unity opens a project, Package Manager reads the project's package files and works out which package versions should be loaded.
The two files beginners most often hear about are:
| File | What it does |
|---|---|
Packages/manifest.json |
Lists the direct package dependencies the project asks for |
Packages/packages-lock.json |
Records the resolved package versions Unity calculated previously |
If these files are invalid, mismatched, or asking for packages Unity cannot find, Unity may show an invalid dependencies error before the project is usable.
What This Error Usually Affects
When invalid dependencies appear, you may see:
- Package Manager problems
- compile errors
- missing editor tools
- scripts failing to load
- project startup issues
So even though the message looks package-related, it can affect the whole project.
Common Causes
This error often appears because of one or more of the following:
- package version conflicts
- unsupported package versions for the current Unity version
- incomplete package updates
- manually edited package settings gone wrong
- imported project files expecting packages your current setup cannot resolve
- broken JSON in
Packages/manifest.json - missing Git, local path, or scoped registry packages
- stale lock-file resolution after package changes
- opening the project in the wrong Unity version
For beginners, the most common real cause is usually some kind of package mismatch.
First Things to Check
Before making changes, check:
- Which Unity version the project is using
- Whether the project is supposed to use a specific version
- Whether the error started after a package change
- Whether the Console shows more detailed package messages
- Whether Creator Companion reports the VRChat SDK as healthy
- Whether
manifest.jsonwas edited recently
This helps you narrow the problem down before changing things blindly.
A Safe Beginner Recovery Workflow
The safest approach is:
- Back up the project
- Read the Console and Package Manager messages carefully
- Identify the most recently changed package or dependency
- Check
Packages/manifest.jsonfor obvious JSON mistakes - Revert or correct the newest risky change if possible
- Reopen the project and let Unity resolve packages again
- Test the project only after Package Manager stops reporting errors
The important part is to avoid changing many things at once.
Why Reading the Console Matters
The headline error is often generic. The Console usually gives better clues about:
- which package failed
- which version is incompatible
- whether a dependency cannot be found
- whether a package requires a different Unity version
If you skip the Console, you may miss the real cause.
Check the Project's Package State
If this error started after installing or updating packages, look at:
- the currently installed package versions
- the package manifest
- whether the project expects older or newer package versions
- whether the lock file points to a different resolved package state
- whether a Git URL, local path, or scoped registry is unavailable
Beginners often accidentally create this problem by updating packages without checking compatibility.
What Not To Do First
Avoid these first reactions:
- deleting random package entries
- updating every package at once
- changing Unity versions repeatedly
- removing VRChat SDK packages manually without checking Creator Companion
- deleting project folders outside
Packagesbecause a package error appeared
Those actions can turn a fixable dependency issue into a wider project recovery problem.
Safe Manifest Checks
If you need to inspect Packages/manifest.json, start with simple checks:
- Is the file valid JSON?
- Are package names wrapped in quotes?
- Are commas placed correctly between entries?
- Did a copied tutorial line use the wrong quote character or missing comma?
- Is a local path or Git URL still available?
- Is a scoped registry still configured if the package depends on one?
Do not rewrite the whole file unless you know exactly what the intended package set should be.
Common Beginner Mistakes
Updating several packages at once.
This makes it harder to see which package caused the dependency problem. Revert or review the newest risky package change first.
Mixing tutorial instructions from different Unity versions.
A tutorial may assume a package version, render pipeline, or Unity version that does not match your project. Check version assumptions before copying package lines.
Editing package files without backups.
This makes recovery more difficult if the project stops resolving correctly. Copy the project or at least the Packages folder before manual edits.
Continuing scene work while packages are broken.
If package resolution is failing, stop and fix that first. Broken package state can hide editor tools, scripts, SDK panels, and compile errors.
Deleting the lock file without understanding why.
Sometimes Unity can regenerate package resolution, but deleting lock-file data blindly can also make troubleshooting harder. Prefer a backup and a clear reason before removing package files.
Practical Fix Strategy
If you do not know exactly what broke, use this order:
- Read the Console
- Check Package Manager
- Check recent package changes
- Revert the newest risky change first
- Reopen Unity
- Let it resolve packages again
This is much better than random trial-and-error edits.
If the issue is VRChat SDK related, open Creator Companion and check whether the project can be repaired, migrated, or updated there. That is often safer than hand-editing SDK dependency lines.
When a Fresh Test Project Helps
If you are not sure whether the issue is with Unity itself or the project setup, creating a small fresh test project can help.
That allows you to compare:
- whether packages install normally in a new project
- whether the problem exists only in the main project
If a clean project works and the main one does not, the issue is more likely in that project's dependency setup.
Useful next routes
- Package Manager Basics
- Troubleshooting
- Unity Hub Installation
- Unity3D Version Differences
- Creating a Packages.json file
- Getting Started with VRC
Final Advice
The invalid dependencies error looks abstract, but it is usually a solvable package compatibility or project-state problem.
For beginners, the best response is:
- stop making unrelated changes
- back up the project
- read the Console carefully
- fix one dependency issue at a time
That keeps the recovery process controlled and much easier to understand.