CDS Hooks: Embedding Decision Support Directly in the EHR


Clinical Decision Support Hooks, or CDS Hooks, provide a way to embed prompts, messages and links into Electronic Health Record (EHR) systems so that clinicians can make better decisions on the fly. These smart tools are called “hooks” because they allow clinical messages to “hook” directly into an EHR, providing real-time decision support to healthcare professionals while they care for patients.

In this blog post, we’ll explore what CDS Hooks are, who uses them, and what they look like to clinicians. We’ll also provide some real-world examples of how these digital helpers are transforming patient care.

Types of CDS Hooks

The information that CDS Hooks display in EHRs is called a “card”. There are three types of cards that can be displayed:

  • Informational – a card that simply conveys information
  • Suggestion – a card that provides a suggest that the clinician can accept or reject
  • Link – a link to reference materials or apps that the clinician can load. CDS Hooks can also include a link to a SMART on FHIR app, which is an app that the clinician can launch directly from the card, without needing to log into that app separately!

Most EHRs highlight these cards in several different colors to indicate its level of importance. For example, a blue card is informational, orange denotes a warning and red indicates that the message is critical.

Examples of CDS Hooks

Imagine you’re a clinician and are documenting a patient’s history or making treatment decisions, and suddenly a discrete message or suggestion pops up on your EHR screen – that’s your CDS Hook at work! CDS Hooks are like a knowledgeable friend who chimes in when a clinician performs specific actions in their EHR.

Example Scenarios

Here are some typical examples of CDS Hooks:

  • Medication interaction alerts: When a doctor prescribes a medication, a CDS Hook can pop up, warning them about a drug allergy or a potential interaction with another drug that the patient is taking.
  • Clinical guidelines: If a clinician treats a patient with a complex condition, a CDS Hook can provide instant access to the latest treatment guidelines, ensuring that they’re delivering the best possible care.
  • Diagnostic assistance: When a doctor orders tests or imaging, CDS Hooks might suggest follow-up tests or procedures, helping them narrow down the diagnosis and ensure comprehensive patient evaluation.

Again, these prompts and messages appear within the EHR while the clinician is working, enabling them to interact with them without needing to log into a different system. The clinician can then choose to interact with them or can simply close them.


Here are a couple of screenshots of some typical “cards”.

The card below might appear when a clinician is ordering a medication in order to indicate that there’s a cheaper generic alternative.

CDS Hook – sample info

This card provides a warning to the clinician that the medication that they’re about to prescribe is not recommended for their patient. Note the orange border of the card on its left:

CDS Hook – medication alert

When are CDS Hooks Triggered?

CDS Hooks are part of the HL7 FIHR standard, which defines a common format for health data, making it easier for different health systems to interoperate. Since FHIR is an open standard, the types of hooks that are defined by the standard continue to evolve. At the current time, CDS Hooks 2.0 lists seven different types of hooks:


This hook is usually called only one time, at the beginning of a user’s interaction with a specific patient record in the EHR. It is triggered at the moment that the user opens the patient’s record. This hook sends basic information about the patient, the EHR user, and sometimes the encounter (if called during a patient appointment).


The hook fires when a practitioner selects one or more orders to place for a patient, such as for procedures, medications, lab tests or other things. This hook might also be called each time that the practitioner selects some information relating to the order, or only once.


This hook is triggered when a practitioner selects a person or organization to handle an order that was not previously marked as being handled by someone. Examples include selecting a cardiologist to take care of a referral, or selecting an imaging center to satisfy a radiology order.


This hook is triggered when a clinician is ready to sign one or more orders for a patient. It is one of the last hooks that are called before an order is promoted out of a “draft” status.


This hook is invoked when the EHR user schedules one or more appointments for a patient. It can be triggered anywhere between the start and the end of the booking process. This hook enables the CDS service to advise the EHR user on what appointments should be scheduled, when and where they should take place, as well as how to prepare the patient ahead of time.


This hook is triggered when a new patient encounter is started. In a hospital or clinical setting, this is typically the admission time. In an outpatient environment, this might be the time of patient check-in or remote encounter.


This hook is fired when the user performs a discharge process for an encounter, where the concept of “discharge” is relevant. It can be invoked at any time during the discharge process. It allows the CDS Hook to advise on whether discharge is appropriate, verify discharge medications, ensure necessary discharge documentation is present, etc.

Who Develops CDS Hooks, and How?

CDS Hooks are generally developed by third party developers in order to add new functionality to existing EHRs. Although the alerts and messages that are triggered by CDS Hooks appear inside the EHR, their code is hosted on external servers. Whenever a CDS Hook is triggered, it retrieves patient-related information from the EHR, processes it on external servers, and then sends the resulting content back into the EHR to display to the clinician.

Creating or defining CDS Hooks in an EHR involves a combination of technical configuration and clinical logic. Here is a high level overview of how CDS Hooks are typically established within an EHR:

  1. Identify the trigger event: Determine the specific clinical event or scenario that should trigger the CDS Hook. This could be anything from prescribing a medication to documenting a diagnosis, ordering lab tests, or entering patient data.
  2. Define the clinical criteria: Establish the clinical criteria or conditions that must be met for the CDS Hook to trigger. For example, if you want a CDS Hook to alert when a medication is prescribed, the criteria could include checking for potential drug interactions, allergies, or dose adjustments based on the patient’s medical history.
  3. Create the CDS logic: Develop the clinical logic or rules that will be applied to the identified trigger event. These rules should be based on evidence-based guidelines, best practices, and clinical standards. This logic defines when and how the CDS Hook should intervene. For example, if a patient is prescribed Drug A and has a known allergy to Drug B, trigger an alert.
  4. Implement the technical infrastructure: Work with your technology vendor to implement the necessary technical infrastructure for CDS Hooks. This might involve developing or configuring a specialized application to enable communication between the EHR and external clinical decision support systems or modules.
  5. Configure the CDS Hook: Within the EHR’s administrative interface, configure the CDS Hook by specifying the trigger event, the clinical criteria, and the associated clinical logic. This configuration process often involves selecting or customizing pre-defined templates or rulesets provided by the EHR or CDS system.
  6. Test and validate: Thoroughly test the CDS Hook in a controlled environment to ensure it functions as intended. Test cases should cover various scenarios to validate the accuracy and effectiveness of the alerts or interventions.
  7. Review and refine: Continuously review and refine the CDS Hook’s performance based on feedback from clinicians and ongoing assessment of its impact on patient care. Adjust the clinical criteria and logic as needed to improve the system’s relevance and accuracy.
  8. Monitor and maintain: After deployment, regularly monitor the CDS Hook’s performance, including its responsiveness, accuracy, and usability. Perform routine maintenance to keep it up-to-date with evolving clinical guidelines and standards.

It’s important to note that the specific steps and technical details involved in creating CDS Hooks may vary depending on the EHR system and clinical decision support tools that are being used. Collaboration between healthcare IT professionals and clinicians is crucial to ensure that CDS Hooks are tailored to meet the unique needs of the healthcare organization and its patient population.

Which EHRs Support CDS Hooks?

CDS Hooks are supported by all major EHRs – including Cerner, Epic Systems, Allscripts and athenahealth – as well as numerous smaller / specialty EHRs.

Wrapping It Up

As we have seen, CDS Hooks are like having a brilliant but subtle healthcare expert advise clinicians on intricacies of patient care.

When developing CDS Hooks, it’s best to work with a firm that has experience developing secure medical applications that comply with health data privacy and security regulations. Looking for someone to help you? Contact SiteRocket Labs.

Let’s Work Together. Tell us what you’re looking for. How can we help?

contact us