diff --git a/src/sacct/options.c b/src/sacct/options.c
index acbc53966c7ae6e0c761f11b5cfa182cc356efde..2511317ac16ccffe2720c3f28fa5942a862914c6 100644
--- a/src/sacct/options.c
+++ b/src/sacct/options.c
@@ -554,6 +554,8 @@ extern int get_data(void)
 	ListIterator itr = NULL;
 	ListIterator itr_step = NULL;
 	slurmdb_job_cond_t *job_cond = params.job_cond;
+	int cnt;
+	char *tmp_usage;
 
 	if (params.opt_completion) {
 		jobs = slurmdb_jobcomp_jobs_get(job_cond);
@@ -581,7 +583,7 @@ extern int get_data(void)
 				job->uid = pw->pw_uid;
 		}
 
-		if (!job->steps || !list_count(job->steps))
+		if (!job->steps || !(cnt = list_count(job->steps)))
 			continue;
 
 		itr_step = list_iterator_create(job->steps);
@@ -604,6 +606,17 @@ extern int get_data(void)
 			/* get the max for all the sacct_t struct */
 			aggregate_stats(&job->stats, &step->stats);
 		}
+
+		/* Now figure out the average of the total of averages */
+		tmp_usage = job->stats.tres_usage_in_ave;
+		job->stats.tres_usage_in_ave = slurmdb_ave_tres_usage(
+			tmp_usage, cnt);
+		xfree(tmp_usage);
+		tmp_usage = job->stats.tres_usage_out_ave;
+		job->stats.tres_usage_out_ave = slurmdb_ave_tres_usage(
+			tmp_usage, cnt);
+		xfree(tmp_usage);
+
 		list_iterator_destroy(itr_step);
 	}
 	list_iterator_destroy(itr);
@@ -1319,7 +1332,6 @@ extern void do_list(void)
 	ListIterator itr_step = NULL;
 	slurmdb_job_rec_t *job = NULL;
 	slurmdb_step_rec_t *step = NULL;
-	char *ave_usage_tmp = NULL;
 	slurmdb_job_cond_t *job_cond = params.job_cond;
 
 	if (!jobs)
@@ -1332,18 +1344,6 @@ extern void do_list(void)
 		    xstrcmp(params.cluster_name, job->cluster))
 			continue;
 
-		if (list_count(job->steps)) {
-			int cnt = list_count(job->steps);
-			ave_usage_tmp = job->stats.tres_usage_in_ave;
-			job->stats.tres_usage_in_ave = slurmdb_ave_tres_usage(
-				ave_usage_tmp, cnt);
-			xfree(ave_usage_tmp);
-			ave_usage_tmp = job->stats.tres_usage_out_ave;
-			job->stats.tres_usage_out_ave = slurmdb_ave_tres_usage(
-				ave_usage_tmp, cnt);
-			xfree(ave_usage_tmp);
-		}
-
 		if (job->show_full)
 			print_fields(JOB, job);