move log-user to calculate so it progresses as user_data is calculated on fetch