use warnings; use strict; use Data::Dumper; my %hoh; push @{$hoh{'this'}->{'that'}->{'theOther'} }, ['eggs', 'bacon', 'cheese']; print Dumper (\%hoh); #### $VAR1 = { 'this' => { 'that' => { 'theOther' => [ [ 'eggs', 'bacon', 'cheese' ] ] } } };