use Data::Dumper; my $h1 = { 'location_setting' => [ '409' ], 'status' => [ '501' ] }; my $h2 = { 'status' => [ '137', '124' ], 'location_setting' => ['405'], 'classification' => ['0']}; my $x = {%$h1, %$h2}; print Dumper $x; Output ----------- $VAR1 = { 'classification' => [ '0' ], 'location_setting' => [], 'status' => [ '137', '124' ] };