Gene isoforms are mainly generated through alternative splicing, a process wherein different exons of a pre-mRNA are joined or skipped. This results in multiple mRNA transcripts from a single gene. Additionally, the use of alternative promoters and polyadenylation sites further diversifies the mRNA transcripts. Each of these mechanisms allows cells to produce different protein variants from a single gene.