---
title: "How to use Vahaduo with G25 coordinates (2026)"
description: "A step-by-step Vahaduo tutorial: where to paste your Global25 coordinates, how the Distance, Single, Multi and PCA tabs work, how to build a source panel, and how to read a fit distance without over-reading it."
canonical: https://www.ancestrify.io/blog/vahaduo-g25-tutorial
date: 2026-08-28
updated: 2026-10-10
author: "Ancestrify"
---

# How to use Vahaduo with G25 coordinates (2026)

Vahaduo is the free, browser-based tool most people reach for the moment they receive a Global25
coordinate row. It is fast, it runs entirely on your own machine, and it does three jobs well:
distance ranking, admixture fitting and PCA. It also has no guard rails, which is why the same tool
produces both careful analyses and confident nonsense.

This tutorial walks through it as of 2026. If you do not yet have a G25 row, start with
[What are Global25 coordinates?](/blog/what-are-global25-coordinates) and
[How to get your Global25 coordinates](/blog/how-to-get-global25-coordinates); nothing below works
on a simulated row.

## What you need

Two things, both plain text:

1. **A target** — your own coordinate row, one line: a label followed by 25 comma-separated numbers.
2. **A source panel** — the reference rows you want to compare against, one row per line in the
   same format.

Both must be in the **same form**, scaled or unscaled. Most published panels and most people's
targets are scaled; if you paste a scaled target against an unscaled panel you will get a distance
list that looks fine and means nothing. This is the mistake to check for first whenever results look
strange — [the full scaled-versus-unscaled story](/blog/g25-scaled-vs-unscaled), including how to
tell which form a mystery row is, has its own guide.

## The layout

Vahaduo's G25 views are a set of tabs over two text boxes. The **Source** box holds the reference
rows; the **Target** box holds the rows you want analysed. Everything else — the Distance, Single,
Multi and PCA tabs — reads from those two boxes. Nothing is uploaded; close the tab and it is gone.

Paste your source panel first, then your target, then choose a tab.

## Distance: the closest reference rows

The Distance tab sorts every source row by its Euclidean distance to the target across all 25
dimensions, nearest first. This is the most honest view in the tool, and the one to look at before
any admixture fitting: it tells you what your row is actually near.

Read it with two cautions. First, distances are only comparable within one panel; a distance of 0.03
to a Bronze Age population and 0.03 to a modern one are not the same statement, because the panels
differ in how their populations were averaged. Second, **nearest is not descended from** — the
closest row is the average that happens to lie nearest in a 25-dimensional space, which is a
similarity, not a genealogy.

Our free [G25 distance calculator](/lab/g25-distance) does the same computation against curated
era panels with the dates stated, if you want a reference to check your Vahaduo panel against.

## Single: one target, one mixture

The Single tab fits the target as a weighted mixture of the source rows: it searches for the
combination of source coordinates whose weighted average lands nearest your row, and reports each
source's percentage plus a **fit distance** — how far the best mixture still sits from you.

This is where most misuse happens, so three rules:

- **Fit distance falls as you add sources.** Offer thirty rows and the fit will be excellent
  whatever they are, because the algorithm has more freedom. A low fit with many sources proves
  nothing; a low fit with three or four well-chosen, era-coherent sources is a finding.
- **The sources decide the answer.** Leave a relevant population out and its share is redistributed
  to whichever rows are nearest, silently. Include two near-identical populations and the fit will
  split ancestry between them arbitrarily.
- **There is no p-value.** Vahaduo cannot reject a model. If you offer sources that make no
  historical sense, you get percentages anyway. Formal rejection is what qpAdm provides — see
  [qpAdm vs Global25](/blog/qpadm-vs-global25).

A practical panel for a first pass is four to eight populations from one era, chosen because they
plausibly precede the target and are distinct from one another. Then remove each one in turn and
re-run: a source whose share collapses to zero when a neighbour is present was never earning its
place.

## Multi: several targets at once

The Multi tab runs the same fit for every row in the Target box and tabulates the results. It is
useful for comparing family members, or your row against a set of reference individuals, on the
same panel. The same cautions apply to each row.

## PCA: seeing the space

The PCA tab plots the source and target rows on any two of the 25 dimensions. PC1 against PC2 shows
the broadest structure; later pairs show finer regional structure. This is the view for sanity
checks — a target that plots nowhere near the populations its admixture fit named is a sign the panel
is wrong, or the target is unscaled against a scaled panel.

Our free [G25 PCA viewer](/lab/g25-pca) plots your row on curated era views beside individual
ancient and modern samples, which is a useful complement: Vahaduo plots whatever you pasted, ours
plots a fixed reference you did not choose.

## Building a source panel

The quality of everything above depends on the panel. Some practical rules:

- **One era at a time.** Mixing Neolithic and medieval sources in one panel invites the fit to use
  a later population as a proxy for an earlier one, which produces fluent nonsense.
- **Prefer population averages built from several individuals.** A "population" that is one
  low-coverage sample is a noisy point. If you build averages yourself, the free
  [Average G25](/lab/average-g25) tool does it in the browser.
- **Keep sources distinct.** Two rows within a tiny distance of each other are one source with two
  names.
- **Write down the panel.** A percentage without the panel it was fitted against cannot be compared
  with anything, including your own next run.

[Ancestry Map](/g25), our paid Global25 analysis, applies exactly these rules: our analyst builds a
calculator around each customer's own row, era by era, and the report prints every population that
calculator was offered, used and unused, so the answer can be argued with. How that calculator is
built is in [Personalized G25 calculator](/blog/personalized-g25-calculator).

## Reading the fit distance

A rough working scale for scaled coordinates: a fit distance below about 0.02 with a small,
era-coherent panel is tight; 0.02–0.04 is ordinary; above that, either a relevant source is missing
or the target is not well described by that era's populations at all. Treat these as bands, not
thresholds — and remember the distance can always be driven down by adding sources, which is why the
panel size belongs next to every fit you quote. The calibrated bands, the typicality baseline and
the reasons lower stops being better are in [the fit-distance guide](/blog/g25-fit-distance-explained);
the panel-construction discipline behind them is in
[source selection and overfitting](/blog/g25-source-selection-overfitting).

## What Vahaduo cannot do

It cannot tell you whether a model is admissible, cannot estimate uncertainty on a percentage, cannot
tell a genuine row from a simulated one, and does not know which era its sources come from unless
you do. Those are not flaws in the tool; they are the boundaries of coordinate fitting. The free
[G25 Authenticity Check](/lab/g25-authenticity) covers the simulated-row problem, and
[How to read a Global25 report](/blog/understanding-global25) covers reading the numbers. The
terms are in the [glossary](/glossary).

## A five-minute routine

1. Confirm target and panel are both scaled.
2. Distance tab first — note the nearest ten.
3. Single tab with four to eight era-coherent sources; note the fit and the panel.
4. Remove each source in turn; keep only those that survive.
5. PCA tab on PC1/PC2 and PC3/PC4 as a sanity check.

Done properly, that is a defensible amateur analysis. Done with thirty sources and no era discipline,
it is a random number with a decimal point.
