Family Name, Full Name, and Unique ID in FontForge

When designing or modifying a font in FontForge, correctly configuring the font's metadata is crucial for cross-platform compatibility and proper display in software menus. Navigating to Element > Font Info > PS Names reveals several identifying fields that sound similar but serve distinct technical roles. This article explains the clear differences and specific purposes of the Family Name, Full Name, and Unique ID in FontForge.


Family Name

The Family Name represents the broad collection or design umbrella to which a specific font style belongs.

  • Purpose: It groups individual styles—such as Regular, Italic, Bold, and Bold Italic—together inside the font selection menus of design applications, word processors, and operating systems.
  • Format: It should contain only the base name of the typeface, without style or weight descriptors.
  • Example: Open Sans or Merriweather.
  • Behavior: When users select "Open Sans" in a program like Microsoft Word or Adobe InDesign, the software uses the Family Name to associate all weight and slope variations under a single menu entry.

Full Name

The Full Name is the complete, human-readable name of the specific font file, combining the family name with its particular weight or style variant.

  • Purpose: It provides users and operating systems with a clear, descriptive label for the exact typeface instance being inspected or selected.
  • Format: It typically follows the format [Family Name] [Style/Weight]. In FontForge, this field is often generated automatically by combining the Family Name and the Weight string.
  • Example: Open Sans Bold or Merriweather Light Italic.
  • Behavior: This name often appears in font management utilities (such as macOS Font Book or Windows Font Viewer) to identify the specific font variant.

Unique ID

The Unique ID (often corresponding to the PostScript UniqueID or the OpenType Name ID 3) is a machine-readable string intended to globally distinguish that specific font file from any other font installed on a system or sent to an output device.

  • Purpose: It prevents collisions and caching issues in operating system font caches and PostScript raster image processors (RIPs). If two different fonts share the same name but have distinct Unique IDs, rendering engines can differentiate between them.
  • Format: It typically consists of a combination of the creator name, font version, family name, style, and sometimes a timestamp or random identifier.
  • Example: FontForge 2.0 : Open Sans Bold : 12-4-2024 or 1.000;VENDOR;OpenSans-Bold.
  • Behavior: FontForge can automatically generate this value. Unlike the Family Name and Full Name, the Unique ID is rarely seen by end users; it is strictly evaluated by system-level software and print hardware.

Summary of Differences

Field Primary Audience Scope Example
Family Name Software menus and end users The entire typeface collection Roboto
Full Name Operating systems and end users The specific style/weight instance Roboto Bold
Unique ID Font caches, OS internals, and printers The distinct file build/version 1.000;GOOG;Roboto-Bold