Import from another genealogy program

From Gramps
Jump to: navigation, search
Tips on importing from other genealogy programs

There are several ways to import your family genealogy into Gramps from another program. The best option depends on what program you want to provide the information. But all import processes start with having a Gramps database (called a Family Tree) open and waiting to receive your family information.

You could import directly into an existing Gramps Tree that already contains the fruits of many hours of research and organization. But since all Genealogy programs make different assumptions about how to organized and transfer data, that would not be a good practice. Their exported data might be a chaotic mess that mangles your nice, clean genealogy in Gramps.

We recommend start by creating a fresh, empty Tree and then importing... even if it is just as a test run.

Once the imported data is in Gramps, you can explore what needs cleaning. Maybe their export stored a duplicate of every place and source for the genealogy rather than building a hierarchy for each or even using the same identifiers. Merging duplicate Places and Sources now will be much easier when there is a sole source for all the data. There are free Third-party Addon tools some users have created and shared to make merging forked Trees easier. You can use this pruned Tree as a stepping stone to a cleaner import. It is always safer to import data already in Gramps format.


Gramps to Gramps

This is the easy one. The simplest and safest method to move all your information from one Gramps program to another on a different computer is to choose Family Trees -> Export from the first Gramps. (If your Family Trees menu does not have an Import menu option, then you probably need to create a new, blank Tree; or, load an existing Tree. There must be a destination available before importing is possible.) Follow the instructions, choosing Gramps Package for the format to save. And do not forget to disable privacy & living person filters.

Copy the file created by Gramps to the destination computer. Then in Gramps on that computer, choose Family Trees -> Import and select the transferred file.

What's not included?

The Gramps Package backup only contains your family tree and (when the 'include media' backup option is selected) your media.

The following settings in Gramps are not transferred:

Custom Filter migration

Keep your collection of custom filters through a minor updates to patch Gramps (e.g., from version 5.1.0 to 5.1.2) by manually copying your custom_filter.xml from Gramps User Directory to the corresponding directory in new gramps_version_number.

Even minor upgrades with feature changes (e.g., from a 5.0.x to a 5.1.x version) may include XML format changes since the recent innovation of addon rules are causing rapid evolution in Filters. So porting filters in this manner requires verification that the XML definitions haven't changed. Also, Addon rules may have to be installed in the new upgrade before copied custom filters will work safely.

You can keep your custom settings by manually copying each of the *.xml files from the Gramps User Directory to the corresponding directory in the new gramps_version_number directory. Be aware that (due to changes in different versions of Gramps) the settings may no longer work. So be diligent that you test.

Standard GEDCOM as transfer tool

Most programs storing family history data can export and import GEDCOM (.ged) files. But, because the 1996 vintage GEDCOM data file specification remained in "Draft" status from Oct.1999 to Nov.2019, every genealogy tool has had to take liberties to shoehorn their data into something that has been long outgrown. (See the sections below to see a list of idiosyncrasies reported in different Genealogy software tools.) You would be unlikely to find any tool generating a 100% compliant and standard GEDCOM format.

Gramps does not currently (November 2023) import GEDCOM 7

Revision 7.0.13 published on 4 August 2023.
Although first announced May 2021, the GEDCOM 7 implementation progress list is still very thinly populated. Due to the lack of broad support, the new version cannot be recommended as a transfer tool.

Selecting the best GEDCOM option

Given the choice, export options listed as "GEDCOM 5.5 Standard" tend to be the most broadly conformant type of GEDCOM.

Due to these idiosyncrasies and dialects of GEDCOM, you should always make a backup before importing any GEDCOM file.

  1. Check the documentation for the originating program to learn how to create a GEDCOM file with all your data.
  2. In Gramps, create a blank Tree database to accept the imported data.
    1. Open the Family Tree Manager by choosing the Family Trees Charts icon in the toolbar, or in the menu Family Trees -> Manage Family Tree
    2. Click the New button to create a new family tree
    3. Select the new family tree and click the Rename button to enter a new name
    4. click on the Load Family Tree button to open.
  3. Now that a blank family tree database is ready, select Family Trees -> Import from the menu.
  4. Start the import
    1. Use the File Selector to locate the GEDCOM file created by your originating program
    2. select the GEDCOM file
    3. click the Import button
Verify the data

Check your data carefully once imported into Gramps. There are many things GEDCOM does not support that may be lost during transfer. In addition, many commercial programs do not create standard GEDCOM files. While effort is given to import as many files while preserving as much data as possible, Gramps aims to support the GEDCOM 5.5.1 standard.

Ensure that your media files are transferred too, and found by Gramps. In the menu Tools -> Utilities, you will find the Media Manager. If needed, this allows you to change the path of your media objects to the new path.

Spreadsheet import

Although the following is not a standard format, as a last resort you could also construct a spreadsheet format of your data for importing into Gramps.

The CSV import option currently doesn't allow import of all Gramps data.

For example, it doesn't import all of a person's events and notes. It does import/export birth, death, and marriage events---and notes for those events, people, and marriages.

For more details on this format see Gramps 5.1 Wiki Manual - Manage Family Trees: CSV Import and Export.


Addon:GEDCOM Extensions should be able to handle unofficial GEDCOM extensions.

Import instructions for different programs


Ancestrologie seems to produce non-standard GEDCOM for some kinds of data. In general such problems should be repaired prior to importing into Gramps.

Programs for fixing some of the known problems

Download and uncompress (gunzip) to obtain executable scripts. Some additional explanations and data interpretations (or guesses) may be found in the comments. 
Script to fix non-standard gedcom address data REPO citation within a SOUR record. It replaces the (crash-causing) address data with a REPO reference and adds a REPO record containing gedcom-standard address elements. 
Script to fix non-standard LATI/LONG PLAC data that should be in a MAP structure per the 5.5.1 spec. 
Script to fix various non-standard GEDCOM usage or GEDCOM extensions, by converting the otherwise unusable data into a special NOTE entry like:
 2 NOTE APPX=Ancestrologie/2007.0.0.761 DATX=_ANCES_XINSEE 75111

The data (in this case 75111) may be absent or extend to CONT lines. The non-standard elements converted to APPX notes include:

Special internal reference : "Who they are ?"
Considered non-critical, events classification
Non-critical (certificat found = 1)
INSEE geographical code (evidently simplified 5-digit)
Invalid EVENTS_RECORDED format in a SOUR record
A subdivision of place, is not our place but a division
These seem to be OBJE subordinates
Considered non-critical, media object used for primary media (photo)
(file is not present at the FILE address)

In addition, one other change, replaces a non-standard "FILA" item to the GEDCOM 5.5.1 generic FACT item (in INDIVIDUAL_ATTRIBUTE_STRUCTURE) provided for exactly this kind of data.

 1 FILA Enfant légitime 


 1 FACT Enfant légitime

Users are invited to correct/clarify the above information or notify us of additional problems with non standard GEDCOM or GEDCOM extensions.

Please also feel free to provide feedback on broken scripts or incorrect fixes

Older GEDCOM export files had a relationship compatibility faults in their GEDCOM format and, beginning with the 3.0 release, Gramps handles this seamlessly. In a test done in 2016, had corrected that fault in their GEDCOM format and their newer files are also recognized for proper import into Gramps,

But some GEDCOM idiosyncracies remain.

These notes are based on work importing a gedcom with 2000 individuals and 60000 lines of information into Gramps V4.2.5.

Records not imported

There were around 8000 lines that were reported as "not imported". They were the following categories:

  • _APID records comprise the majority of messages - they are a record type specific to Ancestry internal cross-referencing identifiers and probably meaningless anywhere else.
  • many NOTES records are listed as ignored because they are empty - checking the gedcom shows this to be correct.
  • a very small number show as "Tag recognised but not supported". This coincided with duplicated source entries SOUR linked to the same source object but with _APID subrecords having different values.

Those three import failure types do not create any problem for use with Gramps, and can be ignored, however you should make a point of carefully scanning the import report to ensure there were no failures for other reasons.

The GEDCOM layout used by Ancestry for each item seems to not be consistent, and might change depending on the time at which the initial entry was made into the tree.

Scan for Errors

Use the Tools-> Family Tree Repair->Check and repair Database. Any media objects in the tree will not be imported, but each will have a caption and url that will not generally work without being able to login to an active account. Depending on your intended actions with regard to media, you can keep these or select for Gramps to remove missing objects.

There were 5 events that in the source gedcom were given as 1 BIRT Y with no subordinate records. Gramps apparently rejected these as "events were referenced, but not found". They are valid according to the GEDCOM specification, but quite redundant since all they say is that the person was born.

Source objects

The empty source objects are not deleted, but are replaced by entries with a note and the title "unknown". You can click on Sources in the navigator, select one and view the associated Notes tab, which should just show the associated warning inserted by Gramps Check and Repair. Provided there is nothing useful in the Notes, you can select all these "Unknown", edit->remove.


Select Notes under the navigator. For each individual, family or source object a note will be created listing all the gedcom problems for that object, starting with the text "Records not imported into ..." . Scroll down to these lines (ensure pages are sorted by Preview. Alternatively, create a suitable filter: enter "^Records not imported into" into the text box (without the quotes), enable "Use regular expressions" and click Find.

You may wish to select and remove all of these, provided you have established there are no significant errors in the import. The blank NOTES and the Ancestry-specific _APID records are of no use here, and they cannot be re-exported for reading back into an Ancestry tree.


Ancestry seems to allow some date options that aren't consistent with the restrictions of GEDCOM standard. Their export does not always convert these to the valid GEDCOM date format.

There seems to be no automated method to fix these. These are identified in a default configuration by displaying the bad dates in bold in the display area. Gramps will fix some if you simply open an event and then save; others need manually editing.

A more efficient way to check is use Tools->Utilities->Verify the Data and enable "Identify Invalid Dates"

Final cleanup of Ancestry's empty export records

A search for unused objects (Tools->Family Tree Repair->Remove unused objects) can identify and delete any remaining problems.

additional Ancestry notes

How To: export your data out of

More about's APID record identifiers

[Gramps-devel] Mailing list discussion of advanced handling of APIDs:

See Bug Report 899: to learn about, an addon tool (superseded by Gramps version 3) for fixing broken (Relationship lost) GEDCOM generated by


If you do source and evidence-based genealogy research, you might use this (commercial) program to help you follow the Genealogical Proof Standard (GPS). If so, you need to understand which information Evidentia will and will NOT export and import via GEDCOM.

General tips

When you are entering information into Evidentia (about people, places, sources, etc.), be sure that it is typed EXACTLY as you entered it into Gramps. This makes it more likely that it will transfer successfully from one program to another.


Import into Evidentia as subjects

First, export individuals from your Gramps database into a GEDCOM file, either your entire database, or just those people you are currently researching. Next, import those people into Evidentia as what the program calls "Subjects" under the "List Manager" option.

What Evidentia imports and exports

Evidentia will only save enough data so that you can clearly identify which person you are researching. Evidentia can import and export these basic GEDCOM fields about a person:

@I0000@ INDI 
Person's ID number, called a "Reference number" in Evidentia
NAME Lakshmi /Wolowitz/ 
Full name
GIVN Lakshmi 
Given name)
SURN Wolowitz 
Birth year

Events and facts

As mentioned above, Evidentia can import the Event (sometimes called Fact) of a person's birth. However, that is the ONLY event that can be imported in the current version.

Manually add facts into Evidentia

The main use for Evidentia is to properly cite and "prove" facts (or events) about people. So, you are required to enter those facts into Evidentia as a "Claim Type", attached to a specific Subject (person), and supported by source citations.

Export some types of facts to Gramps

Evidentia has most of the main types of claims you'd expect (birth, residence, etc.) and will export them to the usual GEDCOM fields. If a Claim Type doesn't exist in the original list, though you have to add it. It is unclear if an added Type will export to GEDCOM.

Sources and Citations

Manually add to Evidentia first

Enter your sources and citations into Evidentia first. Only after you've finished creating your proofs in Evidentia should you then import your source citations into Gramps.

There are two reasons to follow this workflow:

  • First, Evidentia currently has no way to import your sources or citations, so entering here first means you don't have to enter them twice.
  • Second, Evidentia makes it easier to use the 170 source citation templates from Elizabeth Shown Mills, so your sources and citations will be properly formatted!
Match your source title and source abbreviation

When a source is exported from Evidentia, it uses the "Source Title" for both the title (TITL) and the abbreviation (ABBR) fields in GEDCOM. So, if you've already created Sources in Gramps, use the same text in both of these fields, as well as in both programs.

Complete publication information exported

Evidentia exports a full and complete reference listing (PUBL) for each source, which includes the title. So you might want to exclude the title of sources from the complete individual report in Gramps to avoid duplication.

Citation title only used in Evidentia

Citation titles are only used within the Evidentia program, and don't effect Gramps. So, choose whatever pattern you like for naming them.

Claims and proof

Default GEDCOM export

When you export a "Subject" into a GEDCOM file, Evidentia's default export will automatically include that person's:

  • Individual information: id, name, gender
  • Claim type: facts, events, or attributes
  • Source information: title, abbreviation, and full publication info (PUBL)
  • Full citation (PAGE)

If you entered a date (DATE) or place (PLAC) for a particular claim (event/fact), that will also be exported, so be sure to type the place name in precisely to avoid creating duplicates in Gramps.

Evidentia-specific GEDCOM export

Evidentia's GEDCOM export does not include the full Proof Report (although you could save that report as a PDF and add manually add it to your media in Gramps).

If you do use Evidentia's recommended export settings, the claim analysis will be added as a note to the citation, and the proof conclusion will be added as a note to the event/fact. For example:

  • Citation Note with the Claim Analysis: "The 'Citation Title 1' asserts that Lakshmi Wolowitz was 30 years old when this census was taken in 1840.

The age given in the 1840 census suggests that Lakshmi was born about 1810. However, the accuracy of census data varies widely."

  • Event Note with Proof Conclusion: "Until given stronger evidence of Lakshmi's birth date, it can only tentatively be concluded that she was born in 1810."

Family Tree Maker

GEDCOM is currently the only option for copying your data out of Family Tree Maker and into Gramps. Follow the instructions above for Standard GEDCOM.

Recommended Reading

When Ancestry startled Family Tree Maker (FTM) proponent Keith Riggle by announcing it's retirement, he posted a frank critique of exchanging data between FTM & Gramps v4.0 in Family Tree Software Alternatives, part 8 article of the Genealogy Tools blog.
extensively revised for Gramps 5.0 on 8 Aug 2018

If you do not have access to Family Tree Maker

(Tested with FTW file created by Family Tree Maker 2006)

  • Download and install the free MyHeritage Family Tree Builder:

  • Create a new account (with bogus data)
  • Disable any syncing features when asked
  • Create new Project: File > New Project...
  • File > Import GEDCOM... > Browse > Select FTW file
  • File > Export GEDCOM...

Family Tree Maker 2005

Select File -> Export File -> Entire File... In file dialog, enter a filename and select "GEDCOM(*.GED)" from the "Save as type" dropdown. In the "Export to GEDCOM" dialog, set the following:

  • Destination: FTM
  • GEDCOM: Version 5.5
  • Character set: ANSI (Gramps will convert to UTF-8 upon import)
  • Deselect "Indent records"
  • Select "Abbreviate tags"

Media objects must be imported manually. It's a painfully laborious process. Here's a trick that might help ease the pain: Bring up the "Scrapbook" view on any family member. Press F2, which lists all individuals. By double-clicking on an entry, it will take you to that individual's scrapbook page. Pressing F2 again will bring up the list at the point where you left off.

Description or value associated to event on place field

Gramps made an exception for Family Tree Maker, which violates the GEDCOM spec by using the PLAC field to store the description or value associated with the event. Unfortunately, Gramps cannot fix all errors and tries to do the best for properly importing user data.

Known issues or custom extensions

  1. Blank lines
  2. Issues on date string
  3. PHON in INDI records
  4. PLAC for general data
  5. The source quality is coded as a NOTE rather as QUAY
  6. Marriage start status
  7. Double dates use the first date rather than the second

Programs for fixing some of the known problems

An open source freeware to fix the GEDCOM output from Family Tree Maker Version 7.0 for Windows.

Experimental way

The Master Genealogist provides a way (via GenBridge) to import FTM native database.

tmg2gramps might help for generating a Gramps XML file, which could preserve more data.


Gramps can directly import from Geneweb. Choose Family Trees -> Import, select your Geneweb database and choose Open.



GenoPro can generate custom (invalid) GEDCOM [1] but also better one [2].

GenoPro to Gramps

Experimental converter (.gno to .gramps) on 2757.


Modifications of GEDCOM from Heredis to import in Gramps

With editor (like gedit or note++) find and replace « > »:

1. Non standard tags of Heredis


1 _FIL LEGITIMATE_CHILD > suppress all lines

1 _UST MARRIED > suppress all lines

1 RESN privacy > suppress all lines

NOTE * > TITL * for medias titles (A star was added in all media notes before Heredis export)

2. Assign value Y to following to tags





1 DIV > 1 DIV Y

1 CHR > 1 CHR Y

1 ... > 1 ... Y

3. Sources and Repositories

1 QUAY "> suppress cr and values in quotes for all lines (quality appears at the end of publication value)

3 MEDI > 1 MEDI or 1 PUBL


4. Change levels in Associations

2 ASSO @398195I@ > 1 ASSO@398195I@

3 TYPE INDI > suppress all lines



3 NOTE XXX > 2 NOTE XXX If a note is associated

5. Équivalents of disks drives when loaded Linux Gramps

FILE X:\YYY\Photos\ > FILE /media/ZZ/YYY/Photos/

FILE X:\YYY\Photosjrg\ > FILE /media/ZZ/YYY/Photosjrg/

6. For people's tags located in Events instead of Attributes

Description Type

Profession > Occupation

Titre > Nobility title

No (signe) > null

YES (end of line) > null

There would be a way to assign some fields in attributes instead of events. It's a mix up.

By Ifs, Oct 25 2011

Known issues

According to "Ancestris" wiki, GEDCOM generated by Heredis may :

  1. Add some empty tag - need to add Y on most event DEAT, MARR, MARC, DIV.
  2. Not properly manage dates (calendars)
  3. Generate custom tags without _ : WWW, EMAIL, HEAL, etc.
  4. Not properly manage sources and repositories

There are some alternatives to GEDCOM generated by Heredis :


According to "Ancestris" wiki, GEDCOM generated by Legacy may :

  1. introduce a management issue on ADDR tag : need to add a RESI tag as parent tag/level.
  3. modify MEDI tag design, which can be used into CALN.

Legacy Family Tree version 7 has an extensive list of custom tags in their GEDCOM writing.


MinSläkt (MyFamily) is a Swedish genealogy program for Windows by Dannbergs Data.


PRO-GEN is a Windows compatible genealogical program originally written by Johan Mulderij and Dinant Scholte in't Hoff in 1989. For more information, see their website.

Using GEDCOM to export data from PRO-GEN dropped a significant amount of data. Therefore an Importer plugin was created that reads the native PRO-GEN. The plugin is included in the standard Gramps distribution.

To import the data, Gramps needs to be able to locate the Pro-Gen directory tree. This path depends on the PRO-GEN installation and setup. The version 3 of PRO-GEN might create a ~/pg30 folder. If you are running Gramps on a Windows PC and have a copy Pro-Gen on that same computer, then no export or copying to another device is necessary before starting the import.

Another possibility is to ZIP everything on your Windows computer and unZIP it on your Linux or macOS PC in, say that ~/pg30 folder.

In the following steps, we will assume that the Pro-Gen files are at ~/pg30

Import the data:

  • start Gramps
  • From the Family Trees menu, select "Manage Family Trees..."
  • use the "New" button to create a new family tree database
  • Give the Tree a name (like "PRO-GEN imported Tree") and select that new database
  • click the "Load Family Tree" button to open the blank tree database
  • go to menu Family Trees -> Import
  • in the file Selection dialog, go to the ~/pg30/nl/data directory
  • select the .DEF of your Pro-Gen database
  • in the drop-down selection box you have to select "Pro-Gen" (it is not automatically selected)
  • click "Import"
  • wait as the data processes...

To see counts of the records that were imported, use the Reports -> Text Reports -> Database Summary Report (Be sure to select the optional "Open with default viewer" checkbox or the report will complete silently and not be displayed.)

RootsMagic, all versions

RootsMagic is a Windows program that offers features to synchronize data with Ancestry and FamilySearch, and show hints from these sites and Find-My-Past and My Heritage. It also runs quite well in Linux, with Wine.

Import of GEDCOM files created by Gramps works without problems, and fast, except when you split surnames into multiple parts. They will then be imported as parts separated by comma's, and the same will happen to prefixes, if they exist.

Exported GEDCOM files are quite clean, when you clear the checkmarks for

  • Note formatting (bold, etc)
  • Extra details (RM specific)

which are available in the bottom left of the Gedcom Export Options screen.

The export of tasks is disabled by default, and untested.

RootsMagic has full support for source/citation templates, inspired by Evidence Explained and similar sources. The information entered for those is stored in specialized attributes, which are not exported when the Extra details checkmark is cleared. And when you use templates, you may find formatted citation sentences in the standard GEDCOM fields, like TITL and PAGE. These fields may also include HTML markup for italic and bold.

Note that when you import sources from the FamilySearch tree into RootsMagic, the full formatted citation text is stored in the source title, because of the way FamilySearch works, with a flat model. In that case, the citation fields (date, page) are all empty.

RootsMagic 9 has a quirk that duplicates PAGE information into a NAME tag that should not be exported in the citation. This can cause lots of import warnings in Gramps, which can be discarded.

The Master Genealogist (TMG)

You have two options.


This is the easy option, but much of your data may not transfer correctly. Try it first anyway in case it works for you.

Read this first: TMG™ GEDCOM Export - Guide to Limitations and Issues ©MJH (Michael J. Hannah)[3]

Then with that in mind:

  1. Tell TMG to export your data to GEDCOM, following the instructions that come with TMG.
    • TMG gives you many options for GEDCOM exports. What works best will depend in part on the way you organised your family tree. Choose whatever you like.
    • Write down which choices you make.
  2. Follow the instructions above for Standard GEDCOM.

If the results aren't too bad, but aren't quite right, try again after changing one or more of TMG's GEDCOM export options. You'll remember what you did previously because you wrote them down. Didn't you?

Keep trying and hopefully you'll hit on the combination that works best for you.

If you can't get good results, you'll have to use the tmg2gramps method instead.

Known issues

Using a GEDCOM export from TMG does not transfer the following information:

See Data tmg2gramps successfully converts


For many people, using GEDCOM will lose too much information, most notably "Witness" information.

If this is the case for you, you might like to try tmg2gramps. Though it is a little more involved, the results are often worth the extra effort.

For those who don't find the guidance in tmg2gramps own README file to be enough, the step by step instructions below are a bit more user friendly for the novice user, particularly when setting up the necessary MySQL database.

You can also download tmg2gramps here.

tmg2gramps was designed to, "...convert what it can to a Gramps V2.2.6 xml file. This file can then be imported into Gramps, V2.2.6 or higher." Since then, Gramps has evolved. Testing has been done using tmg2gramps to convert a TMG v6 database and importing it to both Gramps 2.2.10 and 4.0.4. Despite being designed for Gramps 2.2.6, tmg2gramps works (at least in the test case) even better when importing to Gramps 4.0.4. Gramps 3.4.8 and 4.0.4 are more or less the same at the XML import level, so this should apply to importing to Gramps 3.4.8 as well.


The official version of tmg2gramps does not work with well with TMG v8 databases, because of changed relation types. This can be corrected with a modified file, which can be downloaded here or here. To apply this upgrade, you must first unpack the official download, and then overwrite the file with the version above.

Data tmg2gramps successfully converts

Some data that tmg2gramps successfully converted from a TMG v6 database which a GEDCOM 5.5 export from TMG did not, are as follows:

  • "Witness" information.
  • "Places" data from TMG are put into the correct, corresponding fields in Gramps. GEDCOM puts all TMG "Places" data into Gramps' single "Place Name" field.
  • Various "notes" from TMG do not transfer over at all via GEDCOM and those that do are categorized simply as "General." tmg2gramps appears to transfer over most (if not all) the notes and breaks them into categories. The categories are not always entirely appropriate (see below regarding citations and "Source text" notes), but the information is there and can be corrected in Gramps.
  • tmg2gramps appears to transfer all TMG Tags to Gramps as "Events." (However, see below for some minor issues related to this.) GEDCOM transfers some, but not nearly all TMG Tags.
Known issues

Here are some known issues that have occurred when using tmg2gramps to convert a TMG v6 database and importing it to Gramps v4.0.4-1:

  1. Events in Gramps from unique TMG tags sometimes have minor issues. For example a TMG Birthilleg tag will definitely show up in Gramps as an "Event" with all of the correct information, but it will not be designated as a birth — so if you look at that person in a chart in Gramps, the birth field will remain empty until you change the Birthilleg "Event" to a Birth "Event" (and you can mark the birth as illegitimate in a note).
  2. Any Godparent relationships won't convert at all. However, each one of them is displayed by tmg2gramps once it is finished, so they can easily be copied and pasted to a document for manually entering into Gramps later.
  3. Any information regarding a citation is put into a "Source text" note in Gramps. The "Source text" is associated with both the "Source" itself and the specific "Citation," so all the information is there, even if the description being a "Source text" is not accurate. Also, this leaves the "Volume/Page" field in the "Citation" blank, even if there is a volume or page number in the "Source text." An adequate but not perfect fix for this is to edit the XML file directly (after exporting it from Gramps) and do a find / replace of type="Source text" with type="Citation" — this turns each "Source text" note into a "Citation" note. The "Volume/Page" field remains blank, but presumably that information is now in the "Citation" note which is not entirely inappropriate.
  4. If two people are married, the "Family" screen in Gramps indicates in "Relationship Information" that their "Type" of relationship is "Unknown" rather than "Married." An example of the ramifications of this are that when printing a Narrated Website Report of John Doe who in reality was married to Jane Doe, and they had children, Jane Doe will not appear on the chart and the chart will not indicate that they were a married couple, though the marriage itself will be indicated as an "Event." To fix this issue, an adjustment must be made prior to importing the tmg2gramps generated XML file to Gramps. Under Gramps Edit-> Preferences-> Display the "Default family relationship" can be set to "Married" (or any of the others). Upon importing the database, all Family Relationship Information "Types" will then be set to "Married." Of course any Family unions that are not marriages will then need to be corrected, but you can set the default "Type" to be whatever the majority of your Families are.
  5. Related to the above issue, any "Disconnected individuals," married or otherwise, will remain disconnected. A TMG GEDCOM export and Gramps import designates a married couple as a "Family" whether or not they have any children — the "Disconnected individual" count is at zero — this is the Gramps recommended practice. For couples without any children, a tmg2gramps import will not recognize the relationship as a "Family" — hence, the marriage is an "Event" and the unrelated spouse is considered a "Disconnected individual." Also, even if the family does have children, perhaps due to distant consanguinity, they will not appear as "Family." Fixing this gets complicated — you can go through the "Disconnected individual" list from the statistics of your database and manually create each missing "Family" that way, but that will still leave others that are potentially lost needles in a haystack. They can be found by running custom filters on the Person Filter Editor. You will then be able to clearly see all the individuals who have marriages, but which tmg2gramps did not recognize as a "Family." You can then create each "Family" manually yourself.
  6. Any external media files may not be found. This can be resolved by correcting their path using the Gramps Media Manager.
  7. Certain unique characters may not import properly into Gramps. Most accented characters did, but an "ñ" in TMG was imported to Gramps as "ń" — a TMG GEDCOM import into Gramps did not have this problem. It is easily fixed by editing the XML file directly and doing a find / replace.
Preparing to run tmg2gramps

Successfully running tmg2gramps for the first time can be a bit daunting for non-programmers, but is still of course quite feasible. The following instructions were written based on using a TMG v6 database and running tmg2gramps on Linux Ubuntu 14.04.

Copy your TMG projects folder

Before beginning, copy your entire TMG 'projects' folder to your linux home folder. It is also a good a idea to keep a backup copy of your TMG 'projects' folder for posterity, just in case you may someday need it. On Windows XP, the TMG 'projects' folder is located here:

C:\Program Files\The Master Genealogist\projects

Rename your copied TMG projects folder

Once you've copied it, rename the copied 'projects' folder to 'tmgdata'

Convert TMG filenames to lowercase

Now, in order to run tmg2gramps properly on linux, it is necessary to make sure the contents of 'tmgdata' is all lowercase, including extensions. The easiest way to achieve this is to open your linux terminal and navigate to the 'tmgdata' directory. Once there, simply type this at the command prompt:

$ rename 'y/A-Z/a-z/' *

Prepare MySQL

Some users may already have MySQL installed or may not know if they do or not. Try installing it by typing the below in the a linux terminal:

$ sudo apt-get install mysql-server

That will either install MySQL, or if it is already installed, it won't cause any harm.

The same is true with the xBase DBI connectors, some users may already have them installed. The following command in terminal will install it for those who don't, while those who already do have it will not be affected:

$ sudo apt-get install libdbd-xbase-perl

Now, enter MySQL. If you previously installed MySQL you may or may not need a password to get into it. If no password is required, users should be able to login to MySQL just by typing this at the command prompt:

$ mysql -u root

If that works, users can skip this next step. But if a password is required, this should be typed in terminal instead:

$ mysql -u root -p

You will now be in MySQL. It is possible that users attempting to use tmg2gramps before may have already created a MySQL database for this purpose. To check and see which databases are there, type this at the prompt:

mysql> show databases;

That will display which databases (if any) already exist. If there is no database for running tmg2gramps, one can easily be created (for our purposes, called tmg_gramps) by typing this at the mysql prompt:

mysql> create database tmg_gramps;

Now, make sure that you can connect to the database with the appropriate password and privileges by typing:

mysql> grant all privileges on tmg_gramps.* to grampsuser@localhost identified by 'grampspass';

You can now exit MySQL:

mysql> exit

Preparation for the tmg2gramps script

...and prepare to run tmg2gramps. Make sure that you know the original name of your TMG project that you are going to convert. To check this, in terminal, navigate to the 'tmgdata' directory which should be in your home folder. Once there, simply type this at the terminal to see a list of the files inside:

$ ls -l

This will display all the files listed in the folder. The name of your TMG project (or projects if you have more than one) will be the name of the file that precedes the underscores. For example, if your project (or one of your projects) is called 'smith,' you will see files such as:


...etc. Make note of the name of the project that you would like to convert. The files and extensions should all already be lower case because of one of the early steps above.

And lastly, before running tmg2gramps, it is necessary to make sure that you have the proper permissions set to execute it. In terminal, navigate to the directory where you unpacked tmg2gramps and type the following:

$ chmod +x

Now, it is finally time to run tmg2gramps and convert your data.

Running tmg2gramps

When running tmg2gramps, the example below makes the following assumptions:

  • Name of TMG project: smith
  • Home directory: /home/asmith

Keeping that in mind, once again navigate to the folder where you unpacked tmg2gramps. Type the following in terminal, substituting the bold and italicized terms below with the terms appropriate for your specific circumstances (based on the above):

$ ./ /home/asmith/tmgdata smith converted_smith_tmgdata.xml tmg_gramps grampsuser grampspass

You should now be able to watch tmg2gramps running in terminal.

The conversion process can create errors and it is advised to copy and save them. There can be all kinds of reasons for errors (for example, a Godparent relationship) and if you've saved them to a text file you can correct the imported data afterwards.

When tmg2gramps has finished running, converted_smith_tmgdata.xml should be in your home folder.

You now need to change the file extension so as to be able to import it into Gramps. In terminal navigate to your home folder and type:

$ mv converted_smith_tmgdata.xml converted_smith_tmgdata.gramps

Open Gramps, create a new family tree, and import the .gramps file you just created.

Congratulations! Your TMG data is now in Gramps.

In coming up with the above instructions,

participants in the Gramps-Users mailing list were extremely helpful. The original tmg2gramps README file also provided insight, and the external site 'TMG to GRAMPS how I did it using tmg2gramps script' provided the initial inspiration.


Information only at the moment.

Project focused on technical aspects related to the continued use, data migration and extension of The Master Genealogist software. The target audience are software developers who wish to participate in an open source project. Bill Girimonti

Gramps Addon TMG importer

An attempt at reading a TMG file Directly from python. (Does not use TMG's Genbridge).

See 7591 for more details and tests.


TMG to GEDCOM includes a template for exporting from TMG into Gramps. In addition to the commonly-supported GEDCOM records like people, names, events, families, citations, sources, and exhibits, the template helps produce a GEDCOM that supports:

  • Witnesses and role labels
  • Flag values as Gramps Attributes

See 7591 and John Cardinal's project


According to a "Ancestris" wiki, GEDCOM generated by Visuged 8.40.0 seems to definitively corrupt your data !

  1. Partial sources
  2. Repositories are lost
  3. BAPT, ASSO are lost
  4. Internal numbers are modified


The GEDCOM generated by WikiTree has a very US-centric dialect of the format. Importing WikiTree GEDCOMs into many programs tends to lose some Name data for individuals.

Their database repeats the NAME data parsed in GIVN, _PGVN, _MIDN, SURN (Given, an occasional custom "preferred given name", a mandatory custom "middle name" field, and Surname). This conflicts with the GEDCOM standard form for the GIVN data. Although Gramps does have a "Call name" that corresponds to the _PGVN, it does not have a separate Middle Name.

The NAME dialect from WikiTree can be converted to a more standard format using a RegEx search and replace script. This is described in the following WikiTree support article:

See also

Source code on GitHub WikiTree project for the src/GedcomExport.php

See also

Discourse community support forum: