Skip to main content
U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Unified Medical Language System® (UMLS®)

RxNorm Frequently Asked Questions

RxNorm can be used overseas but the content is U.S.-centric. RxNorm contains few, if any, non-U.S. drugs.

You must accept the terms of the Unified Medical Language System (UMLS) Metathesaurus license agreement, and create a UMLS Terminology Services (UTS) account to download the full RxNorm files. The National Library of Medicine (NLM) produces RxNorm and does not charge for licensing; however, the use of proprietary data in the RxNorm files may require additional licensing from those source vocabulary providers. See Appendix 1 and Section 12 of the UMLS license to learn more about a specific source vocabulary.

NLM does not provide RxNorm files in Excel format. However, RxNorm files are text files which can be imported or converted manually into a spreadsheet. For detailed instructions, see this brief video titled: Opening an RxNorm File in a Spreadsheet.

RxNorm files are in Rich Release Format with the extension .RRF, which are text files with values separated by the pipe character (|). After unzipping the RxNorm ZIP file, a text editor, such as Notepad or Notepad++ can be used to open and view the RxNorm data.

The RxNorm data files are meant to be loaded into a relational database management system (RDBMS). We recommend SQL, as our scripts and controls are designed for loading RxNorm files into an Oracle database or a MySQL database. NLM offers limited support in using SAS for RxNorm.

User-submitted scripts for the UMLS that can be modified for use with RxNorm are available here:
https://www.nlm.nih.gov/research/umls/implementation_resources/community/index.html

Yes, steps to automate RxNorm downloads are available here: https://documentation.uts.nlm.nih.gov/automating-downloads.html.

Be aware that the UMLS Terminology Services (UTS) sign in process changed on November 9, 2020. The UTS moved from a username/password login to a service that allows you to sign into the UTS using Google, Microsoft, Login.gov, or another identity provider of your choice. For details about this and other changes to the UTS, please visit: https://www.nlm.nih.gov/research/umls/uts-changes.html.

Unfortunately, the terminology download automation scripts NLM made available several years ago do not work with the UTS sign in changes. Those scripts will no longer work for automating the download of RxNorm weekly and monthly files moving forward. Instructions on how to automate the download of RxNorm with the new UTS sign in process is available in the first link above.

The RxNorm files can be downloaded as a ZIP file from the RxNorm files page.

No. However, RxNorm content is updated on a regular and predictable schedule through various resources.

  • RxNorm Monthly Release – Available the first Monday of every month or the first Tuesday if Monday is a U.S. Federal holiday.
  • RxNorm Weekly Release – Available every Wednesday or Thursday if Wednesday is a holiday.
  • RxNav – Typically updated the first Monday or Tuesday of every month, as it is updated with the RxNorm monthly release.
  • DailyMed – Typically updated every Thursday, as it is updated with the RxNorm weekly releases. DailyMed download data are also available as daily, weekly or monthly periodic updates.

An unZIP utility such as WinZIP can be used to open the ZIP files once downloaded. The RRF files are pipe-delimited text files (with a file extension of .RRF instead of .txt) which can be opened with a text editor such as Notepad.

Some of the files are large and cannot be opened with simple text editors. More robust text editors, such as Notepad++ for Windows and TextWrangler for Mac, work well. However, the RxNorm data are explored more effectively when loaded into a database or manipulated with command line tools, like grep or awk.

Several resources provide new RXCUI information.

  • RxNorm Monthly Releases – The RXNCONSO.RRF file in the monthly releases contain new and existing RxNorm drug names and codes and is available for download the first Monday of every month or the first Tuesday if Monday is a U.S. Federal holiday.
  • RxNorm Weekly Releases – The RXNCONSO.RRF file in the weekly releases contain select new data and is available for download every Wednesday or Thursday if Wednesday is a holiday.
  • RxNav – Perform a search on the first Monday or Tuesday of the month, as it is updated with the RxNorm monthly release.
  • DailyMed – Perform a search on Thursdays, as DailyMed is typically updated with the Wednesday RxNorm weekly releases. To find the RXCUI in DailyMed (if available):
    • Go to the desired DailyMed drug label page.
    • Click on “RxNorm” under the “MORE INFO FOR THIS DRUG” section near the bottom of the left panel or the bottom of the page.
    • A pop-up window will appear with relevant RxNorm information.

You can also email rxnorminfo@nlm.nih.gov requesting information.

There are several reasons why you might not be able to find an RXCUI in RxNorm.

  • Merged into another RXCUI – When two concepts are determined to be synonymous, they are merged together. Once merged, only one of the RXCUIs remains active. You can find a record of these merges in the RxNorm history files (e.g. RXNCUI.RRF, RXNATOMARCHIVE.RRF, RXNCUICHANGES.RRF).
  • Retired – If a concept is created in error, it may have been retired without merging into another concept. As with merged RXCUIs, look in the history files for a record of these changes.
  • Not a valid RXCUI – If you cannot find the RXCUI in RXNCONSO.RRF or the history files, your RXCUI is not a valid RXCUI. RXCUIs with an NLM-created RxNorm normalized name are documented in the RxNorm files. However, RXCUIs for products without an RxNorm normalized name are considered out of scope and are transient and can change or be deleted by the source vocabulary provider at any time.

There are several reasons why an RXCUI does not have an associated RxNorm normalized name.

  • Out of scope – Some information provided by source vocabularies is out of scope for RxNorm. While this information is grouped into concepts and given RXCUIs, RxNorm normalized names are not created for this information.
  • Ambiguous – Some information provided by source vocabularies are too vague and for a specific RxNorm normalized name to be assigned.
  • Base atom – A Base atom often lacks an RxNorm normalized name because a Base atom contains NDCs representing several different drug products. For more information about Base atoms, see Section 9: Duplicating Source Asserted Atoms (with NDC conflicts) of the RxNorm Technical Documentation.

Yes, an RXCUI-NDC crosswalk is available in the RXNSAT.RRF file of the RxNorm data files. The NDC values are in the ATV column where ATN = ‘NDC'. See Section 14.2 Sample Database Queries of the RxNorm Technical Documentation for several NDC-related sample database queries.

To get NDC, RXCUI, and drug names, see this brief video tutorial on Mapping NDC, RXCUI, and Drug Names in the RxNorm Files.

Yes, the RxNorm dataset contains limited drug classification information, primarily from the following source vocabularies: Anatomical Therapeutic Chemical Classification System (ATC) and Veterans Health Administration National Drug File (VANDF). For example, see this document for an SQL query with explanations: SQL Query to get ATC1-4 Drug Classes for Single-Ingredient RxNorm Generic Drugs (TTY = SCD).

However, the database queries to obtain classification information from the RxNorm data files can be long and cumbersome. To assist users, the RxClass Browser, RxClass API, and several preset workflows in RxMix provide drug class information, some of which are not available in the RxNorm data files. For more information about RxClass, see the RxClass Overview.

Learn more about RxMix on the RxMix Tutorial page. To see existing workflows in RxMix:

Familiarity with the RxNorm data and file structure will be imperative in querying the data effectively. Review the RxNorm Technical Documentation, particularly the appendices, and the RxNorm Overview (i.e. relationship diagram under “What does the RxNorm model look like?”) for useful information.

Here are links to specific pages to help you get started:

Alternatively, the RxNav page provides web-based resources, such as the RxNav browser and application programming interfaces (APIs), to browse and retrieve RxNorm data.

There is no charge for licensing RxNorm; however, using proprietary data within the full RxNorm dataset may require additional licensing from those source providers. Read the UMLS Metathesaurus License Agreement for more information. Visit the UTS to request a license.

The RxNorm source vocabularies are listed in Section 3.1 Source Vocabularies of the RxNorm Technical Documentation. Contact a source vocabulary directly for additional clarification on using their data. Contact information is available in Appendix 1 of the UMLS License agreement.

A separate license is not required for commercial organizations. The same UMLS Metathesaurus license and rules apply to all users.

Last Reviewed: November 7, 2023