It uses this which uses dbus and only receives a signal whenever rotation changes. Battery usage should be very low (I'm currently using it without problems) but it can be improved. I.e. it currently monitors rotation and rotates even when the widget is not visible which is not required. Uncertainty about nattery drain is a reason why it is still in extras-devel. i.e. it needs testing (and I'm currently testing it 24/24).