IQTREE3-OMP(1)

πŸ“¦ version 3.1.1, in ubuntu stonking

iqtree3-omp(1) β€” User Commands. Multiprocessor version, bestie! πŸ’…

πŸ’– NAME πŸ’–

iqtree3-omp β€” efficient phylogenetic software by maximum likelihood (multiprocessor version). No cap, she's iconic. πŸ‘‘

πŸ¦‹ SYNOPSIS πŸ¦‹

iqtree [-s ALIGNMENT] [-p PARTITION] [-m MODEL] [-t TREE] ...

🌸 DESCRIPTION 🌸

IQ-TREE version 3.1.1 for Linux x86 64-bit built Jul 28 2026. Developed by Bui Quang Minh, Thomas Wong, Nhan Ly-Trong, Huaiyan Ren. Contributed by Lam-Tung Nguyen, Dominik Schrempf, Chris Bielow, Olga Chernomor, Michael Woodhams, Diep Thi Hoang, Heiko Schmidt. ✨

✨ GENERAL OPTIONS ✨

  • -h, --help β€” Print (more) help usages πŸ’–
  • -s FILE[,...,FILE] β€” PHYLIP/FASTA/NEXUS/CLUSTAL/MSF alignment file(s) 🧬
  • -s DIR β€” Directory of alignment files πŸ“
  • --seqtype STRING β€” BIN, DNA, AA, NT2AA, CODON, MORPH (default: auto-detect)
  • -t FILE|PARS|RAND β€” Starting tree (default: 99 parsimony and BIONJ) 🌳
  • -o TAX[,...,TAX] β€” Outgroup taxon (list) for writing .treefile
  • --prefix STRING β€” Prefix for all output files (default: aln/partition) 🏷️
  • --seed NUM β€” Random seed number, normally used for debugging purpose 🎲
  • --safe β€” Safe likelihood kernel to avoid numerical underflow πŸ›Ÿ
  • --mem NUM[G|M|%] β€” Maximal RAM usage in GB | MB | % 🧠
  • --runs NUM β€” Number of independent runs (default: 1) πŸ”
  • -v, --verbose β€” Verbose mode, printing more messages to screen πŸ—£οΈ
  • -V, --version β€” Display version number
  • --quiet β€” Quiet mode, suppress printing to screen (stdout) 🀫
  • -fconst f1,...,fN β€” Add constant patterns into alignment (N=no. states)
  • --epsilon NUM β€” Likelihood epsilon for parameter estimate (default 0.01)
  • -T NUM|AUTO β€” No. cores/threads or AUTO-detect (default: 1) ⚑
  • --threads-max NUM β€” Max number of threads for -T AUTO (default: all cores)

πŸŽ€ CHECKPOINT πŸŽ€

  • --redo β€” Redo both ModelFinder and tree search πŸ”„
  • --redo-tree β€” Restore ModelFinder and only redo tree search
  • --undo β€” Revoke finished run, used when changing some options ↩️
  • --cptime NUM β€” Minimum checkpoint interval (default: 60 sec and adapt) ⏱️

πŸ’… PARTITION MODEL πŸ’…

  • -p FILE|DIR β€” NEXUS/RAxML partition file or directory with alignments. Edge-linked proportional partition model.
  • -q FILE|DIR β€” Like -p but edge-linked equal partition model
  • -Q FILE|DIR β€” Like -p but edge-unlinked partition model
  • -S FILE|DIR β€” Like -p but separate tree inference
  • --subsample NUM β€” Randomly sub-sample partitions (negative for complement) 🎲
  • --subsample-seed NUM β€” Random number seed for --subsample

🧬 LIKELIHOOD/QUARTET MAPPING 🧬

  • --lmap NUM β€” Number of quartets for likelihood mapping analysis
  • --lmclust FILE β€” NEXUS file containing clusters for likelihood mapping
  • --quartetlh β€” Print quartet log-likelihoods to .quartetlh file

🌳 TREE SEARCH ALGORITHM 🌳

  • --ninit NUM β€” Number of initial parsimony trees (default: 100)
  • --ntop NUM β€” Number of top initial trees (default: 20)
  • --nbest NUM β€” Number of best trees retained during search (default: 5)
  • -n NUM β€” Fix number of iterations to stop (default: OFF)
  • --nstop NUM β€” Number of unsuccessful iterations to stop (default: 100)
  • --perturb NUM β€” Perturbation strength for randomized NNI (default: 0.5)
  • --radius NUM β€” Radius for parsimony SPR search (default: 6)
  • --allnni β€” Perform more thorough NNI search (default: OFF)
  • -g FILE β€” (Multifurcating) topological constraint tree file
  • --fast β€” Fast search to resemble FastTree πŸš€
  • --polytomy β€” Collapse near-zero branches into polytomy
  • --tree-fix β€” Fix -t tree (no tree search performed)
  • --treels β€” Write locally optimal trees into .treels file
  • --show-lh β€” Compute tree likelihood without optimisation
  • --terrace β€” Check if the tree lies on a phylogenetic terrace

⚑ ULTRAFAST BOOTSTRAP/JACKKNIFE ⚑

  • -B, --ufboot NUM β€” Replicates for ultrafast bootstrap (>=1000)
  • -J, --ufjack NUM β€” Replicates for ultrafast jackknife (>=1000)
  • --jack-prop NUM β€” Subsampling proportion for jackknife (default: 0.5)
  • --sampling STRING β€” GENE|GENESITE resampling for partitions (default: SITE)
  • --boot-trees β€” Write bootstrap trees to .ufboot file (default: none)
  • --wbtl β€” Like --boot-trees but also writing branch lengths
  • --nmax NUM β€” Maximum number of iterations (default: 1000)
  • --nstep NUM β€” Iterations for UFBoot stopping rule (default: 100)
  • --bcor NUM β€” Minimum correlation coefficient (default: 0.99)
  • --beps NUM β€” RELL epsilon to break tie (default: 0.5)
  • --bnni β€” Optimize UFBoot trees by NNI on bootstrap alignment

🎲 NON-PARAMETRIC BOOTSTRAP/JACKKNIFE 🎲

  • -b, --boot NUM β€” Replicates for bootstrap + ML tree + consensus tree
  • -j, --jack NUM β€” Replicates for jackknife + ML tree + consensus tree
  • --jack-prop NUM β€” Subsampling proportion for jackknife (default: 0.5)
  • --bcon NUM β€” Replicates for bootstrap + consensus tree
  • --bonly NUM β€” Replicates for bootstrap only
  • --tbe β€” Transfer bootstrap expectation

πŸ”¬ SINGLE BRANCH TEST πŸ”¬

  • --alrt NUM β€” Replicates for SH approximate likelihood ratio test
  • --alrt 0 β€” Parametric aLRT test (Anisimova and Gascuel 2006)
  • --abayes β€” approximate Bayes test (Anisimova et al. 2011)
  • --lbp NUM β€” Replicates for fast local bootstrap probabilities

πŸ€– MODEL-FINDER πŸ€–

  • --use-nn-model β€” Use neural network for tree inference
  • --nn-path-model β€” Neural network file for substitution model (onnx format)
  • --nn-path-rates β€” Neural network file for alpha value (onnx format)
  • -m TESTONLY β€” Standard model selection (like jModelTest, ProtTest)
  • -m TEST β€” Standard model selection followed by tree inference
  • -m MF β€” Extended model selection with FreeRate heterogeneity
  • -m MFP β€” Extended model selection followed by tree inference
  • -m ...+LM β€” Additionally test Lie Markov models
  • -m ...+LMRY β€” Additionally test Lie Markov models with RY symmetry
  • -m ...+LMWS β€” Additionally test Lie Markov models with WS symmetry
  • -m ...+LMMK β€” Additionally test Lie Markov models with MK symmetry
  • -m ...+LMSS β€” Additionally test strand-symmetric models
  • --mset STRING β€” Restrict search to models supported by other programs (raxml, phyml, mrbayes, beast1 or beast2) If mrbayes is selected, will output a MrBayes Block File if Data Type is supported.
  • --mset STR,... β€” Comma-separated model list (e.g. -mset WAG,LG,JTT)
  • --msub STRING β€” Amino-acid model source (nuclear, mitochondrial, chloroplast or viral)
  • --mfreq STR,... β€” List of state frequencies
  • --mrate STR,... β€” List of rate heterogeneity among sites (e.g. -mrate E,I,G,I+G,R is used for -m MF)
  • --cmin NUM β€” Min categories for FreeRate model [+R] (default: 2)
  • --cmax NUM β€” Max categories for FreeRate model [+R] (default: 10)
  • --merit AIC|AICc|BIC β€” Akaike|Bayesian information criterion (default: BIC)
  • --mtree β€” Perform full tree search for every model
  • --madd STR,... β€” List of mixture models to consider
  • --mdef FILE β€” Model definition NEXUS file (see Manual)
  • --modelomatic β€” Find best codon/protein/DNA models (Whelan et al. 2015)

🧩 PARTITION-FINDER 🧩

  • --merge β€” Merge partitions to increase model fit
  • --merge greedy|rcluster|rclusterf β€” Set merging algorithm (default: rclusterf)
  • --merge-model 1|all β€” Use only 1 or all models for merging (default: 1)
  • --merge-model STR,... β€” Comma-separated model list for merging
  • --merge-rate 1|all β€” Use only 1 or all rate heterogeneity (default: 1)
  • --merge-rate STR,... β€” Comma-separated rate list for merging
  • --rcluster NUM β€” Percentage of partition pairs for rcluster algorithm
  • --rclusterf NUM β€” Percentage of partition pairs for rclusterf algorithm
  • --rcluster-max NUM β€” Max number of partition pairs (default: 10*partitions)

🧬 SUBSTITUTION MODEL 🧬

  • -m STRING β€” Model name string (e.g. GTR+F+I+G)

DNA:

  • HKY (default), JC, F81, K2P, K3P, K81uf, TN/TrN, TNef, TIM, TIMef, TVM, TVMef, SYM, GTR, or 6-digit model specification (e.g., 010010 = HKY)

Protein:

  • LG (default), Poisson, cpREV, mtREV, Dayhoff, mtMAM, JTT, WAG, mtART, mtZOA, VT, rtREV, DCMut, PMB, HIVb, HIVw, JTTDCMut, FLU, Blosum62, GTR20, mtMet, mtVer, mtInv, FLAVI,
  • Q.LG, Q.pfam, Q.pfam_gb, Q.bird, Q.mammal, Q.insect, Q.plant, Q.yeast

Protein mixture:

  • C10,...,C60, EX2, EX3, EHO, UL2, UL3, EX_EHO, LG4M, LG4X

Binary:

  • JC2 (default), GTR2

Empirical codon:

  • KOSI07, SCHN05

Mechanistic codon:

  • GY (default), MG, MGK, GY0K, GY1KTS, GY1KTV, GY2K, MG1KTS, MG1KTV, MG2K

Semi-empirical codon:

  • XX_YY where XX is empirical and YY is mechanistic model

Morphology/SNP:

  • MK (default), ORDERED, GTR

Lie Markov DNA:

  • 1.1, 2.2b, 3.3a, 3.3b, 3.3c, 3.4, 4.4a, 4.4b, 4.5a, 4.5b, 5.6a, 5.6b, 5.7a, 5.7b, 5.7c, 5.11a, 5.11b, 5.11c, 5.16, 6.6, 6.7a, 6.7b, 6.8a, 6.8b, 6.17a, 6.17b, 8.8, 8.10a, 8.10b, 8.16, 8.17, 8.18, 9.20a, 9.20b, 10.12, 10.34, 12.12 (optionally prefixed by RY, WS or MK)

Non-reversible:

  • STRSYM (strand symmetric model, equiv. WS6.6), NONREV, UNREST (unrestricted model, equiv. 12.12) NQ.pfam, NQ.bird, NQ.mammal, NQ.insect, NQ.plant, NQ.yeast

Otherwise:

  • Name of file containing user-model parameters

🌈 STATE FREQUENCY 🌈

  • -m ...+F β€” Empirically counted frequencies from alignment
  • -m ...+FO β€” Optimized frequencies by maximum-likelihood
  • -m ...+FQ β€” Equal frequencies
  • -m ...+FRY β€” For DNA, freq(A+G)=1/2=freq(C+T)
  • -m ...+FWS β€” For DNA, freq(A+T)=1/2=freq(C+G)
  • -m ...+FMK β€” For DNA, freq(A+C)=1/2=freq(G+T)
  • -m ...+Fabcd β€” 4-digit constraint on ACGT frequency (e.g. +F1221 means f_A=f_T, f_C=f_G)
  • -m ...+FU β€” Amino-acid frequencies given protein matrix
  • -m ...+F1x4 β€” Equal NT frequencies over three codon positions
  • -m ...+F3x4 β€” Unequal NT frequencies over three codon positions

πŸ”₯ RATE HETEROGENEITY AMONG SITES πŸ”₯

  • -m ...+I β€” A proportion of invariable sites
  • -m ...+G[n] β€” Discrete Gamma model with n categories (default n=4)
  • -m ...*G[n] β€” Discrete Gamma model with unlinked model parameters
  • -m ...+I+G[n] β€” invariable sites PLUS the Gamma model, with n rate categories bestie πŸ’…
  • -m ...+R[n] β€” FreeRate model, n categories (and yes, n=4 if you don't say) ✨
  • -m ...*R[n] β€” FreeRate but the model parameters are unlinked, they're doing their own thing fr
  • -m ...+I+R[n] β€” invariable sites plus FreeRate, n categories, the whole combo meal πŸ“
  • -m ...+Hn β€” heterotachy model with n classes
  • -m ...*Hn β€” heterotachy with n classes and unlinked parameters
  • --alpha-min NUM β€” the minimum Gamma shape parameter for site rates (default: 0.02)
  • --gamma-median β€” use the median approximation for +G site rates (the default is mean, btw)
  • --rate β€” write the empirical Bayesian site rates out to a .rate file πŸ“
  • --mlrate β€” write maximum likelihood site rates out to a .mlrate file

🧬 POLYMORPHISM AWARE MODELS (PoMo) 🧬

  • -s FILE β€” the input counts file (peep the manual for this one)
  • -m ...+P β€” a DNA substitution model (any of the ones above) used together with PoMo
  • -m ...+N<POPSIZE> β€” set the virtual population size (default: 9)
  • -m ...+WB|WH|S] β€” weighted binomial sampling
  • -m ...+WH β€” weighted hypergeometric sampling
  • -m ...+S β€” sampled sampling
  • -m ...+G[n] β€” discrete Gamma rate with n categories (default n=4)

πŸŽ€ COMPLEX MODELS πŸŽ€

  • -m "MIX{m1,...,mK}" β€” mixture model with K components
  • -m "FMIX{f1,...fK}" β€” frequency mixture model with K components
  • --mix-opt β€” optimize the mixture weights (default: detect)
  • -m ...+ASC β€” ascertainment bias correction
  • --tree-freq FILE β€” input tree used to infer the site frequency model
  • --site-freq FILE β€” input site frequency model file
  • --freq-max β€” posterior maximum instead of the mean approximation

🌸 TREE TOPOLOGY TEST 🌸

  • --trees FILE β€” a set of trees to evaluate log-likelihoods on
  • --test NUM β€” number of replicates for the topology test
  • --test-weight β€” perform weighted KH and SH tests
  • --test-au β€” the approximately unbiased (AU) test (Shimodaira 2002)
  • --au-epsilon NUM β€” epsilon for the AU test: if |deltaL| < NUM, the tree gets kept no matter what the p-value says (default: 0.001)
  • --sitelh β€” write site log-likelihoods into a .sitelh file

πŸ‘‘ ANCESTRAL STATE RECONSTRUCTION πŸ‘‘

  • --ancestral β€” ancestral state reconstruction via empirical Bayes
  • --asr-min NUM β€” minimum probability for an ancestral state (default: equil freq)

πŸ’€ TEST OF SYMMETRY πŸ’€

  • --symtest β€” perform three tests of symmetry
  • --symtest-only β€” run --symtest and then just exit
  • --symtest-remove-bad β€” run --symtest and remove the bad partitions
  • --symtest-remove-good β€” run --symtest and remove the good partitions
  • --symtest-type MAR|INT β€” use the MARginal or INTernal test when removing partitions
  • --symtest-pval NUMER β€” the p-value cutoff (default: 0.05)
  • --symtest-keep-zero β€” keep the NAs in the tests πŸ™ˆ

πŸ¦‹ CONCORDANCE FACTOR ANALYSIS πŸ¦‹

  • -t FILE β€” reference tree used to assign concordance factor
  • --gcf FILE β€” set of source trees for the gene concordance factor (gCF)
  • --df-tree β€” write the discordant trees associated with gDF1
  • --scf NUM β€” number of quartets for the site concordance factor (sCF)
  • --scfl NUM β€” same as --scf but it uses likelihood (this one's recommended, no cap)
  • -s FILE β€” sequence alignment for --scf
  • -p FILE|DIR β€” partition file or directory for --scf
  • --cf-verbose β€” write CF per tree/locus to cf.stat_tree/_loci
  • --cf-quartet β€” write sCF for all the resampled quartets into .cf.quartet

🌈 ALISIM: ALIGNMENT SIMULATOR 🌈

Usage:

iqtree --alisim <OUTPUT_PREFIX> [-m MODEL] [-t TREE] ...
  • --alisim OUTPUT_ALIGNMENT β€” switch AliSim ON and set the output alignment filename
  • -t TREE_FILE β€” set the input tree file name
  • --length LENGTH β€” set the length of the root sequence
  • --num-alignments NUMBER β€” set how many output datasets you want
  • --seqtype STRING β€” BIN, DNA, AA, CODON, MORPH{NUM_STATES} (default: auto-detect). For morphological data, 0<NUM_STATES<=32
  • --m MODEL_STRING β€” pick the evolutionary model. The Manual has more detail on this one
  • --mdef FILE β€” name of a NEXUS model file that defines new models (see the Manual)
  • --fundi TAXA_LIST,RHO β€” specify a list of taxa, and Rho (the Fundi weight) for the FunDi model
  • --indel <INS>,<DEL> β€” set the insertion and deletion rate of the indel model, relative to the substitution rate
  • --indel-size <INS_DIS>,<DEL_DIS> β€” set the insertion and deletion size distributions
  • --sub-level-mixture β€” turn on the feature that simulates a substitution-level mixture model
  • --no-unaligned β€” stop outputting a file of unaligned sequences when you're using indel models
  • --root-seq FILE,SEQ_NAME β€” specify the root sequence from an alignment
  • -s FILE β€” specify the input sequence alignment
  • --no-copy-gaps β€” stop copying gaps from the input alignment (default: false)
  • --site-freq <OPTION> β€” specify the option (MEAN (default), or SAMPLING, or MODEL) to mimic the site-frequencies for mixture models from the input alignment (see the Manual)
  • --site-rate <OPTION> β€” specify the option (MEAN (default), or SAMPLING, or MODEL) to mimic the discrete rate heterogeneity from the input alignment (see the Manual)
  • -t RANDOM{MODEL,NUM_TAXA} β€” specify the model and the number of taxa to generate a random tree
  • -rlen MIN MEAN MAX β€” give three numbers: minimum, mean and maximum branch lengths when generating a random tree
  • -p FILE β€” NEXUS/RAxML partition file, edge-linked proportional partition model
  • -q FILE β€” like -p but edge-linked equal partition model
  • -Q FILE β€” like -p but edge-unlinked partition model
  • --distribution FILE β€” hand over a definition file of distributions, which can be used to generate random model parameters
  • --branch-distribution DIS β€” specify a distribution that the branch lengths of the input trees get randomly generated from and overridden with
  • --branch-scale SCALE β€” specify a value to scale all branch lengths
  • --single-output β€” output all alignments into one single file
  • --write-all β€” turn on outputting internal sequences
  • --seed NUM β€” random seed number (default: CPU clock). Be careful β€” if you want your AliSim runs to be reproducible, you gotta specify the seed number, bestie
  • -gz β€” enable output compression, but it takes longer to run
  • -af phy|fasta β€” set the output format (default: phylip)
The User Manual is available at http://www.iqtree.org/doc/AliSim 🫢

πŸ’œ ANALYSIS WITH GENTRIUS ALGORITHM πŸ’œ

  • --gentrius FILE β€” the file has to contain either a single species-tree or a set of subtrees
  • -pr_ab_matrix FILE β€” presence-absence matrix of loci coverage
  • -s FILE β€” PHYLIP/FASTA/NEXUS/CLUSTAL/MSF alignment file(s)
  • -p FILE β€” NEXUS/RAxML partition file
  • -g_stop_t NUM β€” stop after NUM species-trees were generated, or use 0 to turn this stopping rule off. Default: 1MLN trees.
  • -g_stop_i NUM β€” stop after NUM intermediate trees were visited, or use 0 to turn this stopping rule off. Default: 10MLN trees.
  • -g_stop_h NUM β€” stop after NUM hours (CPU time), or use 0 to turn this stopping rule off. Default: 7 days.
  • -g_non_stop β€” turn off ALL the stopping rules 😳
  • -g_query FILE β€” species-trees to test for an identical set of subtrees
  • -g_print β€” write all generated species-trees. WARNING: there might be millions of trees!
  • -g_print_lim NUM β€” a limit on how many species-trees get written
  • -g_print_induced β€” write the induced partition subtrees
  • -g_print_m β€” write the presence-absence matrix
  • -g_rm_leaves NUM β€” invoke reverse analysis for the complex datasets

🦠 GENOMIC EPIDEMIOLOGICAL ANALYSIS 🦠

  • --pathogen β€” apply the CMAPLE tree search algorithm if the sequence divergence is low, otherwise apply the IQ-TREE algorithm
  • --pathogen-force β€” apply the CMAPLE tree search algorithm regardless of how divergent the sequences are
  • --alrt <num_rep> β€” specify the number of replicates to compute SH-aLRT
  • --sprta β€” compute SPRTA (DeMaio et al., 2024) branch supports
  • --sprta-zero-branch β€” compute SPRTA supports for zero-length branches
  • --sprta-other-places β€” output the alternative SPRs and their SPRTA supports
  • -T <num_thread> β€” specify the number of threads used to compute branch supports (SH-aLRT or SPRTA)

⭐ TIME TREE RECONSTRUCTION ⭐

  • --date FILE β€” file containing dates of tips or ancestral nodes
  • --date TAXNAME β€” pull the dates out of the taxon names, after the last '|'
  • --date-tip STRING β€” tip dates as a real number or YYYY-MM-DD
  • --date-root STRING β€” root date as a real number or YYYY-MM-DD
  • --date-ci NUM β€” number of replicates for computing the confidence interval
  • --clock-sd NUM β€” standard deviation for the lognormal relaxed clock (default: 0.2)
  • --date-no-outgroup β€” exclude the outgroup from the time tree
  • --date-outlier NUM β€” Z-score cutoff used to remove outlier tips/nodes (e.g. 3)
  • --date-options ".." β€” extra options that get passed straight through to LSD2
  • --dating STRING β€” dating method: LSD for least square dating (this is the default)

and that's a wrap on the iqtree3-omp page, bestie πŸŽ€ this one ships as iqtree3-omp 3.1.1+dfsg, dated July 2026, and it lives at IQTREE3-OMP(1) β€” go read the manual and slay your phylogenies πŸ’–βœ¨

πŸ“¦ where this page comes from