How to create an avatar from a selfie and upload it to VRChat with Unity
To make a VRChat avatar from a photo: create a full-body 3D avatar from a single selfie with MetaPerson Creator (free, in your browser), export it as an FBX with a Humanoid rig and visemes, import it into Unity, add the VRChat SDK Avatar Descriptor, then click Build & Publish. Your first avatar is free — the full step-by-step is below.
Updated July 2026 for VRChat SDK3 and the VRChat Creator Companion (VCC).
The quickest way: turn a selfie into your avatar
The hardest part of making a VRChat avatar used to be modelling and rigging a character. You can skip all of it: upload one front-facing photo to MetaPerson Creator and it generates a recognizable, fully-rigged, full-body 3D avatar in about a minute — right in the browser, no 3D skills needed. Customize the face, hair and outfit, then export a rigged FBX (or GLB) that drops straight into Unity. The first avatar is free.
Because VRChat runs on Unity, a custom avatar still has to be brought in and uploaded through Unity and the VRChat SDK. That part is the same no matter how the model was made — here is the whole flow.
What VRChat needs from an avatar
- A Humanoid rig — VRChat animates avatars through Unity’s Humanoid rig, so the model has to be set to Humanoid on import.
- A reasonable polygon count — VRChat rates avatars by a performance rank. Keep the mesh light (use a lower LOD and a low-poly outfit) so your avatar rates well and is shown by default to other players.
- Visemes for lip sync — a set of mouth blendshapes (visemes) lets VRChat move the avatar’s mouth to your voice. MetaPerson and the Avatar SDK export a compatible visemes_15 set.
Step by step: from avatar to VRChat in Unity
1. Generate the avatar. For the easiest path, create and export it in MetaPerson Creator. If you are a developer and want fine control over LOD, polygon count and blendshapes for VRChat’s performance ranks — or want to generate avatars at scale inside your own app — use the Avatar SDK Unity plugin or Cloud API. In the plugin’s full-body export sample, export an FBX with the LOD parameter raised (to stay under VRChat’s polygon limit) and the visemes_15 blendshapes selected:
![]()
Choosing a low-poly outfit version keeps the polygon count down, which helps your VRChat performance rank:
![]()
2. Install the VRChat SDK. VRChat provides SDK3 for Avatars to upload custom avatars from Unity. The current way to install it is the free VRChat Creator Companion (VCC), which creates a project with the correct, VRChat-supported version of Unity for you. If you use an unsupported Unity version, the SDK will warn you:
![]()
3. Import the FBX. Drag your exported model into the project’s Assets folder (or any subfolder).
![]()
4. Set the rig to Humanoid. Select the model, open the Rig tab and set Animation Type to Humanoid, then Apply.
![]()
5. Extract materials and textures in the model’s Materials tab.
![]()
6. Put the avatar in the scene. Drag the model prefab into the scene.
![]()
It should look like this:
![]()
7. Apply the Avatar SDK materials and shaders for the best look. Copy the plugin’s material resources into your project:
![]()
For the hair, assign HaircutSolidLitMaterial to the haircut mesh:
![]()
Then set the texture and the Render Queue to Transparent so the hair renders correctly:
![]()
8. Add the VRC Avatar Descriptor. Attach the VRC Avatar Descriptor component to the model so the VRChat SDK recognizes it as an avatar.
![]()
9. Set up lip sync. In the Lip Sync section, press Auto Detect! — it maps the visemes you exported.
![]()
10. Build and publish. Open the VRChat SDK tab, press Auto Fix on any warnings,
![]()
then press Build & Publish for Windows,
![]()
fill in the avatar name and description, tick the box confirming you own the rights to the model, and click Upload.
![]()
That’s it — your avatar is ready to use in VRChat.
![]()
FAQ
How do I make a VRChat avatar?
Create a full-body 3D avatar (for example from a selfie in MetaPerson Creator), export it as an FBX with a Humanoid rig and visemes, import it into Unity, add the VRChat SDK Avatar Descriptor, and use Build & Publish to upload it to VRChat.
Can I make a VRChat avatar from a photo?
Yes. MetaPerson Creator turns one selfie into a rigged, full-body 3D avatar you can export as FBX and upload to VRChat through Unity. No modelling required.
Is it free?
Your first avatar in MetaPerson Creator is free to create and export. The VRChat SDK and VRChat itself are free as well.
What format does VRChat need?
VRChat imports custom avatars through Unity, so you upload a model (FBX works well) that is set to Unity’s Humanoid rig. Keep the polygon count low for a good performance rank, and include visemes for lip sync.
Do I need Unity to upload a VRChat avatar?
Yes. Uploading a custom avatar to VRChat is done from Unity with the VRChat SDK (installed via the VRChat Creator Companion). Making the avatar, however, can be done outside Unity in MetaPerson Creator.