Introduction, downloads

S: 21 Feb 2018 (b5.3)

D: 21 Feb 2018

Recent version history

What's new?

Future development


Note to testers

[Jump to search box]

General usage

Citation instructions

Standard data input

PLINK 1 binary (.bed)

Autoconversion behavior

PLINK text (.ped, .tped...)

VCF (.vcf{.gz}, .bcf)

Oxford (.gen{.gz}, .bgen)

23andMe text

Generate random

Unusual chromosome IDs

Recombination map



Clusters of samples

Variant sets

Binary distance matrix

IBD report (.genome)

Input filtering

Sample ID file

Variant ID file

Positional ranges file

Cluster membership

Set membership



SNPs only

Simple variant window

Multiple variant ranges

Sample/variant thinning

Covariates (--filter)

Missing genotypes

Missing phenotypes

Minor allele frequencies


Mendel errors

Quality scores


Main functions

Data management

















Merge failures

VCF reference merge




Basic statistics









Linkage disequilibrium





Distance matrices






Distance-pheno. analysis





Population stratification





Association analysis

Basic case/control

  (--assoc, --model)

Stratified case/control

  (--mh, --mh2, --homog)

Quantitative trait

  (--assoc, --gxe)

Regression w/ covariates

  (--linear, --logistic)




Monte Carlo permutation

Set-based tests

REML additive heritability

Family-based association





Report postprocessing









Allelic scoring (--score)

R plugins (--R)

Secondary input

GCTA matrix (.grm.bin...)

Distributed computation

Command-line help


Tabs vs. spaces

Flag/parameter reuse

System resource usage

Pseudorandom numbers


1000 Genomes phase 1

Teaching materials

Gene range lists

Functional SNP attributes

Errors and warnings

Output file list

Order of operations

For developers

GitHub repository


Core algorithms

Partial sum lookup

Bit population count

Ternary dot product

Vertical population count

Exact statistical tests

Multithreaded gzip

Adding new functionality

Google groups




File formats

Quick index search

Google groups

To be informed about updates, get technical support, make feature requests, and/or engage in other public communication about PLINK-related matters, you'll want to join one or two of our Google groups.

  • The plink2-announce group is the low-traffic choice, with nothing but major release announcements.
  • The plink2-users group is the general discussion and technical support forum. With luck, the archives will become useful over time as solutions to the most common issues accumulate. Release announcements will be crossposted here; we may also solicit feedback re: upcoming features.
  • plink2-dev is for those working with the source code. If you want to implement something new and/or perform a useful refactoring, this is a good place to discuss it, especially if you want to see your work merged into the main codebase; we'll try to answer your questions in enough detail to enable you to finish your job.

To privately communicate with the development team (e.g. you have a potentially sensitive bug report), send email to

Credits >>