If you have a complex character or don't want to use the autorig tools like Mixamo or Accurig, 'VRM for Blender' has a rig you can use to speed up the skeleton creation process for use to export the VRM.
Adding the Rig
Select the 'VRM' tab at the top right of the viewport. If it is not visible, press 'N' or use the arrow at the top right.
Open the 'VRM' tab
Select the 'Create VRM Model' at the top of the 'VRM' tab. It may take a moment to display, you do not need to click or drag in the viewport.
Create VRM Model
Scale the rig to your model to get a good starting point using the Scale tool or 'S'. One approach is to place the pelvic bone within the pelvis region of your avatar.
Scale rig to mesh
Go to Edit mode on the rig and adjust the bones to their rightful position using the Position tool or 'G'. Use the 'Use X Mirror' in the Tool tab at the top right to mirror each side.
Edit Rig to fit the Mesh
If you use 'Symmetrize' to copy bone positions to the opposite side of the rig, the VRM Bone labeling breaks.
Use the 'Snap' tool set to 'Volume' at the top of the viewport to help position joints in the centre of a mesh. This is especially useful for the fingers.
Use the Snap to Volume tool
You may want to confirm the orientation of your bones are correct, otherwise it may not animate correctly. To display the Axes, go to the 'Object Data Properties' with the rig selected and turn on 'Axes' (Red box below).
You can then use the 'Roll' tool in the 'Item' tab to adjust as you need to (Green Box below).
Display Axes to make sure bone orientation is correct
Rigging the Avatar
Once you rig is complete you can apply it by parenting the mesh to the rig.
Select the mesh first
Hold shift and select the rig
Right mouse click and select 'Parent > Armature Deform > With Automatic Weights.
Parent Mesh to Rig
To test your results, go to Pose mode at the top left of the viewport with the rig selected and rotate the bones.