All protocols

Check genome completeness with BUSCO

Run BUSCO against a lineage ortholog set to score genome assembly completeness, then read the C/S/D/F/M breakdown from the short summary.

SDSomenath DuttaUpdated July 21, 2026

Prerequisites

  • BUSCO installed (`busco` on PATH)
  • An assembly FASTA file
  • Internet access on the first run to download the lineage dataset

1Run BUSCO against a lineage

Point BUSCO at your assembly in genome mode and name the lineage that matches your organism. It predicts genes with Prodigal, searches them against the single-copy ortholog set with HMMER, and prints the completeness summary as C/S/D/F/M percentages over n total BUSCO groups. Use -c to set the CPU thread count.

bash
busco -i genome.fasta -m genome -l bacteria_odb10 -o busco_out -c 8

Expected output

INFO:	***** Start a BUSCO v5.7.1 analysis, current time: 07/21/2026 07:36:12 *****
INFO:	Running BUSCO using lineage dataset bacteria_odb10 (prokaryota, 2024-01-08)
INFO:	Running 1 job(s) on bacteria_odb10, starting at 07/21/2026 07:36:15
INFO:	Running Prodigal to predict genes on the assembly; this may take a while...
INFO:	Running hmmsearch on the gene predictions...
INFO:	Results:	C:97.6%[S:96.8%,D:0.8%],F:0.8%,M:1.6%,n:124

	--------------------------------------------------
	|Results from dataset bacteria_odb10              |
	--------------------------------------------------
	|C:97.6%[S:96.8%,D:0.8%],F:0.8%,M:1.6%,n:124      |
	|121	Complete BUSCOs (C)                       |
	|120	Complete and single-copy BUSCOs (S)      |
	|1	Complete and duplicated BUSCOs (D)       |
	|1	Fragmented BUSCOs (F)                     |
	|2	Missing BUSCOs (M)                        |
	|124	Total BUSCO groups searched              |
	--------------------------------------------------
INFO:	BUSCO analysis done. Total running time: 52 seconds
INFO:	Results written in /path/to/busco_out

2Read the short summary file

The run writes a plain-text short summary you can re-read without rerunning BUSCO. It repeats the C/S/D/F/M line plus the raw counts: Complete, complete single-copy, complete duplicated, Fragmented, Missing, and the total BUSCO groups searched.

bash
cat busco_out/short_summary.*.txt

Expected output

# BUSCO version is: 5.7.1 
# The lineage dataset is: bacteria_odb10 (Creation date: 2024-01-08, number of genomes: 4085, number of BUSCOs: 124)
# Summarized benchmarking in BUSCO notation for file /path/to/genome.fasta
# BUSCO was run in mode: prok_genome_min
# Gene predictor used: prodigal

	***** Results: *****

	C:97.6%[S:96.8%,D:0.8%],F:0.8%,M:1.6%,n:124	   
	121	Complete BUSCOs (C)			   
	120	Complete and single-copy BUSCOs (S)	   
	1	Complete and duplicated BUSCOs (D)	   
	1	Fragmented BUSCOs (F)			   
	2	Missing BUSCOs (M)			   
	124	Total BUSCO groups searched		   

Dependencies and versions:
	hmmsearch: 3.4
	prodigal: 2.6.3

Troubleshooting

ERROR: Impossible to read the lineage, or the dataset download fails on first run

Pre-download the set with `busco --download bacteria_odb10`, then run with `--offline --download_path /path/to/busco_downloads` pointing at the local copy.

Not sure which lineage to use for your organism

Let BUSCO pick with `--auto-lineage` (or `--auto-lineage-prok` / `--auto-lineage-euk` to restrict the search) instead of passing -l.