Skip to main content
v2026.11,772 entries · CC-BY 4.0

Direct comparison

GTF vs GFF3: Annotation Format Compared

GTF vs GFF3 compared: attribute syntax, gene/transcript hierarchy, which tools expect which format, and why conversion is not always lossless.

Written and maintained by CASRAI Editorial Board

Last updated

Ask CASRAI · included with Regulatory Radar

Ask about GTF vs GFF3: Annotation Format Compared

Ask CASRAI answers research-administration questions and cites the passages behind every claim — and says so when the corpus does not cover something, instead of guessing. It comes with a Regulatory Radar subscription at $29 a month, alongside the daily digest of regulatory changes and the dashboard of what changed.

150 questions a day, on this site, over the API, or inside your own tools through the CASRAI MCP server.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

How do GTF (GFF2-derived), GFF3 compare side by side?

The table below compares GTF (GFF2-derived), GFF3 across 10 procurement-relevant dimensions, from full name / lineage through conversion tools.

Side-by-side comparison

DimensionGTF (GFF2-derived)GFF3
Full name / lineageGene Transfer Format (GTF2.2) — an extension of GFF2Generic Feature Format version 3 — a ground-up redesign published by the Sequence Ontology project
Column 9 attribute syntaxkey “value”; pairs, space-separated, each ending in a semicolon (gene_id “ENSG00000139618”; transcript_id “ENST00000380152”;)key=value pairs separated by semicolons, e.g. ID=gene:ENSG00000139618;Name=BRCA2
Required attributesgene_id and transcript_id must be the first two attributes on every lineID is required on any feature with children or that spans multiple lines; Parent is required on every child feature
How hierarchy is representedImplicit — lines are grouped by sharing the same transcript_id/gene_id; no field explicitly declares exon-of-transcript or transcript-of-geneExplicit — every child carries Parent=<ID of its parent>, forming a directed graph (gene → mRNA → exon/CDS)
Multi-parent features (shared exons)Each exon line is tied to one transcript_id; an exon shared across transcripts must be repeated once per transcriptParent accepts a comma-separated list, so one exon line can declare membership in several transcripts at once
Reading frame / phase (CDS)Column 8 is called “frame” — 0, 1, 2, or “.”Column 8 is called “phase” — required on every CDS feature, same 0/1/2 values with a spec-defined meaning
Feature-type vocabularyInformal, fixed set (exon, CDS, 5UTR, 3UTR, start_codon, stop_codon, etc.)Controlled, versioned Sequence Ontology (SO) terms
Typical primary sourceUCSC downloads/Table Browser, Ensembl GTF track, Cufflinks/StringTie outputNCBI RefSeq/GenBank annotation releases, Ensembl GFF3 track, most genome browsers' native ingest
Common aligners/countersSTAR --sjdbGTFfile, featureCounts, htseq-count and Cufflinks/StringTie all default to GTF-style gene_id/transcript_idThe same tools generally accept GFF3 too, but need to be told which attribute (e.g. Parent) carries the gene/transcript ID — check the flag rather than assuming the default works
Conversion toolsgffread, AGAT and UCSC's genePred utilities convert GTF → GFF3gffread and AGAT convert GFF3 → GTF, but multi-parent exons, non-coding subtypes and custom attributes are not guaranteed to round-trip losslessly

Common questions

Common questions about GTF (GFF2-derived) vs GFF3

Is GFF3 better than GTF?

+

For representing complex, multi-isoform gene models, GFF3's explicit ID/Parent hierarchy removes an ambiguity GTF only resolves implicitly through shared gene_id/transcript_id values. GTF remains the practical default for many RNA-seq quantification pipelines simply because more established tools were built around it first.

Can I just rename a .gtf file to .gff3?

+

No. Renaming the extension does not change the attribute syntax in column 9 — the file still contains key “value”; pairs, which a parser expecting GFF3's key=value syntax will fail to read correctly.

Which format does Ensembl provide?

+

Both. Ensembl publishes GTF and GFF3 downloads generated from the same underlying annotation release, so choosing one is a question of tool compatibility, not data completeness.

Does converting between GTF and GFF3 lose information?

+

It can. Converters like gffread and AGAT handle the standard gene/transcript/exon/CDS case well, but multi-parent exons, non-coding RNA subtypes, and custom attributes outside the standard set are the places a round-trip conversion most often drops or flattens data — verify a converted file against its source rather than assuming a clean conversion.

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →

Regulatory Radar

Stop finding out after the fact

$29/month, cancel anytime. Daily digest updates from our analysis, a dashboard holding the same items, and a cited assistant for everything they raise.

  • Federal Register, Federal Register+, Grants.gov, Regulations.gov, NSF News, UKRI, plus CASRAI’s own published content.
  • 72,264 indexed passages, and every answer cites the ones it drew on.