OVERVIEW
Purpose of the CPT® Link Component
This component of the handbook will inform and educate readers on the distribution format of the Current Procedural Terminology (CPT®)[1] content and how to use it.
Intended Audiences
This component is more technical in nature as it deals with the CPT content distribution files and how to use them. As such, the CPT® Link Component is intended for the following audiences:
- Health information management professionals
- EMR vendors
- Software developers
- Database managers
Learning Objectives
After reviewing the content in the CPT® Link Component, the reader is expected to be able to:
- Describe the files contained in CPT® Link product.
- Describe the files contained in the CPT Standard product.
- Explain how CPT content is organized throughout CPT® Link files.
- Explain which CPT® Link file should be imported into an electronic system.
- Demonstrate how common queries can be executed using CPT® Link files.
- Describe additional files that should be generated from CPT® Link to efficiently and effective implement CPT content in electronic systems.
Modules
The CPT® Link Component of the Implementation Framework includes four modules:
Module One: Introduction to CPT® Link – This module provides an overview of CPT® Link including
the folders and file structures.
Module Two: Understanding CPT® Link – This module describes the content contained within CPT® Link and how it relates to the CPT® Professional Edition book.
Module Three: Using CPT® Link – This module describes how to query CPT® Link when it has been imported into a database.
Module Four: Optimizing CPT® Link – This module describes how to improve the usage of CPT® Link.
Each module is structured as follows. Note that some sections may not apply to a specific module.
Introduction – An introduction to the topic being discussed and why it is important.
- Intended Audience – The intended audience for the module.
- Learning Objectives – A list of learning objectives that will be covered in the module.
Main Module Content – The main content may consist of five main sub-sections.
- Personnel – People who are involved in the topic.
- Tooling – Tooling and requirements that are required to apply the approach.
- Approach – The approach or methodology specific to a topic
- Process – The interaction between personnel with other personnel and/or tooling.
- Challenges – Challenges associated with applying the approach.
Practical Use Example – An example of how the approach has been used.
MODULE ONE: Introduction to CPT® Link
Introduction
The purpose of this module is to introduce readers to the folders and files contained in CPT® Link.
CPT® Link can be generally described as follows:
"CPT® Link is an ontology-based version of CPT. The content is structured to provide a
computer-executable set of CPT data files for systematic processing and integration of
CPT codes with other data elements."
CPT® Link can be obtained from the AMA (AMA CPT Licensing overview information at https://cpt-international.ama-assn.org/importance-licensing-cptr-content and is delivered via a zipped file that is downloadable from an emailed link. The zipped CPT® Link file contains the CPT® Link Release Notes file in PDF format, and five folders:

The core CPT content is contained in the CPT® Link and standard folders.
As the focus is specifically on the CPT® Link folder, in this module, the folders html, cpt_snomed_map, and snomed_map are out of scope. The folder html is a derivative of the contents in the CPT® Link folder and is essentially a human-readable version of CPT® Link while the two other folders contain maps between CPT® content and SNOMED CT® content.
Intended Audiences
This module is intended for all audiences as it provides an introduction to CPT® Link.
Learning Objectives
After reviewing the content in this module, the reader is expected to be able to:
- Describe the files contained in CPT® Link product.
- Describe the files contained in the CPT Standard data product.
Introduction to CPT® Link
CPT® Link Files
CPT® Link is distributed through five file formats:
- OWL (Web Ontology Language)
- XML (eXtensible Markup Language)
- Pipe-delimited text files
- Tab-delimited text files
- XSLX (Open XML spreadsheet) or more commonly referred to as Microsoft Excel files
These files contain essentially identical CPT® content but in different machine-processable file formats. The OWL and XML formats are contained in a single file each, while the pipe-delimited and tab-delimited text files are distributed in more than 20 files. In addition, CPT® Link also includes human-readable representations of the CPT content in two other file formats:
- Spreadsheet files
- PDF files
The focus of this module is on the files in tab-delimited text format.
Overview of folders and files
The tab-delimited text files are distributed across five sub-folders in the main CPT® Link folder. The following table provides a brief description of each folder and the number of tab-delimited text files in each folder.

It should be noted that while the tab folder contains the core CPT content in the tab-delimited format, there are also tab-delimited files in the other four folders.
Data Types
The data contained in the release files are either numeric or text. These generic data types can be used to define the data types in a database table for the columns in each file.

Category I CPT codes contain only digits, but Category II and Category III CPT codes contain alphanumeric characters. Therefore, columns in the files that refer to CPT codes are labeled as text. There are some columns that contain dates. However, the dates do not strictly adhere to the YYYYMMDD format as they contain values such as "Pre-1990" and therefore these columns are labeled also as text. The numeric columns are mainly used for the CPT® Link concept identifier, which is a serial internal identifier used for various terminology management purposes.
Tab
The tab folder includes five files that contain the core CPT content including all CPT codes, modifiers, descriptors, and guidelines.

Type
The Type file contains a list of property types and relationships used in the Property and Relationship files. CPT content in the Property and Relationship files are stored using the Entity-Attribute-Value, or EAV, structure. The Type file contains the values for the Attributes.
Specification
The following table lists the columns in the Type file.

Sample Rows
The following table shows several sample rows:

Property
The Property file contains tab-delimited records for the text in the CPT® Professional Edition book.
Specification
The following table lists the columns in the Property file.

Sample Rows
The following table shows several sample rows.

Relationship
The Relationship file contains the relationships between CPT® Link concepts. The relationships include hierarchical relationships as well as links to SNOMED CT concept identifiers that are used to define CPT codes.
Specification
The following table lists the columns in the Relationship file.

Sample Rows
The following table shows several sample rows.

Relationship Group
The Relationship Group file is similar to the Relationship file but contains two additional columns (Role Group and Or Group).
Specification
The following table lists the columns in the Relationship Group file.

Sample Rows
The following table shows several sample rows.

Index
The Index file contains information from the CPT® Professional Edition book and contains nine columns that describe index entries.
Specification
The following table lists the columns in the Index file.

Sample Rows
The following table shows several sample rows. Due to a lack of space, Ref Descriptor, which refers to a CPT® code Long Descriptor, is not shown. The columns Sub3 and Sub4 are also omitted from the sample rows as they are blank.

History
The History folder contains seven types of historical files to track the changes made to CPT content:

History
The History file lists the additions and deletions of CPT codes and headings and identifies the applicable annual releases of CPT content. The History file has the following scope:

Specification
The following table lists the columns in the History file.

Sample Rows
The following table shows several sample rows. The Date column, which contains a value of 20190101 for all rows in the sample, has been omitted due to a lack of space.

History Modifiers
The History Modifiers file lists the addition and deletion of modifiers, and changes to the descriptors. This is available as of 2015 and includes the First Appearance of the modifier for modifiers added prior to 2015.
Specification
The following table lists the columns in the History Modifiers file.

Sample Rows
The following table shows several sample rows.

History Reference
The History Reference file includes a crosswalk for CPT® codes that have been deleted, and available replacement CPT codes.
Specification
The following table lists the columns in the History Reference file.

Sample Rows
The following table shows several sample rows.

History Refer To Descriptor Instruction
The History Refer To Descriptor Instruction file contains the list of deleted CPT® codes and the replacement CPT codes. This file can be considered a "View" but is important because it links the Instruction to the deleted and replacement CPT codes, which is not available in the History Reference file.
Specification
The following table lists the columns in the History Refer To Descriptor Instruction files.

Sample Rows
The following table shows several sample rows. Note that the Deleted Descriptor and Refer To Descriptor have been truncated to save space. The truncated descriptors have been replaced with ellipses (…).

Renumbered Codes Citations Crosswalk
The Renumbered Codes Citations Crosswalk file is a representation of the data contained in Appendix M of the CPT® Professional Edition book. There is also the Renumbered Codes Citations Crosswalk Descriptors file that includes the Long Descriptors of the deleted and replacement CPT codes.
Specification
The following table lists the columns in the Renumbered Codes Citations Crosswalk file.

Sample Rows
The following table shows several sample rows.

Deleted
The Deleted file is an additional file, which is a listing of deleted CPT® concepts. The same deletion information contained in the Deleted file is also present in the History file.
Specification
The following table lists the columns in the Deleted file.

Sample Rows
The following table shows five sample rows:

Changes annual and incremental
CPT® Link includes a variety of change files that track the changes between a CPT content release against a minor (incremental) release or a major (annual) release. There are eight main change files, which are listed in the following table.

Changes
The Changes and Changes By Section files contain the changes that have occurred to the CPT® codes and Guidelines sections from the prior release (they consist of the change type and values before and after the change).
Specification
The following table lists the columns in the Changes and Changes By Section files.

Sample Rows
The following tables show three sample rows from Changes By Section. Sample rows are only shown from this table as it is the most comprehensive of all the Change tables. As the table contains 14 columns, the table has been split into two.
Part 1 of table

Part 2 of table

Changes Modifiers
The Changes Modifiers file contains the changes that have occurred to the CPT® Modifiers section from the prior release (it consists of the change type and values before and after the change).
Specification
The following table lists the columns in the Changes Modifiers file.

Sample Rows
The following table shows several sample rows.

Changes Refer To
There are five main files that contain deleted CPT® codes and the replacement CPT codes:
- Changes Refer To
- Changes Refer To Descriptor
- Changes Refer To Descriptor Instruction
- Changes Refer To Descriptor By Section
- Changes Refer To Descriptor Instruction By Section
Specification
The following table lists the columns in the five Changes Refer To files.

Sample Rows
The following tables show three sample rows from Changes Refer To Descriptor Instruction By Section. Sample rows are only shown from this table as it is the most comprehensive of all the Change Refer To tables.
As the table contains 13 columns, the table has been split into two.
Part 1 of table

Part 2 of table

Edits
The Edits folder contains files that can be used to validate CPT guidelines. There are three files in the Edits folder.

Days
The Days file contains a list of CPT codes that include parenthetical notes referring to specific numbers of days (eg, 30 days, 90 days). The CPT codes in the Days file are from the Evaluation and Management section. The purpose of this file is to show that the same codes can be reported again after a certain number of days.
Specification
The following table lists the columns in the Days file.

Sample Rows
The following table shows several sample rows. As Code 2 contains the same value as Code 1, and Descriptor 2 contains the same value as Descriptor 1, Code 2 and Descriptor 2 have been omitted from the sample rows to save space.

Exclude
The Exclude file is a machine-processable file that corresponds to CPT parentheticals for instances when CPT codes must not be reported together. It should be noted that these parentheticals are not linked to the human-readable guidelines contained in the Property file.
Specification
The following table lists the columns in the Exclude file.

For consistency, Code 1 always contains the lower numerically sorted value when compared to Code 2. For example, the code 01916 is a smaller numerical value than code 01924, so 01916 is stored in column Code 1 while 01924 is stored in Code 2.
Sample Rows
The following table shows several sample rows.

Report With
The Report With file is a machine-processable file that corresponds to CPT® parentheticals for instances when a CPT code must be reported in conjunction with another CPT code. If a CPT code occurs multiple times in Code 1, that means it must be reported with at least one other CPT code in Code 2. It should be noted that these parentheticals are not linked to the human-readable guidelines contained in the Property file.
Specification
The following table lists the columns in the Report With file.

Sample Rows
The following table shows several sample rows.

List of CPT®Llnk files
The following table lists all CPT® Link folders and files from 2019 CPT® Link.





CPT® Standard Files
According to the ReadMe file,
"The CPT data files provide fixed and tab-delimited format text files of the five-character CPT codes along with the short, medium and long procedural descriptors."
The standard data files include a combination of documents and descriptor files.
Documents
The CPT standard product includes 12 documents, which are listed in the following table.

Descriptors
The CPT descriptors and modifiers are available in seven files:

Clinician Descriptors
According to the Clinician Descriptors’ ReadMe file,
"The purpose of the Clinician Descriptors (CDs) is to clearly and specifically describe precisely the procedure or service performed by a physician or qualified healthcare professional at the point of care. CPT Clinician Descriptors will also reflect the granularity necessary to accurately describe clinically relevant information not included in the core CPT code set. As a result, many existing CPT codes will be mapped to more than one CD. These CDs will be easily understandable to the physicians or other qualified healthcare professionals who have little or no knowledge of coding and are primarily concerned with the clinical representation of the data rather than the administrative or reimbursement component of the data. The CPT® Category II and Category III codes are considered to be out of scope for this release."
Specification
The following table lists the columns in the Clinician Descriptors file.

It should be noted that the Clinician Descriptor Id is only available in this file and not the CPT® Link files.
Sample Rows
The following table shows five sample rows.

Consumer Friendly Descriptors
Consumer Friendly Descriptors are translations of the CPT Long Descriptors into layman’s terms. There is one Consumer Friendly Descriptor for each CPT code. Unlike the Clinician Descriptors, Consumer Friendly Descriptors do not have a numeric identifier.
Specification
The following table lists the columns in the Consumer Friendly Descriptors file.

Sample Rows
The following table shows five sample rows.

MODULE TWO: Understanding CPT® Link
Introduction
The purpose of this module is to describe the CPT content that is contained in the CPT® Link files.
Intended Audiences
The intended audiences for this module include
- Health information management professionals
- EMR vendors
- Software developers
- Database managers
Learning Objectives
After reviewing the content in this module, the reader is expected to be able to:
- Explain how CPT content is incorporated into CPT® Link files.
Understanding CPT® Link
To reiterate, CPT® Link is made available in five file formats, one of which is the tab-delimited file. The
tab-delimited files store CPT content across four main files:
- Type
- Property
- Relationship Group
- Index
The content in the Relationship file is contained in the Relationship Group file so it is excluded from discussion in this section. The content in the Property and Relationship Group files are stored in an Entity-Attribute-Value (EAV) structure with some additional columns in the Relationship Group file. The Attribute column in the Property table is the Property Type Id, while the column in the Relationship Group table is the Relationship Type Id. The "types" are defined in the Type table.
The Type table contains metadata as opposed to CPT content in that it provides a text label for the codes in the Property Type Id and Relationship Type Id columns. The rows in the Type table are grouped into categories.
Type
The Type file contains a list of property types and relationships used in the Property and Relationship files.
Each Type is assigned one of three categories:

The full list of types is shown in the following table.





Property
CPT® Link contains eight main groups of properties:
- Codes – Types of codes.
- Descriptor – Types of CPT descriptors.
- Guidelines – CPT guidelines and parentheticals.
- Designations – Attributes or properties about a CPT code.
- History – Information about when an item first appeared and was last revised.
- RVUs – Relative value units.
- SNOMED CT – SNOMED CT concept identifiers and fully specified names.
- Other – Other property types that do not fit in the previous categories.
This grouping is not included in CPT® Link but helps to explain the types of content available in CPT® Link.
The following sub-sections describe each of these groups of properties.
Codes
The following table lists the main types of codes contained in CPT® Link (excluding SNOMED CT®).

CPT® Link also contains two main types of headings:
- CPT headings
- SNOMED CT–related headings
Unlike the types of codes, these headings do not have specific Property Type Ids.
The remaining CPT content is centered on these seven types of codes and two types of headings. The following table shows the relationship between the types of codes and headings and the different types of properties.

Note: There are 28 property types that refer to RVUs. They have been combined in the last column of the table.
CPT® Link contains seven main types of descriptors. Each type of code has at least one type of descriptor [i.e., Descriptor (Property Type Id = 106)]. The following table lists the types of descriptors.

CPT codes are divided into three categories:
- Category I
- Category II
- Category III
Long Descriptor, Medium Descriptor, and Short Descriptor are available for CPT codes in each category. Each Category I CPT code has one or more Clinician Descriptors and exactly one Consumer Friendly Descriptor. The following table summarizes the cardinality of type of descriptors applicable for each category of CPT codes.

CPT® Link contains two types of guidelines:

CPT guidelines are stored in the Property file and have the Property Type Id of 100 or 122. The CPT guidelines currently are applied to CPT codes, Global Period Codes, Modifier Codes, Place of Service Codes and Headings. On the other hand, Additional Guidelines (parentheticals) are cross references of guidelines at the CPT code level. The following table summarizes the Guidelines and Additional Guidelines (parentheticals) that are applicable to the types of CPT content.

Seven types of CPT codes contain designations (attributes or properties) that indicate whether certain criteria are applicable to a code. Each designation (except 107, Exempt_Mod) contains a value of T (True) or F (False).

For example, the CPT code 90833 – Psychotherapy, 30 minutes with patient when performed with an evaluation and management service (List separately in addition to the code for primary procedure) includes three designations:

The T in the first row indicates the procedure is an add-on procedure. The T in the second row indicates the procedure is a reportable code. The T in the last row indicates the procedure is for telemedicine.
Historical tracking
The Historical Tracking properties contain information about when an item first appeared and was last revised. They are applicable to all codes and headings including SNOMED CT. The change history is not currently in use.

Examples are shown in the following table. If a code or heading has not been revised, the code or heading will not contain a record for the Last Revised.

In CPT® Link, each Category I CPT code and HCPCS Level II modifier code include a set of relative value units (RVUs). There are also certain Category II and III CPT codes that have an attached set of RVUs. It is important to note that while the CPT® Link product supports the inclusion of RVUs for these code types, Category I CPT codes are typically the only ones that have any RVU values.
There are four main categories of relative value units:
- Regular
- Professional
- Technical
- Discontinued
Each category of RVU has seven values:
- Work
- Facility Practice Expense
- Non-facility Practice Expense
- PLI
- Total Facility
- Total Non-facility
- Medicare Global Period
The Property Type IDs for the four categories and seven values are shown in the following table:

For example, the CPT® code 99201 – Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components has the following RVUs:

SNOMED CT codes only have two applicable property types. Each SNOMED CT code must have one concept identifier and a full specified name.

SNOMED CT headings have only one applicable property type, that is, the descriptor.

The 17 SNOMED CT headings are shown in the following table. Each SNOMED CT concept is categorized into one of these headings.

There are other properties in CPT® Link that do not fall within the previous groupings.

Level
Level (Property Type Id = 109) is applicable to any type of code and headings (excluding SNOMED CT). The levels aid in the re-creation of the CPT® Professional Edition book structure. The following table shows the 16 levels that are included in the 2019 release of CPT content.

The following table shows examples of levels and the corresponding heading or code.

Measure Developer
Measure Developer (Property Type Id = 127) is only applicable for CPT® Category II codes. As an example, the January 2019 release of CPT content included 540 CPT codes, developed by a total of 11 Measure Developers. The number of CPT codes by Measure Developer is listed below; the total of 605 reflects that some CPT codes had more than one Measure Developer.

Examples of CPT codes and the corresponding Measure Developers are shown in the following table.

Descriptor Element
Descriptor Element (Property Type Id = 128) is applicable only to CPT codes. The first three characters are a sorting sequence and should be truncated before displaying to users.
For example, the following table shows sample citations that were retrieved for the CPT code 80047 – Basic metabolic panel (Calcium, ionized) This panel must include the following: Calcium, ionized (82330) Carbon dioxide (bicarbonate) (82374) Chloride (82435) Creatinine (82565) Glucose (82947) Potassium (84132) Sodium (84295) Urea Nitrogen (BUN) (84520).

Citation
Citation (Property Type Id = 132) is applicable to any type of code and headings (excluding SNOMED CT). The first five characters are a sorting sequence and should be truncated before displaying to users.
For example, the following table shows sample citations that were retrieved for the CPT® code 00100 – Anesthesia for procedures on salivary glands, including biopsy.

Coding Tip
Coding Tip (Property Type Id = 133) is applicable to any type of code and headings (excluding SNOMED CT). The first three characters are a sorting sequence and should be truncated before displaying to users. The coding tip will usually include three parts:
- Title of the coding tip
- Coding tip
- Source or reference of the coding tip
For example, the following table shows the coding tip that were retrieved for the heading Debridement Procedures on the Skin.

Proprietary Name
Proprietary Name (Property Type Id = 134) is applicable for CPT codes that are listed in Appendix O of the CPT® Professional Edition book (including codes ending on M). The 2019 CPT content release includes 91 Proprietary Names. Examples are shown in the following table.

There are four main types of relationships:
- Hierarchical – Relationships to create the structure of the CPT® Professional Edition book.
- Defining – Relationships to define CPT codes with SNOMED CT concepts.
- Historical – Relationships to link deleted CPT codes with replacement CPT codes.
- Specialty – Relationships to link CPT codes to clinical specialties.
The following table lists the property types in each group.

The Hierarchical relationships are used to create the structure of the CPT Professional Edition book.
The root CPT® Link concept identifier is 1002795 and it has the following properties:

To recreate the CPT® Professional Edition book headings, the hierarchical relationships of this root concept are queried. For example, the "children" of the root concepts are listed in the following table in alphabetical order.

The "children" concepts can be retrieved for each of these headings to identify further sub-headings. With a recursive look up of the hierarchical relationships, the entire CPT® Professional Edition book structure can be recreated.
Defining
The Defining relationships are used to define CPT codes with SNOMED CT concepts.
For example, the CPT code 99201 – Office or other outpatient visit for the evaluation and management of a new patient, which requires these 3 key components is defined with nine SNOMED CT concepts.

Historical
The Historical relationships are used to link deleted CPT codes with replacement CPT codes.
There are two types of historical relationships:

For example, the "refer to" historical relationships for the deleted CPT code 10022 – Fine needle aspiration; with imaging guidance can be used to identify potential replacement CPT codes:

Specialty
Specialty relationship is a mapping from CPT code to provider specialties. Provider specialties are based on the NUCC Healthcare Provider Taxonomy (nucc.org). These are represented as concepts organized into a hierarchy as specified by NUCC. Each provider concept has a NUCC Provider Code property and a descriptor property. Certain classification level concepts that do not have a NUCC supplied code have been assigned a 4-digit code derived from the specialization level codes. The provider codes root concept has an ID of 1030007.
The children of 1030007, Provider Codes are listed below:

As its name implies, the Index file stores the index to CPT® headers and codes. The data contained in this file can be used to generate an index that is similar to the one contained at the back of the CPT® Professional Edition book.
For example, the five rows in the Index file:

will allow for the construction of the following index:

The Index file also contains the detailed list of CPT codes in the Reference column as discrete rows so it is not necessary to parse the ranges to determine the CPT codes.
MODULE THREE: Using CPT® Link
Introduction
The purpose of this module is to provide examples on how to retrieve CPT content from CPT® Link.
Intended Audiences
The intended audiences for this module include
- Health information management (HIM) professionals
- EMR vendors
- Software developers
- Database managers
Learning Objectives
After reviewing the content in this module, the reader is expected to be able to:
- Explain which CPT® Link files should be imported into an electronic system.
- Demonstrate how common queries can be executed using CPT® Link files.
Using CPT® Link
This section describes how CPT content can be queried once it has been imported into a database. The queries covered include:
- How to import CPT® Link files?
- How to retrieve CPT codes?
- How to retrieve other codes and descriptors?
- How to retrieve CPT headings?
- How to retrieve SNOMED CT concepts?
- How to retrieve CPT guidelines?
- How to retrieve relative value units?
- How to construct the CPT hierarchy?
- How to track changes in CPT content?
How to Import CPT® Link Files?
Choosing files to import
CPT® Link includes normalized CPT data files as well as edits (denormalized files or "views"). The following table lists the normalized files that should be imported into a database. The "views" can be generated from the normalized files contained in a database to avoid storing redundant content.

Notes
- The contents of the Relationship file are contained in the Relationship Group file, so it is not necessary to import the Relationship file.
- The contents of the Deleted file are contained in the History file, so it is not necessary to import the Deleted file.
Choosing database table names
There are several recommendations for choosing database table names:
- Start table names with a prefix of "CPT_"
- Exclude spaces from table names
- Shorten the names of long table names
The following table lists the table name and CPT® Link files that will be imported into each table.

There are several recommendations for choosing table column names:
- Exclude spaces from table names
- For columns that refer to identifiers, use "Id" instead of "ID"
- For columns that refer to CPT codes, use "CPTCode" instead of "Code"
Imported rows
The following table lists the number of rows that should be imported into the tables based on the example of the 2019 CPT content release.

How to retrieve CPT codes?
CPT codes have a PropertyTypeId=104. The following query can be used to retrieve all CPT codes.

This query will retrieve 10,294 rows in the 2019 CPT content release. The first five rows are shown in the following table.

There are five types of CPT descriptors that are stored in the CPT_Property table. The types of descriptors and the associated Property Type Ids are shown in the following table.

How to retrieve all long descriptors?
The following query can be used to retrieve all CPT Codes and Long Descriptors:

This query will retrieve 10,294 rows in the 2019 CPT content release. The first five rows are shown in the following table.

How to retrieve the long descriptors for a CPT code?
The following query can be used to retrieve the Long Descriptor for a CPT code:

How to retrieve all long, medium, and short descriptors?
The following query can be used to retrieve all CPT Codes, Long Descriptors, Medium Descriptors, and Short Descriptors in multiple columns:

This query will retrieve 10,294 rows in the 2019 CPT content release. The following table shows five sample rows.

How to retrieve the long, medium, and short descriptors for a cpt® code?
The following query can be used to retrieve the CPT Long Descriptors, Medium Descriptors, and Short Descriptors for a CPT code:

How to retrieve all consumer friendly descriptors?
Each Category I CPT code can have one and only one Consumer Friendly Descriptor. The following query can be used to retrieve all CPT Codes, Long Descriptors and the corresponding Consumer Friendly Descriptors in multiple columns.

This query will retrieve 9,732 rows in the 2019 CPT content release. The following table shows five sample rows.

How to retrieve all clinician descriptors?
Each Category I CPT code has at least one Clinician Descriptor. The following query can be used to retrieve all CPT Codes, Long Descriptors, and the corresponding Clinician Descriptors in multiple columns.

This query will retrieve 27,319 rows in the 2019 CPT content release. The following table shows five sample rows.

It should be noted that the Property file does not contain the Clinician Descriptor identifiers. The Clinician Descriptor identifiers are available in the CPT Standard Data Files.
How to retrieve clinician descriptor(s) for a CPT code?
The following query can be used to retrieve all Clinician Descriptors for a CPT code:

How to Retrieve Other Codes and Descriptors?
Excluding CPT codes and SNOMED CT concepts, there are other six main types of codes that are stored in CPT® Link.

Each of these codes has a corresponding descriptor (PropertyTypeId = 106). The following query can be used to retrieve all the codes and descriptors for a particular type of code.

For example, when PropertyTypeId = 129, the previous query will retrieve all modifier codes and descriptors. The following table shows five sample rows.

How to Retrieve SNOMED CT Concepts?
SNOMED CT content is stored in the CPT_Property and CPT_Relationship tables. The CPT_Property table stores the SNOMED CT concept identifier and fully specified name. The PropertyTypeIds are shown in the following table.

The following query can be used to retrieve all SNOMED CT concept identifiers and fully specified names:

This query will retrieve 5,727 rows in the 2019 CPT content release. The following table shows five sample rows.

How to retrieve SNOMED CT definitions for a CPT code?
Most CPT codes could be mapped with SNOMED CT concepts. The following query can be used to retrieve all SNOMED CT concept identifiers and fully specified names for a specific CPT code:

For example, when $CPTCode=99201, the previous query will retrieve the following rows:
How to Retrieve Guidelines?
CPT® Link includes two types of guidelines:
- Human-readable guidelines – Guidelines that can be read and understood by individuals using CPT.
- Machine-processable guidelines – Guidelines that are used in software applications that correspond to the human-readable guidelines.
how to retrieve human-readable guidelines?
Human-readable guidelines are stored in two property types:

The following query can be used to retrieve the guidelines for a CPT code:

For example, when $CPTCode=10006, this query will retrieve the following rows:

The first three characters are a sorting sequence. Including the colon and space, the first five characters can be removed when displaying to a user.
How to retrieve additional guidelines?
The following query can be used to retrieve the guidelines for a CPT code:

For example, when $CPTCode=10006, the previous query will retrieve the following rows:

How to retrieve machine-readable guidelines?
In the previous example, the following human-readable guidelines were retrieved:
001: (Use 10006 in conjunction with 10005)
002: (Do not report 10005, 10006 in conjunction with 76942)
Use XXXXX in Conjunction with YYYYY
The "Use XXXXX in conjunction with YYYYY" machine-processable guidelines are stored in the Report With file. The following query can be used to retrieve the machine-processable guidelines where two CPT® codes must be reported together.

For example, when $CPTCode=10006, the previous query will retrieve the following row:

Do Not Report XXXXX with YYYYY
The "Do Not Report XXXXX with YYYYY" machine-processable guidelines are stored in the Exclude file. The following query can be used to retrieve the machine-processable guidelines where two CPT® codes must not be reported together. As Code1 stores a CPT code that is smaller numerically than Code2, it is necessary to retrieve results in both Code1 and Code2.

For example, when $CPTCode=10006, the previous query will retrieve the following rows:

How to Retrieve Relative Value Units?
There are four main categories of relative value units:
- Regular
- Professional
- Technical
- Discontinued
Each category of RVU has seven values:
- Work
- Facility Practice Expense
- Non-facility Practice Expense
- PLI
- Total Facility
- Total Non-facility
- Medicare Global Period
The Property Type IDs for the four categories and seven values are shown in the following table.

The following SQL statement can be used to retrieve the "regular" RVUs for a CPT® code. To retrieve RVUs for a HCPCS Level II code, change 104 to 136 (HCPCS Level II Code).

To retrieve RVUs for the Professional, Technical, and Discontinued RVUs, change the corresponding PropertyTypeIds where the values are 138, 139, 140, 141, 142, 143, and 144.
For example, when $CPTCode=99201, this query will retrieve the following rows:

How to Construct the CPT Content Hierarchy?
CPT concepts are organized into a hierarchical structure, with the root CPT concept having the identifier of 1002795. The following query can be used to retrieve the child concepts with the descriptor.

For example, when $ConceptId=1002795, the previous query will retrieve the following rows:

The rows are sorted by the Descriptor. To remove the sorting, remove the "ORDER BY Descriptor" portion of the SQL statement. It should be noted that in the CPT® Professional Edition book, the CPT sections are sorted as follows:
- Evaluation and Management Services
- Anesthesia
- Surgery
- Radiology Procedures
- Pathology and Laboratory Procedures
- Medicine Services and Procedures
- Category II Codes
- Category III Codes
- Administrative Codes for Multianalyte Assays with Algorithmic Analyses (MAAA)
However, CPT® Link does not include a sequence column to identify the preferred or recommended sorting sequence.
To retrieve the child concepts, run the same SQL statement but replace the $ConceptId with the CPT® Link concept you are reviewing.
How to Track Changes in CPT Content?
CPT history is recorded in three main files:
- History
- History Modifiers
- History Reference
The History and History Modifiers files both include a column Change Type, which stores one of three values:
- ADDED
- CHANGED
- DELETED
It should be noted that the annual and incremental changes include more details on the type of change. The changes in the History file are limited to six types of tracking:

The History file contains columns PriorValue and CurrentValue. The column will be null, depending on the type of change:

How to track new, changed, or deleted content?
The following statement can be used to identify CPT descriptors or headings that have been added, changed, or deleted in a specific release. Replace $ChangeType with ADDED, CHANGED, or DELETED, and $Release with a specific CPT content release in the format YYYYMMDD.

For example, replacing $ChangeType with DELETED and $Release with 20190101 will yield 104 rows, five of which are shown in the following table.

How to track replacement CPT codes?
The History Reference file contains a list of replacement CPT codes for deleted CPT codes. As mentioned in an earlier section, the History Reference file contains a format similar to the Relationship and Relationship Group files and has been imported into the CPT_Relationship table. There are two types of historical relationships:

How to retrieve "replaced by" CPT codes?
The following query can be used to retrieve replacement CPT codes for deleted CPT codes:

Returning to the previously deleted CPT code 0374T and the instruction:
0374T has been deleted. To report, use 0373T
When $CPTCode=0374T, this query will retrieve the following row:

How to Retrieve "Refer To" CPT Codes?
The following query can be used to retrieve replacement CPT codes for deleted CPT codes:

Returning to the previously deleted CPT® code 10022 and the instruction:
10022 has been deleted. To report, see 10005, 10006, 10007, 10008, 10009, 10010, 10011, 10012
When $CPTCode=10022, this query will retrieve the following rows:

MODULE FOUR: Optimizing CPT® Link
Introduction
CPT® Link contains the core CPT content. However, the structures of the CPT® Link files are not necessarily optimized for use in electronic systems. The purpose of this module is to provide additional information on optimizing CPT® Link for use in electronic systems.
Intended Audiences
The intended audiences for this module include
- EMR vendors
- Database managers
- Software developers
Learning Objectives
After reviewing the content in this module, the reader is expected to be able to:
- Describe additional files that should be generated from CPT® Link to efficiently and effectively implement CPT content in electronic systems.
Optimizing CPT® Link
To optimize the use of CPT® Link, six files should be generated.
- Modifiers – A list of modifiers to be used with CPT codes.
- Hierarchy – A list of CPT hierarchical relationships and descriptors.
- History – A list of historical relationships and descriptors.
- Code-Code Guidelines – A combination of human-readable and machine-processable CPT code guidelines.
- Code-Modifier Guidelines – A combination of human-readable and machine-processable CPT code and modifier code guidelines.
- Modifier-Modifier Guidelines – A combination of human-readable and machine-processable CPT modifier guidelines.
For simplicity, in the sample specifications, columns such as StartDate, EndDate, and Active, which enable version control, are not stated but should be used in actual implementations.
Modifiers
The modifiers file lists the modifiers for use with CPT codes.
The following table shows an example specification of how the modifiers and associated human-readable guidelines can be stored in a table structure.

The following table shows sample rows for the modifiers file.

The hierarchy file combines the Is_A relationships from the Relationship file, and the Descriptor from the Property file to create a hierarchy file without the need to query both files.
Suggested Specification
The hierarchy file is used to create the CPT sections and headings.

The following table shows sample rows using the suggested specification.

The history file links inactivated CPT codes with replacement CPT codes.
Suggested Specification
The following table shows an example specification of how the historical relationships can be stored in a table structure.

The following table shows sample rows using the suggested specification. In this example, ellipses are used in the descriptors as the descriptors are lengthy.

Code-Code Guidelines
As described in Module 1, CPT® Link includes two files that contain machine-processable CPT guidelines.

The challenge with these two files is that the machine-processable guidelines are not linked with the human-readable guidelines. For example, in the Report With and Exclude files, we have the following rows:

For the Report With rows, Code 1 contains the add-on code while Code 2 contains the primary code. This means that 33367 is an add-on code and MUST be reported in conjunction with the primary code 33361 or 33362 (among other primary codes not shown in the table). For the Exclude rows, Code 1 and Code 2 MUST NOT be reported together. This means code 33367 MUST NOT be reported with 33368 or 33369. The human-readable guidelines are stored in the Property file.
The concept identifier for 33367 is 1020972, and rows in the Property files that refer to Guidelines are shown in the following table.

The first row corresponds to the Report With rows in the previous table while the second row corresponds to the Exclude rows in the previous table.
Suggested specification
The following table shows an example specification of how the human-readable and machine-processable guidelines can be stored in a table structure.

Sample Rows
The four rows from the Report With and Exclude files in the above example can be stored in the following table.

Code-Modifier Guidelines
There are guidelines within CPT® content that define when modifiers MUST NOT be used in conjunction with a specific CPT code. There are also guidelines that define when modifiers MUST NOT be used with CPT codes from a specific CPT section.
To efficiently and effectively implement CPT content in electronic systems, the following set of CPT code-modifier guidelines in a machine-processable format need to be developed:
- When a modifier MAY be reported with a CPT code
- When a modifier MUST NOT be reported with a CPT® code
- When a modifier MAY be reported with CPT codes from a specific section
- When a modifier MUST NOT be reported with CPT codes from a specific section
Unlike the code-code guidelines that are represented as machine-processable guidelines in CPT® Link, there are only human-readable guidelines for the use of modifiers.
The use of CPT modifier guidelines can be found in multiple places in CPT® Link:
- The property type 107 is Exempt_Mod, which contains "51" or "63" for codes where modifiers 51 or 63 are exempt from the CPT code.
- The property type 100 for Guidelines, which can apply to a section, code or modifier level.
- The property type 106 for Descriptors.
Examples of the guidelines are shown in the following table.

The following table shows an example specification of how the human-readable and machine-processable guidelines can be stored in a table structure. This table structure allows the guidelines to be specified at a code-modifier level and at a heading-modifier level. If a row in the table refers to a heading or section, the CPTCode column is left blank.

The guideline "Do not report modifier 50, Bilateral procedures, in conjunction with add-on codes" means that modifier 50 is prohibited from being used with any add-on procedures. As an example, in the 2019 CPT® release, there were approximately 500 add-on procedures. This means that each add-on procedure must be represented as a row in the code-modifier table. For example, 13102 - Repair, complex, trunk; each additional 5 cm or less (List separately in addition to code for primary procedure) must have a corresponding guideline in the table:

The guideline for modifier 76 - Repeat Procedure or Service by Same Physician or Other Qualified Health Care Professional states that "This modifier should not be appended to an E/M service." The "should not" is actually interpreted as “MUST NOT be reported with” an E/M service. Conversely, it MAY be reported with CPT codes from the other five sections.
The following table lists the six CPT sections and the CPT® Link concept identifier.

Representing that modifier 76 MUST NOT be used with E/M services can be represented as:

CPT content does not officially have any modifier-modifier guidelines. However, there are logical guidelines that should be in place. Logically, the laterality of bilateral, right, and left MUST NOT be used in conjunction with each other.
Suggested specification
The following table shows an example specification of how the human-readable and machine-processable guidelines can be stored in a table structure.

Sample rows
The following table shows sample rows using the suggested specification.

