Skip to content

Guides

Admixture Analysis (qpAdm)

Model your DNA as a mixture of ancient populations.

Your DNA carries traces of every population that contributed to your ancestry: Stone Age hunters, Bronze Age farmers, later migrants. Admixture Analysis (qpAdm) is the tool that estimates how much each one contributed.

Think of it as fitting puzzle pieces. You give qpAdm a target (your DNA file) and a list of candidate ancient populations. It then figures out what mixture of those populations best fits your DNA, and how confident it is in the answer.

What you give it

qpAdm needs three things from you. The dashboard walks you through each one.

  • Target: the DNA file you want to model. Usually that's your own raw DNA file.
  • Sources (also called left populations): the ancient populations you think contributed to the target.
  • References (also called right populations): a set of distant populations used as a calibration tool. The defaults work for almost everyone.

Reading the result

Each run returns three things: a percentage per source, an error bar, and a p-value. Together they tell you what mixture qpAdm found and how much to trust it.

The percentages

Each source you picked gets a percentage. That's qpAdm's estimate of how much of your DNA comes from that source. The percentages should add up to roughly 100%.

Each percentage also comes with an error bar (the +/- value). This is the uncertainty: a small error bar means qpAdm is confident, a wide one means it isn't.

  • Wide error bars usually mean your sources are too similar to each other for qpAdm to separate them cleanly.
  • Negative percentages or percentages above 100% mean the model is broken. Try fewer sources, or change the references.

The p-value

The p-value is a single number between 0 and 1 that scores how well the model fits.

Above 0.05 (the conventional cutoff): the data is consistent with your proposed mixture. The sources you picked could plausibly explain your DNA.

Below 0.05: the model rejects. Your sources or references probably aren't capturing the target's history.

Picking sources

Source choice is the biggest lever you have on qpAdm result quality. Pick well and you get clean answers. Pick badly and you'll get either a rejected model or one that looks reasonable but isn't.

Start small. Two or three sources is usually enough. For European Neolithic and Bronze Age targets, the classic combination is Anatolia_N (early farmers from Anatolia), WHG (Western Hunter-Gatherers), and Steppe_EMBA (Bronze Age steppe populations). Add a fourth source only if the simpler model rejects.

  • Older sources usually work better than modern ones. Mesolithic, Neolithic, and Bronze Age populations give cleaner splits than modern proxies.
  • Sources need to be distinguishable from each other. If two sources are very similar, qpAdm can't tell them apart and the error bars blow up.
  • Match your target's time depth. Don't try to model an Iron Age target with modern populations; the modern ones already contain the answer you're looking for.

All SNPs

By default qpAdm only looks at genome positions (SNPs) that are covered across every population in the run. This common-SNP set is the safe choice: every comparison happens on the same data.

All SNPs mode relaxes that. It uses every position covered in any population and fills in missing data with per-population averages. You get more statistical power, but the result can be biased if the missing data is not random.