The question is recurrent about the Zbrush scaling this objective is to clary

First you must to know the OBJ file format has no scale variable support.

To define the model scale ratio Zbrush apply some math

Scale in Zbrush :
1 unit = 1*2 ( global scale is always 2.00002)

First Example :

If you have a cube of 1’1’1 and a scale of 1 in maya, after the importing in Zbrush

XYZ size = 2.0002
X = 2.00002
Y = 2.00002
Z = 2.00002

Second Example :

Now if you have a box of 1’2’3 with a scale of 1 in maya, after the importing in zbrush
all independent Scale Axis value are defined on the boundary box

XYZ = 2.00002
X = 0.66668 = 1*2/3
Y = 1.33335 = 2*2/3
Z = 2.00002 = 1

Here the biggest value of the boundary box, become the value to apply math to other axis.
Z = 3.0 units in maya, it makes the value to be the biggest value.
Zbrush computes some more value that are important for the moment you will export the model back into your 3d editor.
This Value are automatically adjusted in “Tool:Export :Scale” and “Tools:Export:X/Y/Z offset”.
When these value are changed, the model will always load with the wrong scaling when you get back to the original application the model had been created.
When you export from Zbrush, the inverse math is apply, and utilize the value from “Tool:Export” pallet, so the new mesh will reflect the unit and scaling that were setup in maya/ 3dsmax etc..

– When you utilize “Tool:Subtool:append”, the “Tool:Export:Scale” remains all the same value for the new subtool.
– Scale value can’t to be different for each subtool. if you edit the scale, all the other subtools will
apply the new Scale value.