better update timing