try to keep client generation rate steady