macOS
brew install bcftoolslocal Homebrew formula metadata
sudo port install bcftoolsMacPorts ports tree · science/bcftools/Portfile · source: api.github.com
brew
Tools for BCF/VCF files and variant calling from samtools. Version 1.23.1 via Homebrew; verified 2026-06-22.
install
brew install bcftoolslocal Homebrew formula metadata
sudo port install bcftoolsMacPorts ports tree · science/bcftools/Portfile · source: api.github.com
sudo apt install bcftoolsDebian stable package indexes · bcftools · source: deb.debian.org
sudo dnf install bcftoolsFedora Rawhide package metadata · bcftools · source: dl.fedoraproject.org
nix profile install nixpkgs#bcftoolsnixpkgs package indexes · pkgs/by-name/bc/bcftools/package.nix · source: api.github.com
sudo zypper install bcftoolsopenSUSE Tumbleweed package metadata · bcftools · source: download.opensuse.org
overview
Tools for BCF/VCF files and variant calling from samtools
history
bcftools is one of the core command-line toolkits of modern genomics: it reads, writes, filters, queries, summarizes, and calls variants in VCF, BCF, and gVCF formats.
BCFtools grew out of the SAMtools ecosystem for high-throughput sequencing data. The upstream README says it implements utilities for variant calling, in conjunction with SAMtools, and for manipulating VCF and BCF files, with the intention of replacing Perl-based tools from vcftools.
The Samtools project now presents three related repositories: Samtools for SAM/BAM/CRAM, BCFtools for BCF2/VCF/gVCF and variant calling/filtering/summarising SNPs and short indels, and HTSlib as the underlying C library.
The 2021 GigaScience paper by the SAMtools/BCFtools authors describes SAMtools and BCFtools as widely used programs for processing and analysing high-throughput sequencing data, first appearing online 12 years earlier and used in many other projects and genomic pipelines.
The same paper reports that both SAMtools and BCFtools had been installed more than one million times via Bioconda, making bcftools a rare CLI package whose package-manager footprint maps directly to scientific infrastructure.
bcftools is used for file-format conversion and manipulation, sorting, querying, statistics, variant calling, filtering, and effect analysis. In pipelines it commonly appears after alignment and BAM/CRAM processing, where it calls or filters variants into VCF/BCF outputs.
The executable is usually scripted rather than used as a single monolithic command: subcommands such as view, query, filter, stats, mpileup, call, norm, annotate, merge, and concat make it a toolkit for repeatable genomics workflows.
bcftools is package-nerd significant because it is a dependency-shaped scientific standard: small enough to install as a CLI, but central enough that entire variant-calling workflows assume it is available and versioned consistently.
It is also a good example of package-manager science: Homebrew, Debian, Fedora, MacPorts, Nix, Ubuntu, and Bioconda-style environments turn a research-code lineage into a reproducible command people can pin in workflows, containers, and clusters.
The BCF/VCF domain makes versioning matter. File formats, reference assumptions, compression/indexing via HTSlib, and pipeline reproducibility all mean bcftools is not just a convenience binary; it is part of the scientific record for many analyses.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
bcftools | cli | global executable | |
color-chrs.pl | cli | global executable | |
gff2gff | cli | global executable | |
gff2gff.py | cli | global executable | |
guess-ploidy.py | cli | global executable | |
plot-roh.py | cli | global executable | |
plot-vcfstats | cli | global executable | |
roh-viz | cli | global executable | |
run-roh.pl | cli | global executable | |
vcfutils.pl | cli | global executable | |
vrfs-variances | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/samtools/bcftools
install metadata
| Package key | brew:bcftools |
|---|---|
| Version | 1.23.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/bcftools |
| Homepage | https://www.htslib.org/ |
| Repository | https://github.com/samtools/bcftools |
| Upstream docs | https://samtools.github.io/bcftools/bcftools.html |
| License | GPL-3.0-or-later |
| Source archive | https://github.com/samtools/bcftools/releases/download/1.23.1/bcftools-1.23.1.tar.bz2 |
| Last updated | 2026-06-22T14:02:52-07:00 |
| Pulse | updated |
| Dependencies | gsl, htslib |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | bcftools |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
bcftools 1.21-1
genomic variant calling and manipulation of VCF/BCF files
https://samtools.github.io/bcftools/
sudo apt install bcftoolsbcftools
nix profile install nixpkgs#bcftoolsbcftools 1.19-1build2
genomic variant calling and manipulation of VCF/BCF files
https://samtools.github.io/bcftools/
sudo apt install bcftoolsbcftools 1.23.1-1.fc45
Tools for genomic variant calling and manipulating VCF/BCF files
sudo dnf install bcftoolsbcftools 1.21-1.3
Tools for manipulating variant calls in the Variant Call Format (VCF)
sudo zypper install bcftoolsbcftools
sudo port install bcftoolssource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.