Skip to content
Ancestrify

Formal population genetics · Updated 14 September 2026

qpAdm ancestry analysis from your raw DNA

Upload your raw DNA and get a formal admixture model, with the p-value, standard errors and z-scores that tell you how much to trust it.

Order a qpAdm analysisCompare Global25
Analysis workspace

Formal model report

Anatolia_N
0.52 · SE 0.031 · Z 16.8
WHG
0.11 · SE 0.028 · Z 3.9
Yamnaya_Samara
0.37 · SE 0.034 · Z 10.9
p = 0.21 · model not rejected · illustrative

What qpAdm is

qpAdm is a method from the ADMIXTOOLS package (Haak et al. 2015; Harney et al. 2021) that tests whether a target genome can be written as a mixture of a chosen set of "left" source populations. The test is judged against a fixed set of "right" outgroup populations using f4-statistics: if the target's relationship to the outgroups is not reproduced by the proposed sources, the model fails.

The output is a set of admixture weights, each with a standard error, and a p-value that can reject the model outright, the property an ethnicity estimate lacks. Ancestrify runs the ADMIXTOOLS 2 implementation, qpadm(), on your own genotypes merged into the Allen Ancient DNA Resource (AADR) v66.

How to get a qpAdm analysis

Five steps, and only the first two are yours. Everything after the upload runs on our infrastructure and through an analyst's hands.

  1. Upload your raw DNA export, 23andMe, AncestryDNA, MyHeritage, FamilyTreeDNA, LivingDNA, or a whole-genome .vcf / .vcf.gz (which files are accepted).
  2. Pick the depth, four tiers, one report, one quality check; a deeper tier is a longer search, never a different standard.
  3. We merge your genotypes with the AADR v66 reference panel , converted, filtered and intersected on our own servers.
  4. An analyst composes, runs and checks the models by hand, no automated rotation, because the best-scoring model is frequently the wrong one.
  5. Your report publishes with the weight, standard error and Z-score of every source, the model p-value and the full right set, and, in its Reading view, the analyst's written explanation of why you received this result and the model record (chi-square, degrees of freedom, confidence intervals, panel labels and sample counts).

Afterwards, the Ancestry Workbench lets you run your own models on the same merged dataset. New to the method? Start with the buyer's guide and how to read a p-value, Z-score and standard error.

What you get

Price
from €29.99 to €59.99, one-time, depending on the depth tier you choose. No subscription.
Method
qpadm() from ADMIXTOOLS 2, run in R on our infrastructure
Reference panel
~23,265Allen Ancient DNA Resource (AADR) v66, ~23,265 samples, ~6,015 population labels
Statistics reported
Model p-value; per-source weight, standard error, z-score and 95% confidence interval; the right-population set used, with sample counts
Model record
The run record in the report's Reading view: chi-square, degrees of freedom, f4 rank, minimum SNPs per f4, merged SNPs, jackknife blocks, every source's panel label, sample count and 95% confidence interval, and every outgroup's sample count, free at every tier
Analyst explanation
A written, reviewed explanation of why you received this result, published with the model, what each source is, why the proportions look as they do, and what a label does not mean
Eras
49 sourcesTwo, Hunter Gatherer and Neolithic Farmer, and Classical Antiquity, across 49 curated source populations
Catalog
199 countriesEvery sovereign state, 199 countries and 1,115 regions, for both qpAdm and Global25
Accepted files
.txt, .csv, .zip or .gz raw-data exports up to 50 MB, or a whole-genome VCF up to 1 GB (+€10)
Also included
Ancestry maps and server-rendered cinematic ancestry videos
Data location
European Union (Germany and Finland), under GDPR

Why qpAdm rather than a coordinate fit

A coordinate fit always lands somewhere
qpAdm can reject the model

Most consumer ancestry tools fit your sample to a set of reference populations and return whatever weights fit best. Those weights always exist, whether or not the model makes any sense, there is no output that says "this combination cannot have produced you".

qpAdm works differently. It operates on allele-frequency statistics against a set of outgroup populations, and it tests a model rather than merely fitting one. The p-value is the point: it is what allows a proposed ancestry model to be rejected. A standard error on each proportion tells you how tightly that number is pinned down, and a z-score tells you whether a source is contributing at all.

That is the entire reason this product costs more and takes longer than our Global25 analysis. You are paying for a model that could have failed and did not.

Choose how hard we search

Four depths, one report

Every tier delivers the same report, and every published model passes the same strict quality check before we will put our name on it. What changes is how hard we search , how many models a human analyst builds, compares and stress-tests before publishing your strongest one.

  1. Base29.99

    Your strongest straightforward model, found, checked, published.

    The focused search

    a few hours of analyst time · 15 to 25 hand-built models

  2. Medium39.99

    We keep searching past the first model that works, until a clearly better one stops turning up.

    The search past good enough

    about one working day of analyst time · 50 to 70 hand-built models

  3. Deep49.99

    Every plausible version of your ancestry tried, the model that survives being pushed.

    The full sweep

    several working days of analyst time · 80 to 120 hand-built models

  4. Perfect59.99

    The search ends only when nothing beats it, the strongest model your DNA can give.

    The exhaustive search

    a week or more of analyst time · 120 to 200 hand-built models

Two things are true of every tier. The quality check never moves: a deeper tier is never a different standard, only a longer search past the first model that passes it. And deeper tiers buy certainty, not complexity: the hardest-won models are often the simplest ones, and the extra days go into proving that nothing better exists.

Illustrative, not a customer's result

A worked example

Take an illustrative present-day Balkan genome and ask whether it can be written as a mixture of three ancient sources: Anatolian Neolithic farmers, Western hunter-gatherers and Yamnaya steppe herders, judged against eight distant outgroups. qpAdm returns one line per source and one p-value for the whole model:

  • Anatolia_N: weight 0.52, standard error 0.031, Z 16.8
  • WHG: weight 0.11, standard error 0.028, Z 3.9
  • Yamnaya_Samara: weight 0.37, standard error 0.034, Z 10.9
  • Model p-value 0.21: the data do not reject the mixture. Every Z is above 3 and every standard error below 0.10, so the model passes the publication bar.
  • The two-source version without WHG returns p = 0.004: rejected. That rejection is the method working, and it is what a percentage calculator can never tell you.

The same run in R with ADMIXTOOLS 2, for anyone who wants to reproduce it on the merged bundle the Ancestry Workbench lets you download:

library(admixtools)
f2 <- f2_from_precomp("merged_aadr_v66_f2/")
fit <- qpadm(
  f2,
  left  = c("Anatolia_N", "WHG", "Yamnaya_Samara"),
  right = c("Mbuti.DG", "Ust_Ishim.DG", "Kostenki14", "MA1",
            "Han.DG", "Papuan.DG", "Karitiana.DG", "Onge.DG"),
  target = "Sample1"
)
fit$weights   # weight, se, z per source
fit$popdrop   # nested models and their p-values
fit$rankdrop  # rank test

No R installed? The free AdmixTools 2 Lab runs the same method over the public reference panel in your browser, and the step-by-step tutorial walks every stage from the raw file to the p-value.

Every model is built and checked by hand

We built automated model rotation, the approach of screening many candidate source combinations and surfacing whichever reaches an acceptable p-value, and then removed it from the product. Measured against real targets it selected models that scored well and were wrong: with sources that carry the same ancestral stream, the search has enough freedom to shrink the residual while the weights drift into nonsense.

So a person does that step. Your model is selected, run and reviewed before it is published to your report. It is slower, and it is the reason the number you are given is worth reading. If you want to run a rotation anyway, the Ancestry Workbench fits one for you as a batch of real genotype-direct runs, and labels the rows as what they are: your own hypotheses, not our published finding.

Then run your own models

The Ancestry Workbench puts the same engine in your hands, with or without a report: compose your own qpAdm models against your own merged dataset, your sample as the target, sources and outgroups chosen from the same panel, and pay only for completed runs, about €0.004 each, from a prepaid balance from €9.99 that never expires. A finished report's sample attaches as a kit for free. You get the real output, including the rejections; a model qpAdm refuses is a finding, not a bug.

Prefer your own toolchain? Every Ready kit includes the merged dataset itself, your kit combined with the AADR panel, in standard EIGENSTRAT format, ready to download.

Running a company or a lab that handles many samples? The same merge and engine are available as an API, with terms agreed per company.

Learn the method first

You can try the formal machinery before buying anything. The AdmixTools 2 Lab runs real f-statistics, qpWave, qpAdm and admixture-graph fitting against a reference panel, free, in the browser, no R installation and no genotype panel to source. Expect rejections; that is the method working.

Understanding qpAdm explains how to read a p-value, a standard error and a z-score, why outgroup choice decides whether a model is worth anything, and what to do when one is rejected. The model record explained reads every other number the report publishes, chi-square, degrees of freedom, confidence intervals and the outgroup set. qpAdm vs Global25 sets out when each method is the right instrument, and the glossary defines the vocabulary.

Questions

  • Is this real qpAdm, or an approximation?

    It is real qpAdm. We run the qpadm() function from ADMIXTOOLS 2, the same package used in published ancient-DNA research, against your genotypes merged with the Allen Ancient DNA Resource. It is not a coordinate-fitting method dressed up in qpAdm language.

  • How is qpAdm different from Global25 and nMonte percentages?

    They answer different questions. Global25 and nMonte fit your coordinate to a weighted combination of reference coordinates, and will always return some percentages. qpAdm works from allele-frequency statistics and outgroups, and can reject a model outright: it returns a p-value that tells you whether the proposed ancestry model is compatible with the data at all. Percentages from a coordinate fit are estimates; qpAdm output is a statistical test.

  • What do the four depth tiers change?

    How hard we search. Every published model, at every tier, has to pass the same strict quality check before we will put our name on it, and the report itself is identical at every tier. What a deeper tier buys is a longer, harder hunt for your best model: Base (€29.99) is the focused search, a few hours of analyst time. Medium (€39.99) keeps searching past the first model that works, about a working day. Deep (€49.99) is the full sweep of every plausible combination, several working days. Perfect (€59.99) is the exhaustive search, ending only when nothing we try beats the model on the table, a week or more.

  • Why do the tiers cost what they cost?

    Because qpAdm is not a button. Each model is composed, run and audited by hand against the ancient reference panel, and a longer search means more models to build and more reference sets to re-test them on, roughly 15 to 25 models at Base, 50 to 70 at Medium, 80 to 120 at Deep and 120 to 200 at Perfect. You are paying for analyst hours, from a few at Base to a week or more at Perfect.

  • Which statistics do you actually show me?

    For each era you get the model's p-value, and for each source population its weight, its standard error and its z-score, alongside the set of right (outgroup) populations the model was run against. The report's Reading view then publishes the model record behind those numbers: chi-square and degrees of freedom, the f4 rank, the minimum SNP count per f4 statistic, the merged SNP count, the jackknife block count, each source's panel label, sample count and 95% confidence interval, and each outgroup's sample count. Those are the numbers needed to judge a model rather than just read it.

  • Which reference dataset do you use?

    The Allen Ancient DNA Resource (AADR) v66, roughly 23,265 samples across roughly 6,015 distinct population labels. We operate the merge ourselves: your file is converted, filtered of indels and strand-ambiguous SNPs, and intersected against the panel with Poseidon's trident before any model is run.

  • Which files can I upload?

    A raw-data export from a consumer testing company, 23andMe, AncestryDNA, MyHeritage, FamilyTreeDNA and similar, as a .txt, .csv, .zip or .gz file up to 50 MB. We validate the file by its actual content rather than by vendor, so exports that follow the usual microarray text layout are accepted even when the company is not named here. Sequenced your whole genome (tellmeGen, Dante Labs, Nebula)? Upload the VCF instead, up to 1 GB, +€10, and we convert it to the reference panel's markers ourselves.

  • Do I get results instantly?

    No, and deliberately not. Merging your genotypes against the AADR panel is a heavy job that runs on our own infrastructure, and your model is then built and checked by hand before it is published. A qpAdm report is reviewed work, not a page that renders the moment you pay.

  • Can I verify the model myself?

    Yes, and the report is built so you can. Every qpAdm model publishes its p-value, the weight, standard error and z-score for each source population, and the full right (outgroup) set it was run against, all of them, behind a Show all control rather than a truncated sample. The right set is what decides whether a qpAdm model means anything, so withholding it would make the result unfalsifiable. With the panel version (AADR v66) and those inputs you have everything needed to re-run the model in ADMIXTOOLS 2 yourself, and the Reading view shows the exact panel label, sample count and 95% confidence interval of every source and the sample count of every outgroup.

  • Can I download my qpAdm results?

    Not as a document. The report is on screen, and its Reading view shows the model record behind every published era: the fit block (p-value, chi-square, degrees of freedom, f4 rank, SNP counts and jackknife blocks), every source with its panel label, sample count, weight, standard error, z-score and 95% confidence interval, and the ordered outgroup set with sample counts, together with the analyst's written explanation. There is no PDF and no text export of the record. What does download from the report are the share cards and the ancestry videos, and the merged EIGENSTRAT dataset itself comes with the Ancestry Workbench, where your report's sample attaches as a kit for free.

  • Why is a person involved at all?

    Because automated model search is the part of qpAdm that goes wrong. We built automated rotation, measured it, and removed it: rotating large numbers of candidate models has a high false-discovery rate, so the best-scoring model is frequently not the right one. Selecting and checking each model by hand is a deliberate design choice, not a missing feature.

  • Can I run qpAdm myself?

    Yes, in the Ancestry Workbench. It runs on a prepaid balance from €9.99 that never expires, and every completed qpAdm run draws about €0.004 from it; failed runs are never charged. Your sample is the target, you choose the source and outgroup populations from the merged panel, and you get the real statistics back: the p-value, weights, standard errors and z-scores. It also fits rotation batches and Fst distance, and a finished report's sample attaches as a kit for free. Expect rejections, qpAdm saying no to a model is the method working.

  • Can I download the merged dataset itself?

    Yes, from the Ancestry Workbench, where the sample of a finished report attaches as a kit at no cost. You get the exact merged genotype bundle your report was computed from, your kit combined with the AADR panel, in the standard EIGENSTRAT format (.geno/.snp/.ind), ready for ADMIXTOOLS 2 or any compatible toolchain on your own machine. It is a multi-gigabyte archive; download links are short-lived and downloads are metered.

  • Which countries and populations does the catalog cover?

    Every sovereign state, 199 countries and 1,115 regions, for both qpAdm and Global25. The qpAdm source populations themselves (49 across the two eras) each have a public page on the Ancestry populations directory describing who they were and how they sit in a model.

  • Where is my data stored?

    On EU infrastructure, in Germany and Finland, under GDPR. Your raw file is processed only for your own analysis, you can delete it at any time, and full account deletion and data export are self-service.

Everything about qpAdm on Ancestrify

from €29.99 to €59.99 · one-time analysis

Bring your raw DNA into a tested model.

Your genotypes are merged against AADR v66, then the model is built and checked by hand before it is published to your private report.

Ancestrify

Combining cutting-edge genomic science with rich historical records to map your ancestry across generations and continents.


© 2026 Ancestrify. All rights reserved. · Ancestrify is a trading name of Andi Thomaj, a sole trader registered in Tiranë, Albania · NUIS M61725001N
Card payments processed by POK Payments (RPay Ltd)VISAMASTERCARD