Product GUIDs for Revit 2012 and Forever More

Every year anew, people ask for the Revit product GUIDs used to identify the Revit installation and stored in the Windows registry under

There are different keys for each of the three Revit flavours, and for both 32 and 64 bit operating systems.

The first time around, we discussed the Revit 2010 and previous versions' installation path and product GUIDs, and then updated the list for Revit 2011 last year.

As I mentioned last time, the install path is less of an issue nowadays. There is no longer any need to determine the location of Revit.ini to install an add-in, because you have to use an add-in manifest to inform Revit how to load your add-in instead.

Even though I mostly do not follow this advice myself, it is actually recommended to install .NET add-ins for both AutoCAD and Revit in or under the same directory as acad.exe and revit.exe, respectively: "It's safest to place assemblies at a location beneath the calling executable."

Another way to determine the Revit install location is to use the RevitAddInUtility. It provides an API for an installer to query the Revit installation location, i.e. the path of Revit.exe, and also to generate an add-in manifest file from the relevant properties you specify.

In Revit 2011, there was an issue with using the RevitAddInUtility for 64 bits. That is resolved in Revit 2012, and the same assembly DLL should work transparently on all flavours of Windows now.

Revit Product GUIDs up to Revit 2012

Still, the product GUID may be important for other uses. Here is the updated list including the GUIDs for the initial Revit 2012 versions:

201264 bitRAC7346B4A0-1200-0110-0409-705C0D862004
RME7346B4A0-1200-0310-0409-705C0D862004
RST7346B4A0-1200-0210-0409-705C0D862004
32 bitRAC7346B4A0-1200-0100-0409-705C0D862004
RME7346B4A0-1200-0300-0409-705C0D862004
RST7346B4A0-1200-0200-0409-705C0D862004
201164 bitRAC94D463D0-2B13-4181-9512-B27004B1151A
RMEC31F3560-0007-4955-9F65-75CB47F82DB5
RST23853368-22DD-4817-904B-DB04ADE9B0C8
32 bitRAC4AF99FCA-1D0C-4D5A-9BFE-0D4376A52B23
RMECCCB80C8-5CC5-4EB7-89D0-F18E405F18F9
RST0EE1FCA9-7474-4143-8F22-E7AD998FACBF
201064 bitRAC2A8EEE2F-4A9E-43d8-AA07-EC8A316B2DEB
RMEA1BD042B-8A6F-4e37-92A3-78921BB45B05
RSTBC9C0A08-DEA4-4138-A7FB-8F68866DB0C1
32 bitRAC572FBF5D-3BAA-42ff-A468-A54C2C0A17C3
RME5C8281B1-B927-495a-A0FF-AB4BDFAE505C
RST939D29FC-B82D-42a7-BB1E-8E3F121505CC
200964 bitRACD2466208-7348-4214-B01E-7BC8729E2BD3
RME4A98F976-01B5-40e8-A496-AEFD85C3A446
RSTB354FCF5-CF64-4fa2-AA84-9D9B2A6FA649
32 bitRACA3A37DA6-70C0-497C-BCB1-148E9EC1D32E
RMEE3781DCB-A650-4E66-9B74-67A1B17F052C
RSTC4B3B3C3-2EE9-48D3-9BF5-4443F7ECF759
2008RAC4A11206C-4377-49E8-911E-B11548658FF3
RME60A2743E-C881-4880-94ED-96445E38616F
RST8D0AE0BB-4FE5-491D-A284-3B363F02E639
9.0Revit BuildingD11DB6CB-0332-4735-B312-B919741D975E
3RST3F11CEE0-D30D-41ce-8522-922B5D8BB324
8.1Revit Building7EBC0489-5E47-498D-BE31-B094484612E9
2RSTBE814F63-629D-4fd8-B628-1437AC10F9D4

ADN members may also refer to the technical solution TS87598 [How to detect where Revit has been installed?], which has been updated with this new information as well.

Perpetual Revit Product GUIDs

As you may have noted above, the Revit 2012 GUIDs exhibit a strong similarity with each other.

From Revit 2012 onwards, the Revit products codes are generated according to the following pattern:

    {7346B4At-uuvv-wwxy-zzzz-705C0D862004}

The alphabetical characters above stand for:

  1. [0/1]: ProductCode/UpgradeCode
  2. [11, 12, ...]: Major release version [11,12]
  3. [00, 01, ...]: Release subversion
  4. [01/02/03]: RAC/RST/RME
  5. [0/1]: Win32/x64
  6. [0/1]: Global/Language Pack
  7. [0409...]: Language

The last item, represented by 'z', identifies the language. It uses the hexadecimal LCID, which I assume stands for language code identifier or something like that, and is defined in the following table:

lang.NET codeHEX LCIDDEC LCIDLanguage nameCodepage
chszh-CN08042052Chinese Simplified936
chtzh-TW04041028Chinese Traditional950
csycs-CZ04051029Czech1250
deude-DE04071031German1252
enuen-US04091033English1252
espes-ES040A1034Spanish1252
frafr-FR040C1036French1252
hunhu-HU040E1038Hungarian1250
itait-IT04101040Italian1252
jpnja-JP04111041Japanese932
korko-KR04121042Korean949
plkpl-PL04151045Polish1250
ptbpt-BR04161046Brazilian Portuguese1252
rusru-RU04191049Russian1251

Applying this rule to Revit 2012 for the RAC flavour, 64 bit operating system, initial release and US English generates the following value:

    {7346B4A0-1200-0110-0409-705C0D862004}

I checked my 32 bit Windows registry values, and see the following entries beginning with "7346B4A":

{7346B4A0-1200-0100-0409-705C0D862004}
Revit Architecture 2012
{7346B4A0-1200-0101-0409-705C0D862004}
Revit Architecture 2012 Language Pack - English
{7346B4A0-1200-0200-0409-705C0D862004}
Revit Structure 2012
{7346B4A0-1200-0201-0409-705C0D862004}
Revit Structure 2012 Language Pack - English
{7346B4A0-1200-0300-0409-705C0D862004}
Revit MEP 2012
{7346B4A0-1200-0301-0409-705C0D862004}
Revit MEP 2012 Language Pack - English

These Revit product keys and the corresponding 64 bit ones produced the data that I added to the GUID table above.