diff --git a/modules/Bio/EnsEMBL/Utils/IO/GTFSerializer.pm b/modules/Bio/EnsEMBL/Utils/IO/GTFSerializer.pm
index ff91f892a7db0fded3818c47d365fe4fbdfb79b8..0ba0816ac6ef0ee49ffccfa13674372f270dd067 100644
--- a/modules/Bio/EnsEMBL/Utils/IO/GTFSerializer.pm
+++ b/modules/Bio/EnsEMBL/Utils/IO/GTFSerializer.pm
@@ -439,12 +439,20 @@ sub _print_attribs {
   }
 
   if($transcript && $transcript->isa('Bio::EnsEMBL::Transcript')) {
-    foreach my $tag (qw/cds_end_NF cds_start_NF mRNA_end_NF mRNA_start_NF/) {
+    foreach my $tag (qw/cds_end_NF cds_start_NF mRNA_end_NF mRNA_start_NF gencode_basic/) {
       my $attributes = $transcript->get_all_Attributes($tag);
       if(@{$attributes}) {
-        print $fh qq{ tag "${tag}";};
+        my $value = $tag;
+        $value = "basic" if $tag eq "gencode_basic";
+        print $fh qq{ tag "${value}";};
       }
     }
+    my $attributes = $transcript->get_all_Attributes("TSL");
+    if (@{$attributes}) {
+      my $value = $attributes->[0]->value;
+      $value =~ s/tsl//;
+      print $fh qq{ transcript_support_level "${value}";};
+    }
   }
 
   return;