my @loop_data=(); $loop_data=[ {Auction=>'Test1', ID=>'1'}, {Auction=>'Test2', ID=>'2'}, {Auction=>'Test3', ID=>'3'}, {Auction=>'Test4', ID=>'4'}, ]; $template->param(table1 => \@loop_data); #### my @loop_data=(); my %rowdat; $rowdat{Auction}='Test1'; $rowdat{ID}='1'; push(@loop_data, \%rowdat); $template->param(table1 => \@loop_data);