Pulling together similar LOINC codes isn't as easy as it first seems

Maybe you're creating a flowsheet display within an EHR system. Or, maybe you're retrieving data to fulfill a quality measure report. Perhaps you are processing data from many sources for a research project.

Sometimes, you just want to find all the variables that record a patient's weight.

Of course, there's the generic LOINC term 29463-7 Body weight.

But when you search the LOINC database you find a bunch more. What about these?

  • 8341-0 Dry body weight Measured
  • 8338-6 Body weight Measured --ante partum
  • 8345-1 Body weight Measured --post partum
  • 8350-1 Body weight Measured --with clothes
  • 8351-9 Body weight Measured --without clothes
  • and lots more like this...

Yeah, if those are stored in the EHR for your patient, you want them too.

The data inside many EHRs and clinical data warehouses are stored, appropriately so, with these granular LOINC codes that make fine grained distinctions. The problem is that for your purpose, you want to treat them similarly.

As you scan further down the list of terms though, you notice some "special" (a.k.a. oddball) terms that need to be excluded.

You definitely need to limit to quantitative terms only, so you don't get things like 8337-8 Body weight special circumstances, which is used to record things like patient position and other special environmental factors about the measurement.

Even with only quantitative terms, there are other specialized measurements to exclude that aren't actual patient weights, such as:

  • 73965-6 Body muscle mass/​Body weight Measured
  • 8336-0 Body weight [Percentile] Per age Measured
  • 73964-9 Body muscle mass Calculated

You could write custom lists that enumerated all the possible LOINC codes of interest or keep coming up with more complicated search criteria, but that's hard to maintain at scale across many tests or measurements you may be interested in.

The LOINC groups project aims to give you a flexible, extensible, and computable mechanism for rolling up groups of LOINC codes for various purposes



Group tests that could appear on the same row in a flowsheet



Create super-powered queries to find all relevant LOINC terms



Analyze data that was recorded at different levels of specificity


Download the LOINC Group File

Your solution for pulling together similar LOINC codes

With funding support from the National Center for Advancing Translational Sciences and input from diverse users, we designed a release format for publishing LOINC Groups. A LOINC Group is sets of terms that might be considered equivalent for a particular purpose.

Beginning with the June 2017 LOINC release, we are now publishing the LOINC Group File as part of each LOINC release. We're still early in this journey, so expect the contents of this file to evolve over time.

Download it today and give us your feedback.

TIPS Important notes

  1. The LOINC Group project is a work in progress. Expect the contents of this file, including the Group and Subgroup names and the types of Groups that are included, to change from release to release as we receive feedback from users and refine our processes.
  2. The LOINC Groups themselves are NOT meant to be targets of mapping. That is, they are designed for use to aggregate existing data identified with LOINC codes. Don't map your local test codes to LOINC Groups; you'll be throwing away information.
  3. The contents of the file and the groupings MUST be validated by the user prior to implementation in any aspect of clinical care. We have created Groups that may be useful in specific contexts, but these Groups have not been vetted for use in either patient care or research and should be used with caution.


LOINC Groups File, Alpha 1
Version: 2.61 alpha 1
Released: 2017-06-23
Size: 119 KB (ZIP)

  • LOINC_2.61_GroupFile_Alpha_1
  • Group_Alpha_1.csv
  • GroupFile_ReleaseNotes.txt
  • GroupFile_Readme.txt
  • License.txt


See what's under the hood of the LOINC Group File

Let's take a look at how this powerful resource is put together

Structure of the LOINC Group File

Sort order: This file is sorted by the ParentGroup followed by the Group.

Field Description
ParentGroupId The unique identifier for the ParentGroup that has a prefix of "LG".
ParentGroup A systematic name for the high-level group from which all of the individual groups are created.
ParentGroupCategory Categories for the ParentGroup concept such as "Laboratory" and "Clinical".
NOTE Despite their initial appearance, these categories are not strictly limited to the LOINC Classtype values.
ParentGroupDescription Description of which axes are contained in and ignored by the ParentGroup.
GroupId The unique identifier for a single Group that also has prefix "LG".
Group The systematic name for a single Group containing a set of LOINC codes that could potentially be rolled up in certain contexts.
LoincNumber The unique identifier for a given LOINC term.
LongCommonName The Long Common Name for the LOINC term.

Patterns for constructing ParentGroup and Group names

ParentGroup names

Each ParentGroup is named as a concatenation of the:

  1. High-level group concept;
  2. Axes that are the same for each term in a given group in angle brackets;
  3. (If applicable) axis values that are purposely grouped together in a given group in angle brackets; and
  4. Axes that are purposely ignored and therefore automatically grouped together in angle brackets.

For example, the ParentGroup CHEM<SAME:Comp|Prop|Tm><Sys:ANYBldSerPlas><ROLLUP:Meth> contains:

  1. Terms in the CHEM (Chemistry) class;
  2. Where all of the LOINC terms in each individual group have the same Component, Property, and Time;
  3. Where the LOINC terms in a given Group can have a System in ANY of the blood, serum or plasma categories, such as: Bld, BldA, Ser/Plas, etc. (with a few exceptions such as cord blood and dried blood spot); and
  4. Terms are rolled up into a single Group regardless of whether they are methodless or have a specific Method. In other words, ANY Method (including null) is allowed.

Group names

Each Group is named as a concatenation of the following pieces delimited by vertical bars (|):

  1. Values in the axes that contain the same value for all LOINC terms in a Group, which corresponds to the first set of angle brackets in the ParentGroup; and
  2. Label assigned to the set of values in a given axis that are purposely grouped together, which corresponds to the second set of angle brackets in the ParentGroup.

Note that the axes that are automatically rolled together, corresponding to the third set of angle brackets in the ParentGroup, are not represented in the individual Group names.

For example, the Glucose|MCnc|Pt|ANYBldSerPlas Group, which is part of the CHEM ParentGroup described on the left, contains terms that have:

  1. Component of Glucose, Property of MCnc, and Timing of Pt;
  2. ANY blood, serum or plasma System (with those noted exceptions); and
  3. ANY Method

An example Group to illustrate

To see how these Group names correspond to the list of LOINC codes they aggregate, let's take the example of this group:


  • 2339-0 Glucose [Mass/volume] in Blood
  • 2340-8 Glucose [Mass/volume] in Blood by Automated test strip
  • 2341-6 Glucose [Mass/volume] in Blood by Test strip manual
  • 32016-8 Glucose [Mass/volume] in Capillary blood
  • 41653-7 Glucose [Mass/volume] in Capillary blood by Glucometer
  • 2345-7 Glucose [Mass/volume] in Serum or Plasma
  • 74774-1 Glucose [Mass/volume] in Serum, Plasma or Blood
  • 41651-1 Glucose [Mass/volume] in Arterial blood
  • 41652-9 Glucose [Mass/volume] in Venous blood
  • 6777-7 Deprecated Glucose [Mass/volume] in Serum or Plasma

As you can see from the syntax of the Group name, this collects all LOINC terms that have Component of Glucose, Property of MCnc, and Timing of Pt; ANY blood, serum or plasma System (with those noted exceptions); and ANY Method.


Submit your Group

Send us your Group for review.

LOINC content developers will review your Group. We may promote it to be included as part of the official distribution.

You can also see other submissions from the LOINC community.

LOINC Groups Community


Give us your thoughts

We are seeking feedback from the LOINC community on the file format, the content of the LOINC Groups created, and intended uses. Please share your advice here!

Home Forums Call for Feedback on LOINC Groups

This topic contains 12 replies, has 7 voices, and was last updated by  Lin Zhang 1 month, 1 week ago.

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
  • #18089

    Daniel Vreeman

    Welcome to the discussion forum for LOINC Groups. We’d like to hear your feedback on the file format and the LOINC Groups that have been created. Additionally, we’d love to know how you intend to use this artifact and any suggestions for new LOINC Groups.


    Vojtech Huser

    The new grouping of loinc codes is a great new feature.
    Given it is in alpha:
    What is the roadmap for it? Beta by October 2017?
    Full production in Jan 2018?


    Katie Allen

    Since this is a new space for LOINC, the LOINC team is very interested in community feedback, so we will be organizing methods to do so over the course of the next several months. The current plan is to release another version (hopefully Beta, but perhaps Alpha 2 depending on the feedback) with the December 2017 LOINC release.


    Daniel Vreeman

    New “human friendly” view of LOINC Group File posted

    Our colleagues at NLM thought it’d be nice to explore the content of the LOINC Group file in an Excel spreadsheet with the subtotal function showing the counts of each group.

    We’ve posted this spreadsheet view here:

    LOINC 2.61 GroupFile Alpha 1 grouped with counts
    requires a free loinc.org login

    With this format you can easily expand and collapse the groups in a tree-like structure.

    This spreadsheet has the columns for parent group and other fields hidden.
    Also, don’t try to import this spreadsheet into a database – you’ll get the subtotal rows too. Better to use the main release format: LOINC Group File, Alpha 1



    Do you have groups for an analyte regardless of unit of measure?



    Very nice job, once LOINC GROUP is completed, it could be used in Thai’s medical reimbursement system in order to drive all hospitals to use LOINC in HIS.


    Marla Albitz

    Good to see this work. Here at Wolters Kluwer Health we are evaluating its value in helping enhance our CDS capability. I hope to have the chance to engage with others as we determine if this grouping can help us solve our issues with the flat, non-hierarchical nature of LOINC.


    Daniel Vreeman

    Hi Charles –

    As you probably know, LOINC codes are not specific to a particular unit of measure. The Property does constrain which units are allowable for a given LOINC term. For example, and mass/volume unit could be used with a LOINC term that has a Property of MCnc. The units fields in the LOINC table are all meant as “examples”; they are not normative

    We are making a few high level groups for LOINC codes that collect terms across Properties. One area of focus initially are groups that collect MCnc and SCnc terms for the same analyte. With the molecular weight, such a group would allow equivalence.

    Take a look at the ParentGroup: LG55-6 MassMolConc

    It forms Groups that pull together measures of the same analyte with either MCnc or SCnc:

    LG10153-1 Bilirubin|Pt|Urine|Test strip|MassMolEquiv|584.662 g/mole
    20505-4 Bilirubin.total [Mass/volume] in Urine by Test strip
    41016-7 Bilirubin.total [Moles/volume] in Urine by Test strip

    • This reply was modified 4 months ago by  Daniel Vreeman.
    • This reply was modified 4 months ago by  Tim Briscoe. Reason: Removed offending HTML tags

    Daniel Vreeman

    I’ve got a question for our public health colleagues using LOINC. Would it be useful to have groups that pull together tests on isolates from “normally sterile sites”?

    If so, is there an agreed list of such specimen sites? (I see, for example, one from MN: http://www.health.state.mn.us/divs/idepc/dtopics/invbacterial/sterile.html)


    Lin Zhang

    Amazing job! Maybe it could facilitate the development of common code subsets like Top2K+ in other countries/regions etc.


    Lin Zhang

    Multiple levels of granularity may be needed for various use cases.


    Katie Allen

    We’d love to receive your feedback! In this file, you will find new groups. Particularly, we would be interested in your feedback on the following groups: a large group that rolls up six classes, a group for microbiology antibody types/method/property, reportable conditions, radiology, and document ontology.

    What you won’t see in the attached file are the LG codes, but do not fear! We have been working on ways to persist the codes in our database and the December release will likely contain permanent LG codes. Since they are not ready for prime time, we removed them from this file. You also will not sure description information, which will be in final artifacts.

    Community guidance is critical for the ultimate success of the new LOINC Groups so any thoughts you have are appreciated.Click here to download the LOINC Groups file.


    Lin Zhang

    LOINC Groups might be used to create LOINC value sets.

    Typical use cases and examples would facilitate understanding of LOINC Groups and their use/value.

    Visualization of the hierarchical structure of LOINC Groups would also be helpful to quickly/briefly master LOINC Groups.

    Further categorization/classification of LOINC Groups would facilitate navigation of LOINC Groups.

Viewing 13 posts - 1 through 13 (of 13 total)

You must be logged in to reply to this topic.