Skip to content

What DNA Analysis Software Should You Run on Your Own Genome

Oak
A river of glowing strands in a night forest passes a small living lens, then a huge organic filter that pulls out a few bright beads.

If you want to work with your own whole-genome sequencing data, the answer is a command-line stack, not a desktop sequence editor: bwa-mem2 or DRAGEN for alignment, DeepVariant or GATK HaplotypeCaller for variant calling, bcftools for manipulation, Ensembl VEP for annotation, and IGV for looking at individual sites with your own eyes. All of it is free. SnapGene and Geneious, which dominate searches for “DNA analysis software,” are built for a different job: designing plasmids, reading Sanger traces, planning PCR and cloning. They are good at that job and nearly useless for a 30x human genome, because a human genome is 100 GB of short reads and roughly four to five million variants, and the work is filtering and annotation rather than viewing a sequence.

The distinction is worth making precisely, because most published lists of “free DNA sequence analysis tools” mix the two categories and leave you no way to choose.

Two different categories of software

The first category is molecular biology design software: SnapGene, Geneious Prime, Benchling, and the free ApE (A plasmid Editor) and UGENE. These operate on single sequences of a few hundred to a few hundred thousand bases, usually GenBank or FASTA files. They show restriction sites, open reading frames, primer binding, and feature annotations, and they read Sanger .ab1 chromatograms. If you are cloning something, this is the right category. Geneious Prime is commercial with a time-limited trial and a permanently free Geneious Prime Viewer that opens documents but does not run most analyses, which is the answer to a question people ask often.

The second category is population and personal genomics tooling, and it is what you need for sequencing data on a person. Your input is a pair of gzipped FASTQ files, your intermediate is a CRAM or BAM alignment, your output is a VCF of variants, and your actual analytical work happens after that in annotation and filtering. Nothing in this category has a friendly interface, and that is fine, because the pipeline is a handful of commands you run once and then a long tail of queries you write yourself.

The stack we would run, end to end

Start with raw reads. A 30x human genome arrives as roughly 100 GB of gzipped FASTQ, about 800 million to 900 million read pairs at 2x150 bp. Check the reads first with fastp or fastqc, mostly to confirm the insert size distribution and duplicate rate look sane rather than to trim aggressively. Modern aligners handle adapter-contaminated read ends well enough that heavy trimming costs you more than it gains.

Align to GRCh38 with ALT contigs and the decoy sequences, using the analysis set reference that masks false duplications:

bwa-mem2 mem -t 32 -K 100000000 -Y \
  -R '@RG\tID:L1\tSM:SAMPLE\tPL:ILLUMINA\tLB:lib1' \
  GRCh38_full_analysis_set_plus_decoy_hla.fa R1.fq.gz R2.fq.gz \
  | samtools sort -@ 8 -m 2G -o SAMPLE.bam -
samtools index SAMPLE.bam

Budget three to six hours on 32 cores. Then mark duplicates with samtools markdup or GATK MarkDuplicates, and convert to CRAM referenced against the same FASTA. CRAM at 30x lands around 15 to 20 GB against the 60 to 80 GB of an equivalent BAM, and it is lossless as long as you keep the exact reference file. Losing that FASTA is the single most common way people render their own archived data unreadable.

For calling, we would use DeepVariant with the WGS model rather than GATK HaplotypeCaller for a single sample. It needs no known-sites resource, no base quality score recalibration step, and it is consistently better on indels in homopolymers and short tandem repeats, which is where most single-sample false positives live. GATK is the better choice if you are joint-calling a family, where GVCFs and GenotypeGVCFs give you shared reference confidence and cleaner de novo analysis. Either way you should end up with a bgzipped, tabix-indexed VCF and about 4 to 5 million variants, of which roughly 3.5 to 4 million are SNVs and 500,000 to 700,000 are small insertions and deletions. That number is a sanity check: fewer than 3 million on a European-ancestry sample usually means over-aggressive filtering, and more than 6 million usually means contamination or a reference mismatch.

Normalize before you annotate anything, because almost every downstream tool silently misbehaves on multiallelic records:

bcftools norm -m -any -f GRCh38.fa -c s -Oz -o norm.vcf.gz calls.vcf.gz
bcftools index -t norm.vcf.gz

Annotation is where the real work is

Four million variants is not an analysis. Annotation is what turns it into one, and Ensembl VEP is the tool we would build on, run offline against a local cache so your genome never leaves your machine:

vep --offline --cache --dir_cache ~/.vep --assembly GRCh38 \
  --fasta GRCh38.fa --vcf --compress_output bgzip \
  --everything --pick_allele_gene --canonical --hgvs \
  --plugin CADD,whole_genome_SNVs.tsv.gz \
  --custom clinvar.vcf.gz,ClinVar,vcf,exact,0,CLNSIG,CLNREVSTAT \
  -i norm.vcf.gz -o annotated.vcf.gz

Then filter on allele frequency from gnomAD, on predicted consequence, and on ClinVar significance plus review status. The review status field matters more than most people expect: a “single submitter, no assertion criteria” pathogenic claim is a very different object from a two-star expert panel classification, and treating them alike is how you scare yourself over nothing. Prediction tools like MutationTaster and CADD are useful for ranking novel missense and splice-region variants, but they are classifiers with real error rates, not verdicts, and MutationTaster’s own evaluation framing makes clear it estimates disease-causing potential rather than establishing it 1.

Two facts should anchor your expectations. First, every healthy person carries a substantial burden of alarming-looking variation: the 1000 Genomes pilot found each individual carries on the order of 250 to 300 loss-of-function variants in annotated genes and 50 to 100 variants previously implicated in inherited disease 2. Finding something flagged in a database is the normal outcome, not a signal. Second, most of your variants are noncoding, and interpreting them requires regulatory annotation of the kind ENCODE produced, mapping candidate cis-regulatory elements, chromatin state, and transcription factor binding across cell types 3. Overlapping a variant with an enhancer is a hypothesis, and usually a weak one.

For structural and copy number variation, short-read WGS calling from a single sample is genuinely hard. manta plus dysgu or delly gives you candidate SVs, and read-depth methods handle large events: WisecondorX, developed for shallow WGS in a routine clinical setting, illustrates how much of CNV detection reduces to careful within-sample normalization and reference-set comparison rather than raw depth 4. Expect to confirm anything interesting orthogonally.

Failure modes that will cost you a weekend

Contig naming is the first one. chr1 versus 1 breaks joins between your VCF and half the annotation resources in existence, and bcftools annotate --rename-chrs is the fix. The second is assembly mismatch: consumer array exports and older resources are GRCh37, VEP caches and gnomAD v4 are GRCh38, and lifting over with CrossMap or picard LiftoverVcf fails on a small but non-random subset of positions. The third is region-specific: pharmacogenes such as CYP2D6, the HLA locus, SMN1/SMN2, and repeat expansions in genes like HTT and FMR1 are not reliably resolved by a general-purpose caller, and need specialized tools (Cyrius, HLA*LA, SMNCopyNumberCaller, ExpansionHunter). Reporting a CYP2D6 diplotype off a plain HaplotypeCaller VCF is simply wrong. Finally, always look at the reads. Load the CRAM in IGV at any site you plan to take seriously and check mapping quality, strand balance, and whether the region is a segmental duplication. A large fraction of striking single-variant findings dissolve on visual inspection.

None of this makes a clinical determination. Classification of a variant against ACMG criteria, and any decision that follows from it, belongs with a clinical geneticist or genetic counselor working from a validated clinical assay. Large programs built for exactly this purpose, such as the 100,000 Genomes Project in the NHS, pair sequencing with clinical phenotyping and multidisciplinary review precisely because the sequence alone does not settle the question 5. Treat your own analysis as generating candidates to bring to someone qualified, and confirm anything consequential on a clinical-grade test.

Questions people also ask

What is the best free software for DNA sequence analysis? It depends on the sequence. For plasmids, primers, and Sanger traces, ApE and UGENE are free and capable. For human WGS, the free stack is samtools/bcftools, bwa-mem2 or minimap2, DeepVariant or GATK, Ensembl VEP, mosdepth, and IGV, and that combination is what large sequencing projects run.

Is Geneious software free? Is there a free version? Geneious Prime is commercial, with a time-limited full trial and a free Geneious Prime Viewer that opens and displays documents but disables most analysis functions. If you need free cloning and alignment tools, ApE, UGENE, and Benchling’s free academic tier are the practical alternatives.

What is the best software for DNA sequencing? For human short-read data, Illumina’s DRAGEN is the fastest production option and is what many clinical labs use, while the open equivalent of bwa-mem2 plus DeepVariant reaches comparable accuracy on a workstation at the cost of hours instead of minutes.

Is there a good online DNA sequence viewer? For short sequences, Benchling and the NCBI Sequence Viewer work well in a browser. For your own alignments, igv.js and JBrowse 2 can serve CRAM and VCF from local files or a private server, which we prefer over uploading personal genomic data anywhere.

Do I need a reference genome file? Yes, and you need the exact one used for alignment. CRAM compression is reference-based, so archiving the FASTA and its index alongside your data is part of archiving your data at all.

Oak builds longitudinal molecular profiles of individuals: whole-genome sequencing, RNA sequencing, proteomics, blood biomarkers, and continuous glucose data, integrated into one model of you. Build your profile.

Footnotes

  1. Jana Marie Schwarz, Christian Rödelsperger, Markus Schuelke, et al. MutationTaster evaluates disease-causing potential of sequence alterations. Nature Methods, 2010. https://doi.org/10.1038/nmeth0810-575 ↩

  2. The 1000 Genomes Project Consortium. A map of human genome variation from population-scale sequencing. Nature, 2010. https://doi.org/10.1038/nature09534 ↩

  3. The ENCODE Project Consortium. An integrated encyclopedia of DNA elements in the human genome. Nature, 2012. https://doi.org/10.1038/nature11247 ↩

  4. Lennart Raman, Annelies Dheedene, Matthias De Smet, et al. WisecondorX: improved copy number detection for routine shallow whole-genome sequencing. Nucleic Acids Research, 2018. https://doi.org/10.1093/nar/gky1263 ↩

  5. The 100 000 Genomes Project: bringing whole genome sequencing to the NHS. BMJ, 2018. https://doi.org/10.1136/bmj.k1952 ↩