How to Upload a VRChat Avatar with Creator Companion
A beginner-friendly walkthrough for uploading a ready-to-use VRChat avatar that you bought or downloaded from a creator marketplace such as Gumroad or Booth. Use the video for the upload demonstration, then follow the current Creator Companion upload flow and SDK Builder messages before uploading.
Use a clean Creator Companion avatar project, import dependencies before the avatar package, then publish only after the SDK Builder validation is understandable.
- Create or open an Avatars project through VRChat Creator Companion.
- Import shaders, tools, and package dependencies before importing the avatar.
- Confirm the avatar has a
VRC Avatar Descriptor, then use Build & Test before publishing.
Keep the current Creator Companion project, supported Unity version, Avatar Descriptor, expressions, and performance rank visible while following the video.
Playlist Companion
Creator: Fuuujin
Watch on YouTube: https://www.youtube.com/watch?v=7sqnAbPxYnQ
Good Fit
Use this when you already have an avatar package and need to work through import order, descriptor checks, and SDK Builder warnings.
Before You Start
- Confirm you are using the supported VRChat Unity version for the project.
- Open the project through VRChat Creator Companion when possible.
- Import the avatar creator's required shaders, SDK add-ons, or tools before the avatar package itself.
- Check for red Console errors before assuming the tutorial step is the problem.
- Make a backup or duplicate scene before changing assets, controllers, prefabs, or SDK settings.
Avatar Upload Readiness Checklist
| Check | What Good Looks Like | Why It Matters |
|---|---|---|
| Creator Companion project | The project is an Avatar project created or managed through VCC. | Keeps the VRChat SDK packages and supported Unity version aligned. |
| Dependencies imported | Required shaders, tools, and creator-provided dependencies are installed first. | Prevents pink materials, missing scripts, and broken prefab references. |
| Avatar scene/prefab | The avatar prefab is present in the scene and selected intentionally. | Avoids uploading the wrong avatar or an incomplete prefab. |
| Avatar descriptor | The root avatar object has a valid VRC Avatar Descriptor. |
The SDK needs the descriptor to identify eye view, playable layers, expressions, and upload settings. |
| Console state | Red Console errors are fixed before opening the Builder. | Compile errors can block SDK validation and make upload errors misleading. |
| Builder validation | The SDK Builder warnings are understood before clicking publish. | Validation explains performance, missing fields, and upload blockers. |
Core Upload Flow
- Open the project from VRChat Creator Companion.
- Let Unity finish importing before clicking around the scene.
- Import the avatar creator's required dependencies.
- Import the avatar package.
- Open the avatar scene or drag the avatar prefab into a clean scene.
- Select the avatar root and confirm the
VRC Avatar Descriptorexists. - Open VRChat SDK -> Show Control Panel and sign in.
- Use the Builder tab to review validation messages.
- Use Build & Test when you want a private local check.
- Use Build & Publish only when the avatar looks correct and you have the rights to upload it.
Follow-Along Checks
- Confirm the avatar has a valid
VRC Avatar Descriptorbefore upload. - Set the view position carefully so your eyes line up correctly in VR.
- Watch expression parameters, menus, PhysBones, contacts, constraints, and material count as separate budgets.
- Use Build & Test or a limited upload before treating the avatar as finished.
- Check the uploaded avatar in VRChat, not only in the Unity preview.
Common Upload Decisions
| Decision | Beginner Recommendation |
|---|---|
| Starting project | Use a new VCC Avatar project unless the avatar creator says otherwise. |
| Import order | Dependencies first, avatar package second, optional extras last. |
| Performance | Fix obvious material, texture, PhysBone, and polygon issues before publishing widely. |
| Visibility | Use a private upload while testing fit, viewpoint, gestures, and expressions. |
| Platform support | Treat PC and Android/Quest as separate validation targets unless the package is designed for both. |
Help! The video was made for an older SDK or Unity version.
Older tutorial UI labels can drift. Use the current SDK Builder messages and a private upload test before relying on the setup.
Help! The upload button is disabled.
Check that you are signed in to the SDK, the project is an Avatars SDK project, the avatar descriptor is present, there are no red Console errors, and the Builder validation panel is not reporting a blocking issue.
Help! The avatar has pink or broken materials.
Pink materials usually mean the shader dependency is missing, imported in the wrong order, or incompatible with the current render pipeline. Re-read the avatar creator's install notes and import the required shader package before reimporting the avatar.
Help! The result works in Unity but not in VRChat.
Test in a built VRChat instance. Runtime permissions, platform restrictions, performance fallback behavior, and SDK validation can change behavior that looks fine in the editor.
Help! I want to apply this to my main avatar project.
Rebuild the change in a small copy first, then move only the confirmed pieces into the production avatar. That keeps tutorial experiments from becoming permanent project clutter.
After Publishing
Open VRChat and confirm the avatar from the user-facing side:
- The avatar appears in your avatar list or Content Manager.
- Viewpoint height feels correct in desktop and VR.
- Gestures, expressions, toggles, and menus behave as expected.
- Materials and lighting look correct in a real world.
- Performance rank is acceptable for how you plan to use the avatar.
If you are also uploading worlds, the world workflow is similar but uses a VRC Scene Descriptor instead of an avatar descriptor. See How to Upload a World in VRChat for the paired guide.
Official References
- VRChat Avatars
- Creating Your First Avatar
- Avatar Dynamics
- Avatar Optimization Tips
- Expressions Menu and Controls
Related Docs
- Avatar Creation
- Setting Up Your Avatar Project
- Avatar Optimization Checklist
- Setting Up VRChat Creator Companion
- Creator Companion Troubleshooting Guide
- How to Upload a World in VRChat
- VRChat Documentation
Topics: avatars, creator-companion, beginner, uploading