GEDCOM Fix

ANSEL Encoding Explained: Why Old GEDCOM Files Show Strange Accents

ANSEL is the character encoding behind most pre-Unicode GEDCOM garbling. Here's what it actually is, why genealogy software used it, and how to spot it.

GEDCOM Fix Editorial TeamUpdated 3 min read

If you've opened an old GEDCOM file and seen accented letters replaced with strange symbols, boxes, or question marks, there's a good chance the file is encoded in ANSEL — a character set that predates the genealogy world's move to Unicode, and one that's still quietly present in files exported years or decades ago.

What ANSEL actually is

ANSEL (formally, the American National Standard for Extended Latin Alphabet Coded Character Set for Bibliographic Use, based on ANSI/NISO Z39.47) is a character encoding developed for bibliographic and library systems, later adopted as one of the character sets permitted by the original GEDCOM specification. It was built to represent a wide range of accented and special characters common in personal names and place names — exactly the kind of text genealogical records are full of.

Why it works differently from Unicode

The detail that causes the most confusion: ANSEL represents accented characters using combining diacritics that follow the base letter, rather than a single character that already includes the accent. So an "é" isn't one character — it's the letter "e" followed by a separate code representing the acute accent, applied in sequence. Unicode (used by UTF-8) generally offers precomposed characters instead, where "é" is available as a single code point. A program that reads ANSEL bytes but assumes UTF-8 rules will interpret the base letter and the following diacritic code as two unrelated, wrong characters — which is exactly the "wrong symbol" pattern behind garbled names after a GEDCOM transfer or upload.

Why it still shows up

ANSEL was common in genealogy software throughout the 1990s and into the 2000s, well before Unicode support was standard across operating systems and applications. A GEDCOM file exported by older desktop software during that period — and never re-exported since — may still be ANSEL-encoded today, even if you have no memory of choosing that setting; it was often simply the default. Every time that file gets opened, copied, or re-exported by newer software without an explicit conversion step, the encoding either stays ANSEL or gets misread as something else, which is how the same underlying issue keeps resurfacing across multiple hops.

Why re-encoding beats a manual fix

It's tempting to try fixing garbled characters with a find-and-replace pass in a text editor once you know ANSEL is the cause, but this rarely works cleanly. Because ANSEL represents an accented letter as two separate codes — the base letter and a trailing diacritic mark — a naive substitution has to correctly identify every one of those two-code sequences throughout the file and know which single Unicode character each one maps to. Miss one pattern, or misjudge which diacritic follows which letter, and you introduce a second layer of corruption on top of the first. Software that actually understands ANSEL's combining-character model handles this mapping correctly by construction, which is why a real re-export is safer than a manual repair.

How to spot it and fix it

A GEDCOM file's header declares its encoding on a line starting with CHAR — for an ANSEL file, this will read 1 CHAR ANSEL, visible in any plain text editor without special tools. If you find this in a file that's giving you garbled-name problems, the fix is a genuine re-encode, not a manual character-by-character correction: open the file in genealogy software that reads ANSEL correctly, then re-export it choosing UTF-8 explicitly, if your software offers that option.

If you're not sure whether encoding is actually your problem, the Upload Readiness Checker reads a file's declared encoding directly and flags it as part of its report — a faster way to confirm what you're dealing with than opening the raw file yourself.

Do it now

Keep reading

Common questions

Is ANSEL still used in new GEDCOM files?
Rarely by choice. GEDCOM 5.5.1 still permits it, but GEDCOM 7.0 requires UTF-8 only, so ANSEL is now mostly something you'll encounter in older files rather than something current software chooses to write.
How can I tell if my file uses ANSEL?
Check the CHAR line in the file's header — it will read ANSEL explicitly if that's what the file declares. A plain text editor is enough to see it; you don't need special software.
Can I just convert an ANSEL file to UTF-8 myself?
Most current genealogy software can re-export a file in a different encoding if you open the original in software that reads ANSEL correctly first. Doing it as a raw text find-and-replace is risky, since ANSEL's diacritic characters don't map one-to-one onto simple substitutions.