Clinical Decision Support Development

We build clinical decision support that fires inside the clinician workflow: CDS Hooks services, SMART on FHIR sidebar apps, and rules engines with evidence a clinician can inspect. Multi-EHR, tuned against alert fatigue, and built to stay on the right side of the FDA's non-device line.

Clinical Decision Support

A clinical decision support system that reaches
the clinician at the moment of the decision.

Saga IT builds clinical decision support software: CDS Hooks services the EHR calls, SMART on FHIR sidebars that open with the patient in context, the rules engines that run your guidelines, the write-back that turns a decision into discrete data, and the registration and review each EHR vendor requires. Your clinical content stays yours. We build everything that makes it fire, on every EHR you run.

What We Build

Clinical decision support software, delivered as six kinds of work

Clinical decision support is only useful if it reaches the clinician at the moment of the decision, says something they can act on, and can be trusted enough to stay switched on. Each of these is its own engineering problem.

Where It Fires

The CDS Hooks a clinician actually hits

A hook is the moment the EHR pauses to ask your service a question. Choosing the right one is most of the design: the same rule at the wrong hook is noise.

Hooks defined in the HL7 CDS Hooks specification. Vendor support varies: Epic, Oracle Health, and MEDITECH each publish which hooks and prefetch resources they honour.
Hook When it fires What the EHR sends Typical decision support
patient-view Chart opened Patient, encounter, user Care gaps, risk flags, overdue screenings
order-select Order chosen, before signing Draft orders as FHIR resources Duplicates, cheaper equivalents, prior-auth needs
order-sign Orders about to be signed Final order set Interactions, dosing, contraindications
encounter-start Visit begins Encounter, patient Protocol enrollment, documentation prompts
encounter-discharge Discharge in progress Encounter, conditions, meds Follow-up scheduling, readmission risk
appointment-book Appointment being booked Appointment, patient Pre-visit labs, prep instructions

Building decision support on AWS? Procure the build through AWS Marketplace.

Procure through AWS Marketplace and draw down your committed AWS spend (EDP). No new vendor onboarding, no new paperwork.

Links to the AWS Marketplace listing ↗
Device or Not

Building clinical decision support that stays non-device

The FDA revised its Clinical Decision Support Software guidance in January 2026. Whether your CDS is regulated as a medical device turns on four criteria, and two of them are design decisions we make on your behalf.

All four criteria must be met for the non-device exclusion. Most clinical decision support software can meet them if the reasoning is designed to be visible from the start, which is why every card we build carries a link to its basis, whatever logic your team puts behind it.
520(o)(1)(E) criterion Non-device CDS Software as a Medical Device
Input Displays or analyzes medical information: labs, problems, meds, notes Acquires, processes, or analyzes a medical image, an IVD signal, or a waveform
Output Supports or recommends to a healthcare professional Provides a specific directive or acts without a professional in the loop
Reasoning Shows its basis so the professional can review it independently Hides the basis, or the professional cannot practically review it
Urgency Not intended for time-critical decisions where review is impossible Time-critical output the professional must act on immediately
Where we build it This page Our SaMD practice, IEC 62304 and ISO 14971

When the intended use crosses the line, on purpose or by scope creep, the work moves to our medical device software development practice, which follows IEC 62304 for the lifecycle and prepares the design history file. Our IEC 62304 compliance guide covers what that involves.

Healthcare integration delivered for

HL7 International Organizational Member
A Pattern We Have Shipped

Closing care gaps at the point of care, across three EHRs

The most common request we get is the same one under different names: the plan or the analytics team knows a patient has an open gap, and the clinician with the patient in front of them does not.

The hook: a patient-view CDS Hooks service evaluates the chart as it opens and returns one ranked card per open care gap PROBLEMSE11.9 Type 2 diabetesI10 HypertensionE78.5 Hyperlipidemiapatient-viewColorectal screening1 of 2Last result 2019 · 2 yrs overdueUSPSTF · Grade AA1c not on file2 of 2Diabetes on the problem listHEDIS · HBDOne card per open gap, ranked

The hook

A patient-view CDS Hooks service checks the patient against an eligibility engine when the chart opens and returns one card per open gap, ranked, with the guideline it came from. No card if there is nothing to say.

The sidebar: a SMART on FHIR app shows the evidence and a document option, and reconciling writes a discrete Condition to the problem list PROBLEM LISTI10 HypertensionE78.5 HyperlipidemiaZ12.11 Screening, colonwritten as a ConditionColorectal screeningEVIDENCEUSPSTF 2021 · Grade A · 45 to 75Options: colonoscopy, FIT, sDNADOCUMENTRECONCILEEXCEPTION

The sidebar

Accepting a card launches a SMART on FHIR sidebar that shows the evidence, lets the clinician document an exception, or reconcile the diagnosis, and writes the outcome to the problem list as a discrete Condition.

The data: Epic and Oracle Health expose FHIR R4, Allscripts exposes C-CDA; all three are assembled into one longitudinal record the rules run on EpicFHIR R4$everythingAllscriptsC-CDACCD documentOracle HealthFHIR R4$everythingONE PATIENT · ONE TIMELINEA1c 7.9Mar · EpicStatin startedJun · AllscriptsColonoscopyAug · OracleNOWrule firesSNOMED · LOINC · ICD-10, reconciled across sources

The data

Gap logic runs against the longitudinal record, assembled from FHIR where the EHR exposes it and from C-CDA documents where it does not, so the same rules fire identically on Epic, Allscripts, and Oracle Health.

The loop: every card reports its outcome through the feedback endpoint to an override-rate dashboard per measure, which the quality team uses to tune and retire rules Colorectal screeningShown 412 times this quarterUSPSTF · Grade AOUTCOMEclosed38%exception21%ignored41%feedbackOVERRIDE RATE · PER MEASURECOL41%HBDSPCBCSCBPCOL: rewrite or retire, their callTuned by whoever owns the rules

The loop

Every card reports its outcome through the feedback endpoint. Gaps closed, exceptions documented, and cards ignored all flow to the quality team's own dashboard, so tuning and retiring rules stays with the people who own the rules.

The full walkthrough, including the write-back design and why structured notes are not enough, is in Closing Care Gaps in the EHR Workflow.

Have a guideline that should fire in the workflow, or a CDS program that clinicians have stopped trusting? Let's scope it.

Talk to a Clinical Decision Support Engineer
Frequently Asked Questions

Common Questions

Related Services

Explore More Services

Keep reading

Related resources

Book a Consultation

Talk to a Clinical Decision Support Engineer

From a first CDS Hooks service to a multi-EHR decision support platform. Bring the guideline, we will build the workflow.

  • 15 min conversation
  • Healthcare IT engineers, not sales
  • Reply within one business day
Send a Message

Book a 30-min call · or email us and we'll reply within one business day.

Intent
Details
Contact
How can we help?

Pick whichever fits best. We'll take it from there.