All studies
DNA·November 1, 2026·3 min read

How to Convert PLINK .ped and .map Files to 23andMe Raw Data Format for Free

Convert a PLINK .ped and .map pair to a 23andMe-style file for free in the browser, with genotypes copied exactly and no upload.

Drop your .ped and .map files at healthosx.com/dna/convert, choose 23andMe as the output, and you get a 23andMe-style text file with rsid, chromosome, position and genotype. The conversion is free and runs entirely in your browser. It copies each genotype exactly: nothing is called or imputed. No-calls stay no-calls.

How do I convert a PLINK .ped and .map file to 23andMe raw data format for free?

Open the free converter, select the .ped and .map files together, choose 23andMe as the output layout, and download the text or zip file. The page runs the same reader as the free report, so a file that the report reads, the converter reads.

A .ped and .map pair is just two text files

The .map file has one row per marker: chromosome, marker ID, genetic distance and base-pair position. The .ped file has one row per person: six columns for family ID, individual ID, parental IDs, sex and phenotype, then two allele columns for every marker in the .map, in the same order. The converter lines the two files up by row order and writes the pieces a 23andMe-style file needs.

What PLINK carries and what the converter writes
PLINK .ped/.map23andMe output
Marker ID.map column 2rsid column
Chromosome.map column 11-22, X, Y, MT
Position.map column 4position column
GenotypeTwo columns per variant in .pedTwo letters, e.g. AG
No-call0 or missing allele--

Scroll the table sideways for the rest →

The .ped and .map columns line up to the 23andMe raw data layout by row order.

The important mechanic: the .ped already contains the genotype calls. The converter is not genotyping anybody. It is rearranging existing calls into a different column order.

The converter reads marker rows, copies each allele exactly, and writes rsid, chromosome, position, genotype. It never calls new genotypes or fills missing calls.

Which PLINK files work, and which do not

The converter takes PLINK 1 text .ped and .map files. It does not read binary PLINK .bed/.bim/.fam, which need one extra step first.

  • A matching .ped and .map pair with one person is the clean case.
  • If your .map has rsIDs, those become the rsid column. If it has non-rsID marker names, the output still has a 23andMe-shaped file, but tools that look up rsIDs may not recognise the IDs.
  • If the .ped has multiple people, extract one before converting. A 23andMe raw file describes one person.
  • If your map coordinates are GRCh38 and the downstream tool expects GRCh37, the converter can move positions in the browser. Positions that cannot be placed are left out and counted.

What actually happens to the genotypes

Each PLINK SNP uses two columns. A call like A C becomes AC in the 23andMe file. A A becomes AA. A missing PLINK call, usually a 0, becomes --. The converter never forces a missing call, never switches strand, and never imputes. If a row is absent from the input, the output does not invent it.

A 23andMe-style file stores single-letter alleles. SNP data converts cleanly. Indels and non-SNP records are outside that layout and should not be expected to survive.

Conversion path in the browser
You select .ped and .map
Two text files on your device
Download 23andMe .txt
rsid, chromosome, position, genotype

What the converted file can and cannot be used for

The converted file works in tools that expect 23andMe raw data. You can run it through the free DNA report, the rsID lookup and the haplogroup finder, all in the browser. You can also keep it as a 23andMe-layout copy of your PLINK call set.

It cannot add coverage. If your PLINK input has 50,000 rows, the output has 50,000 rows, not 630,000. It cannot invent calls where the PLINK file has no call. It cannot make a genuine 23andMe export; the first line states that the file was converted. It cannot add rsIDs to a .map that lacks them.

What if my PLINK data is .bed/.bim/.fam, or has no rsIDs?

Binary PLINK is common, but this free converter reads text .ped/.map. If you have .bed/.bim/.fam, run plink --bfile data --recode --tab --out data first. If the .map lacks rsIDs and you need rsID lookups downstream, annotate it before converting. The converter will not make up rsIDs, and it will not lift builds unless you ask it to.

The free converter at healthosx.com/dna/convert is the obvious next step. It reads the .ped and .map in your browser and writes the 23andMe layout for download.

New to raw DNA files? Start with the full guide: How to Download & Analyze Your 23andMe Raw Data Free

Written by

HealthOS Research

Keep reading