Tools · a second opinion on a report you already hold
Paternity Report Check
What does your paternity report say if the father could be his brother?
A paternity report compares the tested man with a random, unrelated man. The question a family brings is often a different one: what if the father is his brother, his father, his uncle or his cousin? The per-locus numbers already printed on the report answer that too, without any extra data, and exactly under the assumptions listed below (no theta correction, a mother unrelated to both men, no mutation). This page does the arithmetic, shows every step, and hands you a certificate you can redo on a calculator.
This does not say who the father is. It says how strongly the numbers on your report tell the tested man apart from one named untested relative, under stated assumptions. The way to settle it is to test the relative too, or to ask the lab for a statistic against him: some labs report one when told a relative could be the father (Cellmark, for one, says its report then quotes "the likelihood of the tested man being related as the father rather than being related as a close relative").
Nothing you type leaves this browser. No request carries it, nothing stores it, and it never goes into the address bar. The page loads like any other: the site keeps cookieless page counts (which page, the hour, the referring site) and loads Cloudflare's analytics beacon, as its privacy page describes. Neither carries anything you type; the report itself stays on your device.
Step 1
Paste the table from your report
Copy the table of loci from the report (from a PDF or a web page), with its header row if it has one, and the combined index and probability lines under it. Or start from an empty table and type it in.
Step 2
Check what was read
This is what the page will compute from. Every cell can be edited. Nothing is computed until you confirm it matches the paper.
Step 3
Six questions about the family
Each question is a situation that stops or changes the relative figure. A yes stops it, because the page cannot vouch for the figure there (for an identical twin the answer is exactly 1).
Separately
Two tested men, one child
When both men have been tested (two brothers, or a man and his father, both "not excluded"), the relative formula is the wrong tool: their actual DNA is known. Divide one man's index by the other's at each locus tested for both, and multiply. In a trio each ratio is a ratio of the two men's chances of passing on the child's paternal allele, so the allele frequencies cancel out.
How to check it yourself
Every figure here is one calculator step on a number printed on your report. For each locus with index PI:
against a brother, father or son: 2 × PI ÷ (PI + 1)
against a half-brother, uncle, grandfather or nephew: 4 × PI ÷ (PI + 3)
against a first cousin: 8 × PI ÷ (PI + 7)
Multiply the results over the loci, leaving out the rows the page lists as not used (Amelogenin, any Y-chromosome marker, and one locus of each linked pair). That product is the likelihood ratio. For the arithmetic check, multiply the printed indices themselves and compare with the printed combined index. If a printed index has d decimal places, the true value it stands for is anywhere within half a unit in the last place either side, which is why the page reports intervals.
A worked row: an index of 1.85 gives 2 × 1.85 ÷ 2.85 = 1.298 against a brother. However large an index is, 2 × PI ÷ (PI + 1) stays below 2, so no locus can count for more than a factor of 2 against a brother, 4 against a half-brother, or 8 against a first cousin.
Why the formula is true
Suppose the real father is a relative R of the tested man. At any one locus, the allele R passed to the child is, with some probability k, a copy of one of the tested man's own two alleles inherited from a shared ancestor, picked at random; otherwise it is an allele from the population, as a stranger's would be. For a full brother, father or son, k is 1/2; for a half-brother, uncle, grandfather or nephew, 1/4; for a first cousin, 1/8. (k is twice the kinship coefficient of the two men.)
The probability of the child's and mother's results, given who passed on the paternal allele, is a straight average over where that allele came from. So it splits the same way: k parts "as if the tested man were the father" and 1 − k parts "as if a stranger were". Divide through by the stranger's probability, which is what the lab's index does, and the likelihood ratio of the tested man against R at one locus is
PI ÷ (k × PI + 1 − k)
No allele frequencies appear: they are already inside PI. Across loci that are inherited independently the ratios multiply. None of this is new. Morris, Garber, D'Autremont and Brenner set it out in 1988 as the avuncular index, the likelihood ratio that the tested man is the child's paternal uncle (so that his brother is the father) rather than unrelated: "AI = (X+Y)/2Y = (PI+1)/2", with "(PI+3)/4" for a second-degree relative. The quotient PI ÷ AI, they noted, tests the tested man as father against the tested man as uncle, which is the figure this page computes. They also made the point that sits under this whole page: "the cumulative AI is not a simple function of the cumulative PI".
Read the other way, the same identity gives the figure this page shows for a report that excludes the tested man: how much the numbers favour each relative over a stranger, k × PI + 1 − k per locus, which for a brother is Morris's avuncular index itself.
It is checked three ways in this project, none of which trusts the others.
- The independent checker, a separate program that imports nothing from this page, re-derives the formula by listing every possible genotype of everyone untested in the family tree and adding up exact fractions, for all eight relatives named here. It agrees exactly, and with the wrong k for each relative it disagrees, which shows the check can fail.
- The R package forrel (version 1.10.0, by Magnus Dehli Vigeland), an engine this project did not write, computed the likelihood ratio against fourteen kinds of relative in 1,344 synthetic cases, trios and duos. The formula matches it to within about 4 parts in 1015, which is rounding. The five relationships beyond the eight named here (among them double first cousins, at k = 1/4) match too.
- The bench below recomputes the figure the long way, from the brother's possible genotypes, in every simulated family.
Outside its assumptions the formula stops being exact, and the same cross-check measured how far. In a small control (four families, nine relatives) with a mutation rate of 0.005 per transmission, it was off by up to 34% under one of the mutation models forrel takes from its companion package pedmut (the "equal" model) and up to 7.9% under another ("proportional"). Mutation-handled loci are why the page shows every figure with and without them.
What a pass proves, and what it does not
- A pass on the arithmetic certificate proves that the printed per-locus indices multiply, within their rounding, to the interval shown, and whether the printed combined index is inside it. It says nothing about whether the DNA was typed correctly, whose sample it was, or which allele frequencies the lab used.
- A pass on the relative certificate proves that the relationship named is the one k stands for, that each locus ratio is PI ÷ (k × PI + 1 − k) of the printed index, that the product is what is shown, that every usable row of the table went into it except one locus of each linked pair, and that no non-autosomal or unrecognised row did. It proves nothing about the assumptions: an unrelated mother, no theta correction, one named relationship, an untested relative. If one of those does not hold, the certificate says nothing about whether the figure is right, however green it is.
- A likelihood ratio is not a probability that the tested man is the father. It becomes one only with a prior, which is a judgement about the case, not a genetic fact. That is why the page never prints a percentage without the prior beside it.
Deliberate limits
- No figure from a combined index alone. The figure against a relative depends on how the combined index is spread across the loci: 20 loci with an index of 2 each give a combined index of 1,048,576 and a likelihood ratio of 315 against a brother; 6 loci with an index of 10 each give 1,000,000 and 36. Morris and colleagues made the same point in 1988 with six loci whose indices always multiplied to 64: the ratio of "father" to "uncle" ran from 5.61 down to 0.89 depending on how the 64 was spread. If your report prints only the combined index, ask the lab for the per-locus table.
- Identical twins: exactly 1. They carry the same DNA at these loci. No standard paternity test can tell them apart.
- A mother related to the tested man, or to the relative: refused. The formula assumes her alleles are independent of theirs.
- A relative who has already been tested: refused here. Use the two-men panel, which uses his actual results.
- A theta (population substructure) correction: refused. This project has not checked the relative formula under a theta correction (forrel, the engine it was cross-checked against, could not compute that case), so the page does not certify a figure when the report says one was applied.
- Double relationships and inbred families: refused. A double relationship changes k (double first cousins have k = 1/4, the same as a half-brother), and inbreeding breaks the formula itself. The page will not guess which applies.
- Y-chromosome markers, Amelogenin and X markers: never multiplied in. A Y marker is passed unchanged from father to son, so the tested man, his brother, his father and his son all carry the same one.
- Linked loci: one of each pair set aside, both figures shown. Two loci close together on one chromosome are not inherited independently between relatives. Which locus is set aside follows a fixed rule that never looks at the direction it moves the answer: keep the locus where the report excludes the tested man (an index of 0), or else the one the lab handled as a mutation, if only one of the pair is such (it says the most about a relative); otherwise keep the one found on more kits, or, when both are on the same kits, the first in Butler, Hill and Coble's table. The page shows the other choice too, and says so in the headline when the other choice, or a different choice at only some of the pairs, reverses which man is favoured. On a report that excludes the tested man, the figures against a stranger use the fixed rule only. The pairs, with their published recombination fractions (the chance that one transmission from parent to child separates them; 0.5 would be fully independent): vWA and D12S391 (0.1172), D5S818 and CSF1PO (0.2522), D21S11 and Penta D (0.3568), SE33 and D6S1043 (0.044), Penta E and FESFPS (0.181), D1S1656 and F13B (0.3412). The values are Phillips and colleagues' 2012 estimates as reproduced by NIST authors Butler, Hill and Coble. A pair counts as linked here below 0.40. That threshold is a choice, but no pair on these kits falls between 0.357 and 0.464 (the lowest of the values for pairs treated as unlinked, three of which were estimated here from a public genetic map because no published figure was found), so any cutoff in that gap gives the same list. A lab's combined index rightly multiplies every locus, because against an unrelated man linkage does not matter; against a relative it does, so the figure here can use fewer loci than the lab's own list.
- Loci the lab handled as mutations: kept in, and shown without. The lab multiplied them into its own combined index, so the headline figure keeps them too. At such a locus the index comes from the lab's mutation convention, the formula is no longer exact (see above), and the convention can decide which man the report favours, so the figure without them is always shown beside it.
- Not handled at all: Y-STR-only tests, SNP tests, prenatal tests, ancestry-site shared-centimorgan results, siblingship or grandparentage reports as input, and relatives of the mother. Those use different mathematics.
What it shows on realistic reports
Before trusting a figure like this, it is worth knowing what it usually says. The bench simulates families on real allele frequencies (the NIST 1036 U.S. population data, all four groups combined), computes each report's per-locus indices exactly, and runs this page's formula on them. Every simulated case also recomputes the figure the long way, by summing over the brother's possible genotypes, and the two agree to within about 4 parts in 1015.
When the tested man is the father
| Loci on the report (used here) | Trio: figure against a brother, median (5th to 95th percentile) | Trio: below 100 | Duo: median (5th to 95th) | Duo: below 100 |
|---|---|---|---|---|
| 15, Identifiler (14 used) | 238.4 (96.01 to 573.2) | 5.77% | 51.72 (15.73 to 159.7) | 82.9% |
| 20, the CODIS core (18 used) | 1,119 (394.7 to 3,046) | 4 in 50,000 | 157.2 (40.41 to 579) | 29.2% |
| 22, adding Penta D and Penta E (19 used) | 1,917 (672.6 to 5,268) | none of 50,000 | 244.8 (62.05 to 910.9) | 14.0% |
So for a true father, a modern trio report stays strong against his brother: in 50,000 simulated families with 22 loci, the figure never fell below 100. Duo reports, with no mother tested, are much weaker, and older 15-locus duos usually land below 100. That is the unglamorous main result, and it is the honest thing to know before reading your own figure: a figure in the hundreds or thousands against a brother is ordinary for a true father.
When his brother is the father
Most reports then exclude the tested man outright. In the small share that still read as proof against a stranger (not excluded, combined index 1,000 or more), the figure against the brother is usually small:
| Loci, and report type | Brother-fathered reports that read as proof | Their figure against the brother, median | Of those, figure below 10 | Figure of 100 or more, as a share of all brother-fathered cases |
|---|---|---|---|---|
| 15, trio | 2.50% | 0.9012 | 85.3% | 0.310% |
| 20, trio | 0.516% | 3.317 | 86.1% | 0.0593% |
| 22, trio | 0.221% | 5.430 | 76.5% | 0.0360% |
| 15, duo | 3.18% | 18.58 | 39.9% | 0.107% |
| 20, duo | 2.45% | 0.9571 | 78.6% | 0.229% |
| 22, duo | 1.68% | 1.016 | 84.8% | 0.205% |
That is the point of the figure: on the reports that mislead, it is usually small where the stranger figure is huge. But not always, and this is the result that costs the tool something. When the brother is the father, the figure against him can still come out large: in 0.310% of all brother-fathered 15-locus trios it was 100 or more, usually because the tested man happened to match at every locus. Any likelihood ratio carries this risk, and it is bounded: when the alternative is true, a figure of x or more turns up with probability at most 1/x. A large figure is strong evidence, not proof.
Assumptions of the bench: Hardy-Weinberg equilibrium, no substructure correction, no mutation in the simulated families, and exact (not rounded) indices. The simulated families inherit every locus independently, linked or not; the figure sets one locus of each linked pair aside by calling this page's own rule, so it measures exactly what the page computes. At a single locus where the tested man does not carry the paternal allele, the index is set by a mutation convention (μ/A, with μ = 0.002 as an illustrative rate); the tested man counts as excluded at two or more such loci, which is a choice, and labs differ. The combined index and the exclusion use every locus typed. 50,000 families per row for a true father; 1,000,000 per report type when the brother is the father. Its program is published with the checks; its full tables are in the project's repository (research/paternity-check/bench/results.md).
Who does this better
The mathematics here is standard kinship statistics, and several people and programs do more of it than this page. If any of them can answer your question, prefer them.
- Testing the relative. Better than any calculation. Once he is tested, the two-men panel above compares the reports directly, and an exclusion of one man settles it.
- Your lab. A lab that knows a relative could be the father can compute a statistic against him from the genotypes and allele frequencies, with its own mutation model, which is more than this page can do from the printed indices. Cellmark, in the UK, says that in that case "there will be two statistics quoted in the report".
- Familias (free, promoted by the International Society for Forensic Genetics) and pedsuite and forrel (free R packages) compute a likelihood ratio for any family tree, with mutation models (and, in Familias, a correction for population substructure). They need the genotypes, a pedigree and an allele-frequency database, and they are expert software. forrel is the engine this page was cross-checked against.
- DNA-VIEW, Charles Brenner's laboratory software, prints indices against close relatives for the lab. It is sold to laboratories, not offered to families.
- Free web calculators such as MetricGate's and the browser-only filbio compute paternity or kinship indices forward from genotypes and allele frequencies you supply. They do not start from a printed report.
- A consumer autosomal DNA test of the child and the tested man (or the relative) measures shared DNA across hundreds of thousands of markers and tells a father from an uncle far more clearly than a 15 to 24 locus report can, without chain of custody.
What this page adds is narrow: it starts from the per-locus indices already printed on the report in your hand, needs no frequencies and no genotype expertise, re-checks the printed arithmetic as rounding intervals, refuses the cases it cannot vouch for, and gives a certificate you can redo on a calculator. In searches on 12 October 2026 we found no free public tool that computes a relative figure from a printed report. That is a statement about our searches, not a claim that none exists.
Sources
- J.W. Morris, R.A. Garber, J. D'Autremont and C.H. Brenner (1988), "The Avuncular Index and the Incest Index", in W.R. Mayr (ed.), Advances in Forensic Haemogenetics 2, Springer, pp. 607 to 611. doi:10.1007/978-3-642-73330-7_124. The avuncular index, the second-degree form, and the observation that the cumulative figure cannot be had from the combined index.
- W. Goodwin, D. Ballard, K. Simpson, C. Thacker, D. Syndercombe Court and J. Gow (2004), "Case study: paternity testing, when 21 loci are not enough", International Congress Series 1261, 460 to 462. doi:10.1016/S0531-5131(03)01724-2. The worked example in which the brother was the father.
- D.W. Gjertson and others (2007), "ISFG: Recommendations on biostatistics in paternity testing", Forensic Science International: Genetics 1, 223 to 231. doi:10.1016/j.fsigen.2007.06.006. Indices at loci handled as mutations.
- Cellmark, "Understanding your DNA testing report", read 12 October 2026.
- Linked loci: J.M. Butler, C.R. Hill and M.D. Coble (2012), "Variability of New STR Loci and Kits in US Population Groups", Profiles in DNA, Table 4, reproducing the recombination fractions of C. Phillips and others (2012), Forensic Science International: Genetics 6, 354 to 365. Phillips and others was not read directly (it is behind a paywall); each value was checked against at least one other open source (Alsafiah and others 2019, Iyavoo and others 2023, or the same group's earlier table in Fondevila and others 2011) or against an estimate computed here from a public HapMap genetic map. Locus positions from NIST STRBase.
- Allele frequencies for the bench: the NIST 1036 U.S. population data, 2017 revision (C.R. Steffen, M.D. Coble, K.B. Gettings and P.M. Vallone (2017), Forensic Science International: Genetics 31, e36 to e40, doi:10.1016/j.fsigen.2017.08.011), downloaded from NIST STRBase on 12 October 2026.
- The independent engine: M.D. Vigeland, forrel 1.10.0, with pedtools 2.11.0 and pedprobr 1.1.1, R packages on CRAN.
- Worked examples: Genomia's demonstration report and its exclusion and anonymous forms; the sample report on DNA Diagnostics Center's explainer; Validity Genetic Services' example reports; A.J. Eisenberg's parentage statistics workshop (ISHI 2004). Each was transcribed digit by digit and re-read against the source.
The checks
The independent checker runs with plain Node.js from the one file this site serves. The verifier and the bench are published here to read; they run inside the project's repository, because they stand on stored data (the forrel cases, the bench output, the transcribed report layouts) that this site does not republish as files.
- checker.mjs, the independent checker.
node checker.mjs --identity --controlre-derives the formula by exact enumeration for all eight relatives and runs the negative control;node checker.mjs paternity-check.jsonre-checks a record downloaded from this page. - research/paternity-check/verify.mjs, the verifier behind the page: the printed-figure rule, the formula and its cap, the refusals, the parser on real layouts, certificates altered one value at a time, the published examples, agreement with forrel on 1,344 stored cases, every bench figure printed above against the bench's own output, and the independent checker run against tampered records (each attack changes one rule, recomputes every number that follows from it, and must be caught on the line it names).
- research/paternity-check/bench/bench.mjs, the bench: deterministic (seed 20261012), it rewrites its tables byte for byte.
- The engine itself, which runs in this page: engine.mjs and numbers.mjs, with the locus table in loci.mjs.