The math is no different for a servo than a stepper. You have to know the variables you put into the system.
For example, stepper motors come in all kinds of degrees per step. Some are 1.8 (AKA 200 steps/rev), some are 1.9 degree (AKA 400 steps/rev), some are oddball 37 degree, and who knows what else.
Bottom line, there is a steps/rev
In servo, the encoder setting determines this. When using a rotary encoder attached to the motor, the counts per rev is the equivalent of steps per rev.
Many are 2048, 1024, 512, but also 2000, 1000, 500 depending on what setting and device you have.
The basic math is simple. First, know the timing pulley pitch (space between teeth) and number of teeth. The idea here is to determine linear distance the belt will move for 1 rev.
The pulley at the motor is generally the one that counts, even in multi belt systems (assuming other ratios are maintained 1:1).
So that math is belt pitch times teeth count to solve for distance/rev
Then we determine the encoder count/rev. Likely this is from the data sheet when you set the options. Again, likely 2048, 1024, or even 2000, 1000, or some other value.
Simply take the logical count value and divide it by the mechanical distance value.
So a 2048 count/rev setup of the encoder with an 18t GT2 2mm pitch pulley (18*2mm=)36mm/rev mechanical is 2048/36=56.888888888888888888888888888889 count per mm AKA steps per mm.
Now, drivers like Gecko ALSO have a step multiplier function. Normally this is set 1:1 but the idea here is that for every step that goes in, you can multiply the logical value sent forward to the servo engine. There is good reason to do this. If you use very high count/rev encoders, then the pulse train of steps moving at high travel speeds will be very high. This often exposes limits of the controller. What this multiplier lets you do divide the above steps per mm value by the multiplier value. So say you use a 2X step multiplier, that would result in halving the steps per mm.
Given most current bots using steppers run in the 40-100 steps per mm range given microstepping and pulley/tooth count ratios, you logically should attempt to stay in that range with servo at the board interface between the drivers and the controller. Servo can let you use very high encoder counts. This simply lets the servo maintain tighter holding and accuracy.
Servo is simple. All servo does is try to maintain 2 values tightly together. The step pulse coming in increments a logical desired position value in the servo driver logic. The servo driver is then also trying to match the encoder count to that value. If the resolution of the encoder is extremely fine, then any error of position rapidly ramps up the error between actual (sensed) position VS target. Meaning, the servo driver KNOWS even the slightest position error and attempts to correct. By using the step multiplier, we still gain the precision control of the encoder, but don't over task the smoothieboard controller with insanely high pulse counts.
Also note, this is why setting the PID parameters on the servo driver must be adjusted "in system". A high encoder count is basically high gain. The tiniest movement generates a large count value. That large error count results in the logic driving the motor to maximum force in a short distance. So generally, the gain is turned down much further for all 3 values with a high encoder count. As encoder count is lowered, then "electronic" gain compensates for mechanical gain.