Numbering systems in genealogy are used to uniquely identify every person in your tree, to help determine their place in the tree and to calculate relationships between people when the tree data is printed in lists, or some other non-tree format.  “Numbering” is a little bit of a misnomer because quite a few of the systems also include upper and lower case letters, Roman numerals, and even punctuation marks that actually have meaning.  It might be more accurate to call them “identification systems” but that’s not a perfect label either.  Whatever you call them, they’re important in genealogy, although it is possible to work without them – especially when using a computer program to manage your tree data.  Nonetheless, most genealogy software continues to support numbering systems.

According to Wikipedia, there are 11 prominent genealogical numbering systems, though this number is inaccurate because it does not include some that have come into being in the last several years and are just starting to get a foothold in the genealogy world.  All of these systems approach things from either the bottom and work up (starting with a person and working up the tree, into the past, through all of their ancestors) or from the top and work down (starting with a person and working down the tree, moving closer to current day, through their descendants).

Popular ascending (bottom-up) systems include:

  • Ahnentafel
  • ATree

Popular descending systems include:

  • Register
  • NGSQ
  • Henry
  • d’Aboville
  • (…and several others)


Why does this matter and why are we mentioning it, you wonder?  As I said most genealogy software still facilitates the use of a numbering system, though most often they force one upon you, or maybe two – one ascending and one descending.  You’ll notice two things though:

  • There is no “universal” numbering system – one that lets you start from any person in your tree and work either up or down.
  • Each numbering system serves a different purpose, depending on your intention and point of origin

And that brings me to the purpose of this post.  We have developed a first pass at a “universal” numbering system.  It’s still rough and we need to fine tune it to see if it really fits the bill and is something that would provide value to humans trying to use it to identify relationships between people in their tree, but so far it is working for the computer to do that calculating for us.  At the very least, we will be using this internally to uniquely identify every person in your tree and be able to very quickly determine their relationship to anyone else in your tree.  Whether we ever expose this number in the software depends on how successful we are in making it somewhat more human-readable than it is now.

Regardless of how that first item goes, we are not looking to force it on our users.  In fact, we are not going to force any numbering system on you as we will support multiple systems and which you choose to use is up to you.  Our current plans call for supporting Ahnentafel, Register and NGSQ, as well as a relative newcomer called AncestralLines.  Origins will calculate and assign the appropriate number for each of these systems to every person in your tree and you can choose which, if any, you choose to display in the user interface, on reports, etc.  The extra calculation time to determine the additional identifiers for multiple numbering systems is exceedingly minimal and the extra storage space to record them is equally small. 

This follows along with our design goal of being flexible and letting each user determine how best to make Origins work for them.