A MEMS gyroscope comprising: at least one mechanical resonator (111,112); drive circuitry (120, 130) configured to apply a drive signal to the at least one mechanical resonator to drive motion of the at least one mechanical resonator in a first direction; sense circuitry (140, 150) configured to sense motion of the at least one mechanical resonator in a second direction, the second direction being orthogonal to the first direction, and to output a rate signal proportional to the amplitude of the sensed motion of the mechanical resonator in the second direction; wherein the sense circuitry (140, 150) includes a closed force feedback loop forming an electromechanical resonator loop configured to adjust the frequency response of the at least one mechanical resonator in the second direction; wherein the drive circuitry (120, 130) is further configured to modulate the drive signal by alternating between a drive-on state and a drive-zero state; and the MEMS gyroscope further comprises offset compensation circuitry (160, 600) configured to determine the direct effect of the drive signal on the sense signal based on the modulation of the drive signal and to counteract the direct effect of the drive signal on the rate signal, characterized in that: the offset compensation circuitry (160, 600) is further configured to: determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is present in the rate signal; determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is substantially not present in the rate signal; and calculate the difference between the average value when drive effect is present and the average value when the drive effect is not present to determine a first offset value; wherein "substantially not present" means that the drive effect in the rate signal is less than 30% of the maximum drive effect. at least one mechanical resonator (111,112); drive circuitry (120, 130) configured to apply a drive signal to the at least one mechanical resonator to drive motion of the at least one mechanical resonator in a first direction; sense circuitry (140, 150) configured to sense motion of the at least one mechanical resonator in a second direction, the second direction being orthogonal to the first direction, and to output a rate signal proportional to the amplitude of the sensed motion of the mechanical resonator in the second direction; wherein the sense circuitry (140, 150) includes a closed force feedback loop forming an electromechanical resonator loop configured to adjust the frequency response of the at least one mechanical resonator in the second direction; wherein the drive circuitry (120, 130) is further configured to modulate the drive signal by alternating between a drive-on state and a drive-zero state; and the MEMS gyroscope further comprises offset compensation circuitry (160, 600) configured to determine the direct effect of the drive signal on the sense signal based on the modulation of the drive signal and to counteract the direct effect of the drive signal on the rate signal, the offset compensation circuitry (160, 600) is further configured to: determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is present in the rate signal; determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is substantially not present in the rate signal; and calculate the difference between the average value when drive effect is present and the average value when the drive effect is not present to determine a first offset value; determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is present in the rate signal; determine an average value of the demodulated rate signal for a time period during which the direct effect of the drive signal is substantially not present in the rate signal; and calculate the difference between the average value when drive effect is present and the average value when the drive effect is not present to determine a first offset value; wherein "substantially not present" means that the drive effect in the rate signal is less than 30% of the maximum drive effect.