for my $customer ( keys %$cust ) { my $total_usage = 0; ... ... for my $direction qw(OUT IN) { my $usage = $bill_data ->{$customer}->{$device}->{$port}->{$direction}; $total_usage += $usage; print CUST_OUT "$lastmonth_period $device $short_port $direction$usage$/"; } ... print out $total_usage close(CUST_OUT); }