use warnings; use strict; use Template; my $tt = Template->new(); my %data_href = ( fname => 'William', lname => 'Shakespeare', ); $tt->process( \*DATA, { data_href => \%data_href, } ) or die $tt->error(), "\n"; __END__ My original template ==================== First name : [% data_href.fname %] Last name : [% data_href.lname %]