---
title: "qpAdm vs ADMIXTURE and admixture calculators: what each measures, and when qpAdm is worth it"
description: "ADMIXTURE and admixture calculators describe structure and always return percentages; qpAdm tests an explicit model and can reject it. What each estimates, why papers run both, and when qpAdm is worth paying for."
canonical: https://www.ancestrify.io/blog/qpadm-vs-admixture-software
date: 2026-08-31T10:04:00+00:00
updated: 2026-10-19
author: "Andi Thomaj"
---

# qpAdm vs ADMIXTURE and admixture calculators: what each measures, and when qpAdm is worth it

Population-genetics papers routinely print both: the colourful stacked bars of
[ADMIXTURE](/blog/admixture-software-explained) and tables of [qpAdm](/qpadm) weights with
standard errors. Readers understandably treat them as two brands of the same thing, ancestry
percentages, and then cannot make sense of why the numbers differ or why the paper needed both.
They are not two brands of one thing. They are answers to different questions, and the
difference is the most useful thing an interested reader can internalise about method papers.

The same confusion reaches anyone with a raw DNA file. An admixture calculator will give you a
tidy list of percentages for free, in a browser, in seconds; [Ancient Ancestry](/qpadm), our qpAdm
analysis, is a paid, one-time purchase; and the obvious question is what the money buys. This page takes the methods
first (what ADMIXTURE, admixture calculators and qpAdm each estimate, why their numbers differ for
the same genome, and why papers run both), then the buying question: when a calculator is the
right tool, when qpAdm is, and when qpAdm is not worth paying for. It is written by someone who
sells the paid version, so it tries to be exact about where the free tool is the right choice,
because it often is.

## What each one estimates

**ADMIXTURE** (Alexander, Novembre & Lange 2009; heir to STRUCTURE) is *unsupervised description*:
given all genomes in the dataset and a chosen K, it infers K allele-frequency components and each
individual's proportions of them, jointly, by maximum likelihood. The components are properties
of the dataset: unlabelled, unanchored to any real population, and liable to change when the
sample changes.

**An admixture calculator** is description of the same kind, frozen and pointed at a single genome
([the full anatomy of them is here](/blog/what-is-an-admixture-calculator)). Two families are
common:

- **Cluster-based (ADMIXTURE-style, K components).** The tool holds K allele-frequency profiles,
  learned by clustering a reference set, and finds the mixing proportions of those profiles that
  maximise the likelihood of your genotypes. The output is K numbers that sum to 100%.
- **Coordinate-based (Global25 nMonte and similar).** Your genome is first reduced to a coordinate
  row in a principal-component space, and the tool finds the non-negative combination of reference
  rows that sits closest to yours, by Euclidean distance. The output is a set of percentages and a
  fit distance.

In both cases the optimiser is answering one question: *given these references, what proportions
come closest?* It is not asked whether the references are the right ones, or whether "closest" is
close enough to mean anything. A K = 6 solver will distribute every genome on Earth across its six
profiles, because that is the only thing it can do; an nMonte fit always returns a best
combination, and a distance of 0.02 against 0.04 measures how well the geometry closed, not
whether the story is true.

None of this is a defect; it is what an optimiser is. But it means a calculator **cannot say no**.
Give it a Yoruba genome and only European references and it returns a confident European
breakdown; give it a Sardinian genome and references that lack Neolithic Anatolians and it
spreads the farmer ancestry over whatever is nearest. Keep that missing failure mode in mind
whenever a calculator output looks precise.

**qpAdm** (Haak et al. 2015) is *hypothesis testing*: the analyst names an explicit model (this
target as a mixture of these named source populations, measured against these named outgroups)
and the method solves the [f4-statistic](/blog/f4-statistics-explained) system for the
proportions. Nothing is inferred from scratch; a proposed model is measured against the data and
[can fail](/blog/why-qpadm-models-get-rejected). What comes back is what a calculator cannot give:

- **A p-value for the whole model.** The proposed mixture is tested against a set of *right*
  populations (outgroups) using f4-statistics. If the pattern of shared drift in the target is
  incompatible with the mixture, the p-value falls below the chosen threshold (0.05 by convention)
  and the model is rejected; its weights are then not worth reading.
- **A standard error on every weight**, from a block jackknife across the genome, so a weight is a
  range rather than a point.
- **A Z-score on every weight**, so a source the data cannot distinguish from zero is visible as
  such, whatever its headline percentage.
- **A stated right set.** The outgroups are part of the model and are published with it, because
  changing them changes the answer. A weight without its right set cannot be evaluated by anyone.

The method is set out in [Understanding qpAdm](/blog/understanding-qpadm), and the three numbers
are read in [How to read qpAdm results](/blog/how-to-read-qpadm-p-value-z-score-standard-error).
A method that can fail is one whose passing means something, within limits: a model that passes
describes the target's ancestry relative to the sampled groups and that right set, and is not
proof that those groups ever met and mixed.

The one-line version: **ADMIXTURE and the calculators find structure; qpAdm tests stories.**

## Why the numbers differ for the same samples

A "steppe" bar in an ADMIXTURE plot and a Yamnaya-related qpAdm weight are different objects. The
bar measures affinity to an *inferred component* that is modal in steppe samples but built from
the whole dataset's variation; the weight measures the fitted contribution of an *actual sampled
population* within an explicit model. The bar moves when you add samples or change K; the weight
moves when you change sources or outgroups, and only the second comes with an SE and a test.
Neither is a distortion of the other; converting between them is a category error, the same one
[consumer calculator comparisons](/blog/why-admixture-calculators-disagree) run into, since a
calculator's output is a frozen projection onto components or coordinates, not a tested model.

## The same genome through both lenses

The difference is easiest to see side by side. Below is an illustration, with numbers invented
for the purpose, of what the two kinds of tool return for one genome. It is not a customer's
result.

**Calculator output (K = 6, cluster-based):**

```
Anatolian farmer        48.2%
Steppe pastoralist      31.5%
Western hunter-gatherer 12.1%
Iranian / Caucasus       5.9%
North African            1.4%
East Asian               0.9%
```

Six components, a clean sum, and no way to know whether the 5.9% Iranian-related figure is a
signal or a rounding of noise onto the nearest available profile. The 0.9% East Asian is almost
certainly the latter, but the tool cannot say so.

**qpAdm output for the same genome (illustrative):**

```
Sources: Anatolia_N + Yamnaya_Samara + WHG
p-value: 0.184    chi-square: 11.32    dof: 8    f4 rank: 2

Anatolia_N        0.512   SE 0.031   Z 16.5   95% CI 0.451 to 0.573
Yamnaya_Samara    0.339   SE 0.034   Z  9.97  95% CI 0.272 to 0.406
WHG               0.149   SE 0.026   Z  5.73  95% CI 0.098 to 0.200

Right set (11): Mbuti.DG, Ust_Ishim.DG, Kostenki14, MA1, Han.DG,
                Papuan.DG, Onge.DG, Karitiana.DG, Iran_N, Levant_N, EHG
```

Three sources, not six. The model was also run with a fourth source, CHG, standing in for the
calculator's Iranian-related component: its weight came back at 0.038 with SE 0.037, Z about 1.0,
and the three-source nested model passed at p = 0.184 on its own. So the fourth source was not
earning its place and was dropped. The North African and East Asian slivers have no counterpart
at all: the three-source model already fits, so nothing in the f4 pattern, measured against this
right set, called for them.

Both outputs describe the same genome, and 0.339 Yamnaya_Samara is not a corrected version of
31.5% steppe: one is the weight of a sampled population in a tested model, the other an affinity
to an inferred component. The calculator's numbers are a best fit among six profiles; the qpAdm
numbers are a tested claim with stated uncertainty, computed against eleven named outgroups, that
a reader can reproduce. Neither is "the truth". One of them can be argued with.

## Why papers run both, in a fixed order

The division of labour is deliberate and directional. ADMIXTURE (with PCA) comes first because it
is assumption-light: it shows the clusters, clines and outliers that suggest *which* models are
worth proposing, and flags contaminated or mislabelled samples. qpAdm comes second because it is
assumption-heavy and answer-strong: temporally coherent sources, a
[defensible right set](/blog/how-to-choose-qpadm-sources-and-outgroups#the-standard-right-sets), and
in return a testable claim with uncertainties. The 2025 audit literature put a number on the
pairing, for one kind of history: on simulated admixture-graph histories, corroborating distal
qpAdm results with PCA and unsupervised ADMIXTURE brought the false-discovery rate of the screen
to about 0%. The two methods fail differently, so their agreement is worth more than either alone,
although on landscape-like histories, where ancestry varies continuously across space, agreement
between them is agreement about a gradient, not proof of a discrete mixture event.

The same order, incidentally, is how a careful hobbyist should work:
[exploration first, testing second](/blog/best-admixture-calculator), with the
[free descriptive tools](/lab) playing ADMIXTURE's role and a
[formal model](/qpadm) playing qpAdm's.

## Which answers your question

| Your question | The right method |
|---|---|
| "What structure is in this dataset?" | ADMIXTURE or PCA: description |
| "Which populations does my genome resemble?" | Descriptive tools: [distances](/lab/g25-distance), [PCA](/lab/g25-pca) |
| "Can my genome be explained by sources A + B?" | qpAdm, and it may say no |
| "Is source C *required*, or is A + B enough?" | qpAdm nested models ([how they are read](/blog/understanding-qpadm#nested-models-is-the-extra-source-earning-its-place)) |
| "What percent am I of component X?" | ADMIXTURE-style tools answer it: [read what the number is](/blog/how-accurate-are-admixture-calculators) before quoting it |
| "A claim I would defend in an argument" | qpAdm, every time: [that is what the p-value is for](/blog/how-to-read-qpadm-p-value-z-score-standard-error) |

For your own genome, the practical translation: descriptive percentages are available free and
instantly ([era-scoped calculators](/lab/admixture) are the modern version); the tested statement
(explicit ancient sources, stated outgroups, p-value, per-source SEs and z-scores) is
[Ancient Ancestry](/qpadm), run against [AADR v66](/blog/aadr-allen-ancient-dna-resource-explained).
Candidate sources come from a pool curated for your declared origins and era before any model
runs; our analyst tests models from that pool and re-tests the survivors; and a person reviews the
candidates, then chooses and approves the one model per era that is published.

## Is qpAdm worth it?

It depends on what you want the result for, because the money buys a different kind of statement,
not a better version of the same one. If you want a quick, free, enjoyable picture of what your
genome resembles, use a calculator and keep your money. If you want a claim you can defend, with
the numbers that let someone else check it, a formal model is the only tool that produces one;
Ancient Ancestry, our qpAdm analysis, starts at 29.99 EUR one-time, and the model it publishes has been reviewed and
approved by a person.

### When a calculator is the right tool

Most of the time, honestly. A calculator is the right instrument when:

- **You are exploring.** You want to see which references your genome leans toward, try five
  different reference sets, and get a feel for the landscape. Speed matters more than rigour.
- **The question is about resemblance, not descent.** "Which modern populations am I closest to"
  is a distance question, and a coordinate tool answers it directly and well.
- **You want it free and instant.** Ancestrify's in-browser [Global25 calculators](/lab/admixture)
  run from your coordinates at no cost and with no account, and the rest of the [lab](/lab) is free
  as well (the tools that run on our servers ask for a free account). Nobody should pay for a
  formal model before they have played with the free version.
- **It is fun.** There is nothing wrong with that. A breakdown that says 12% Western Hunter-Gatherer
  is a pleasant thing to look at, provided nobody mistakes it for a finding.

### When qpAdm is the right tool

qpAdm earns its cost when you want to **defend a claim**. Some examples of claims:

- "My genome cannot be modelled without a steppe-related source." A calculator will happily give
  you 0% steppe if the references make that closest; qpAdm will tell you whether the model without
  a steppe-related source is rejected, and by how much.
- "The Iranian-related component in my breakdown is not an artefact of the reference set." In a
  qpAdm model, a Z-score of 1.1 on that source says the data cannot distinguish its weight from
  zero; a Z-score of 6 says they can.
- "These percentages are compatible with the data at a stated level of confidence." Only a method
  with a p-value can say that.

If you plan to post a result on a forum, compare it to a published paper, or argue about it with
somebody who knows the method, you need the numbers that make the result checkable. That is what
[Ancient Ancestry](/qpadm) provides for each of its two eras ("Hunter-Gatherer and Neolithic Farmer"
and "Classical Antiquity"): the p-value and the model's other fit figures; each source's panel
label, sample count, weight, SE, Z-score and 95% confidence interval; and the full right set with
sample counts. All of it is on screen in the report's Your model view, beside maps and two rendered
films, and [The model record explained](/blog/qpadm-model-record-explained) walks through how to
read it.

### The cost comparison, plainly

| | Admixture calculator | Ancient Ancestry (qpAdm) |
|---|---|---|
| Price | Free | One-time: Base 29.99, Medium 39.99, Deep 49.99 or Perfect 59.99 EUR |
| Returns | Percentages, sometimes a fit distance | Per era: a p-value and fit figures, weight, SE, Z and 95% CI per source, the right set with sample counts |
| Can reject a model | No | Yes |
| Who builds it | Nobody; it runs | Our analyst tests models from a pool curated for your declared origins and era; a person approves the one that is published |
| Reference | Whatever the tool ships | AADR v66, merged with your genotypes |
| Publish bar | None | A house convention: p above 0.05, every source with Z above 3 in absolute value and SE below 0.10 |

Every tier gets the same report, the same maps and videos, the same model record and the same
publish bar ([what each price covers](/blog/where-to-buy-qpadm-analysis#what-it-costs)). The bar is
a house convention, not a validated criterion, and what it says is narrow: with every weight
positive, |Z| > 3 places each weight more than three standard errors from 0 and from 1.

### When qpAdm is not worth paying for

This is the part a seller usually leaves out. qpAdm is **not** worth paying for if:

- **Your file has very low coverage.** Standard errors depend above all on how many markers
  survive the merge with the reference panel. A sparse file can leave every SE above the bar
  whatever the model, and no search will shrink an error the file has already set. Run the free
  [Raw DNA File Check](/lab/file-check) first; if it says the file cannot support qpAdm, believe it
  and keep your money.
- **Your question is recent genealogy.** qpAdm models ancestry in terms of populations thousands of
  years old. It cannot tell you whether a great-grandparent was Irish or Italian, and it cannot find
  relatives. That is a matching question, not an admixture one.
- **You expect a single-number answer.** A qpAdm result is a range with a test attached. If what
  you want is "I am 34% steppe", a calculator will give you that number with fewer caveats, and it
  will be exactly as meaningful as any other single number.
- **You want percentages at a fine geographic grain.** A qpAdm model does not place ancestry inside
  a modern country. A source labelled Anatolia_N is a reference group from a set of Neolithic sites,
  not a place anyone in your family lived.
- **You have Global25 coordinates and want the coordinate view.** That is a different product
  answering a different question; [qpAdm vs Global25](/blog/qpadm-vs-global25) sets out which one
  fits which question.

If none of those applies, try the free [AdmixTools 2 Lab](/lab/admixtools) first, which runs real
qpAdm on the reference panel's populations, to see how a rejection feels, and look at the
[demo](/demo) to see the shape of a full report. If that is the kind of answer you want, the
analysis below is the next step.

Terms used here are defined in the [glossary](/glossary).

## References

- Alexander, D. H., Novembre, J. & Lange, K. (2009). Fast model-based estimation of ancestry in
  unrelated individuals. *Genome Research*, 19(9), 1655 to 1664.
- Flegontova, O. et al. (2025). [Performance of qpAdm-based screens for genetic admixture on graph-shaped histories and stepping stone landscapes](https://doi.org/10.1093/genetics/iyaf047). *Genetics*, 230(1), iyaf047.
- Haak, W. et al. (2015). Massive migration from the steppe was a source for Indo-European
  languages in Europe. *Nature*, 522, 207 to 211.
- Harney, É., Patterson, N., Reich, D. & Wakeley, J. (2021). Assessing the performance of qpAdm:
  a statistical tool for studying population admixture. *Genetics*, 217(4), iyaa045.
- Lawson, D. J., van Dorp, L. & Falush, D. (2018). A tutorial on how not to over-interpret
  STRUCTURE and ADMIXTURE bar plots. *Nature Communications*, 9, 3258.
