CPOE KPIs & Reporting
KPI Definitions
KPI-CPOE-001: CPOE Adoption Rate
Description: Percentage of all orders entered electronically through CPOE vs. total orders (including verbal, paper, fax).
Formula:
CPOE Adoption Rate (%) =
COUNT(medication_orders WHERE order_source IN ('direct', 'order_set'))
+ COUNT(laboratory_orders WHERE order_source IN ('direct', 'order_set'))
+ COUNT(imaging_orders WHERE order_source IN ('direct', 'order_set'))
/
COUNT(medication_orders) + COUNT(laboratory_orders) + COUNT(imaging_orders)
× 100
Data Sources:
medication_orders.order_sourcelaboratory_orders.order_sourceimaging_orders.order_source
Filters: Date range, department, provider, order type (medication / lab / imaging)
| Benchmark | Target | Source |
|---|---|---|
| Academic medical centres | 92–98% | PubMed literature |
| Community hospitals | 85–95% | PubMed literature |
| HIS target | ≥ 95% | DOH/DHA EHR mandate |
Visualisation: Line chart (trend over time by month), with department-level bar chart drill-down.
Monitoring: Monthly reporting; providers with < 80% CPOE use identified for targeted education.
KPI-CPOE-002: CDS Alert Override Rate
Description: Percentage of clinical decision support alerts overridden by providers, stratified by alert type and severity. A high overall override rate suggests alert fatigue; a high override rate on severe alerts is a safety concern.
Formula:
Alert Override Rate (%) =
COUNT(clinical_alerts WHERE alert_response = 'overridden')
/
COUNT(clinical_alerts WHERE alert_response IS NOT NULL)
× 100
Inappropriate Override Rate (%) =
COUNT(clinical_alerts WHERE alert_response = 'overridden'
AND post_review_classification = 'inappropriate')
/
COUNT(clinical_alerts WHERE alert_response = 'overridden')
× 100
Data Sources:
clinical_alerts.alert_typeclinical_alerts.severityclinical_alerts.alert_responseclinical_alerts.override_reason_code
Stratification: By alert type, severity, provider role, department, time of day
| Metric | Target | Benchmark Source |
|---|---|---|
| Overall override rate | < 65% | PubMed: ED average is 63.77% |
| Inappropriate override rate | < 10% | Institutional safety target |
| Allergy alert override rate | < 5% | PubMed: lowest override category |
| Contraindicated (hard-stop) override rate | 0% (blocked) | System-enforced |
Visualisation: Stacked bar chart (override vs. accepted by alert type); trend line (monthly); heat map (by severity × response).
KPI-CPOE-003: Order Turnaround Time
Description: Time from order signing to downstream action (pharmacy verification, specimen collection, imaging completion). Measures operational efficiency of the order fulfilment pipeline.
Formulas:
Pharmacy Verification TAT =
AVG(pending_pharmacy_queue.verified_datetime - pending_pharmacy_queue.received_datetime)
WHERE queue_status = 'verified'
Lab Result TAT =
AVG(laboratory_orders.result_datetime - laboratory_orders.signed_datetime)
WHERE order_status = 'completed'
Imaging Report TAT =
AVG(imaging_orders.report_datetime - imaging_orders.signed_datetime)
WHERE order_status = 'completed'
Data Sources:
pending_pharmacy_queue.received_datetime,.verified_datetimelaboratory_orders.signed_datetime,.result_datetimeimaging_orders.signed_datetime,.report_datetime
Targets:
| Order Type | Priority | Target TAT | Benchmark |
|---|---|---|---|
| Pharmacy verification | STAT | < 15 min | 12 min median |
| Pharmacy verification | Routine | < 4 hours | 2.5 h median |
| Lab result | STAT | < 1 hour | 45 min median |
| Lab result | Routine | < 4 hours | 2 h median |
| Imaging report | STAT X-ray | < 1 hour | 35 min median |
| Imaging report | STAT CT | < 2 hours | 90 min median |
| Imaging report | Routine MRI | < 24 hours | 18 h median |
Visualisation: Box-and-whisker plot (TAT distribution by priority); trend line (median TAT by week); SLA compliance gauge (% within target).
KPI-CPOE-004: Medication Error Rate
Description: Rate of medication-related errors detected by CDS, pharmacist review, or incident reporting, normalised per 1,000 orders.
Formula:
Medication Error Rate (per 1,000 orders) =
(COUNT(clinical_alerts WHERE alert_type IN ('drug-allergy', 'drug-drug', 'dose-range')
AND alert_response = 'cancelled')
+ COUNT(pending_pharmacy_queue WHERE queue_status = 'rejected')
+ COUNT(incident_reports WHERE category = 'medication_error' AND source_module = 'cpoe'))
/
COUNT(medication_orders)
× 1000
Data Sources:
clinical_alerts.alert_type,.alert_responsepending_pharmacy_queue.queue_status,.rejection_reasonincident_reports(external table — EHR module)medication_orders(denominator)
Targets:
| Metric | Pre-CPOE Benchmark | Post-CPOE Target | Evidence |
|---|---|---|---|
| Overall medication errors | 5.92% of orders | < 1.5% of orders | PubMed: 76% reduction |
| Wrong dose errors | 8% | < 3% | PubMed: 62.5% reduction |
| Drug-allergy violations | 2% | < 0.2% | PubMed: 90% reduction |
| Illegible prescription errors | 15% | 0% | Eliminated by design |
Visualisation: Bar chart (error rate by type, pre vs. post CPOE); trend line (monthly error rate); Pareto chart (top error categories).
KPI-CPOE-005: Controlled Substance Compliance Rate
Description: Percentage of controlled substance orders that fully comply with UAE Federal Decree-Law 30/2021 and UEP requirements.
Formula:
CS Compliance Rate (%) =
COUNT(medication_orders
WHERE is_controlled_substance = TRUE
AND uep_submission_status = 'approved'
AND dual_verification_by IS NOT NULL -- for CDa
AND prescriber_controlled_auth = TRUE)
/
COUNT(medication_orders WHERE is_controlled_substance = TRUE)
× 100
Non-Compliance Indicators:
UEP Rejection Rate =
COUNT(medication_orders WHERE uep_submission_status = 'rejected')
/ COUNT(medication_orders WHERE is_controlled_substance = TRUE) × 100
Self-Prescribing Attempts =
COUNT(order_audit_log WHERE action = 'created'
AND notes LIKE '%self-prescribe-blocked%')
Telehealth CS Attempts =
COUNT(order_audit_log WHERE action = 'created'
AND notes LIKE '%telehealth-cs-blocked%')
Data Sources:
medication_orders.is_controlled_substance,.controlled_class,.uep_submission_status,.prescriber_controlled_auth,.dual_verification_byorder_audit_log(blocked attempt tracking)controlled_substance_inventory(inventory compliance)
Targets:
| Metric | Target |
|---|---|
| Overall CS compliance rate | 100% |
| UEP rejection rate | < 2% |
| Self-prescribing attempts blocked | 100% blocked |
| Telehealth CS attempts blocked | 100% blocked |
| CDa dual verification rate | 100% |
| Monthly MOH report submission (on time) | 100% |
Visualisation: Compliance gauge (100% target); trend line; non-compliance incident table with drill-down.
KPI-CPOE-006: Imaging Appropriateness Rate
Description: Percentage of imaging orders that align with ACR Appropriateness Criteria, indicating appropriate utilisation and reduced unnecessary radiation exposure.
Formula:
Imaging Appropriateness Rate (%) =
COUNT(imaging_orders WHERE appropriateness_score IN ('appropriate', 'may-be-appropriate'))
/
COUNT(imaging_orders WHERE appropriateness_score IS NOT NULL)
× 100
Inappropriate Override Rate (%) =
COUNT(imaging_orders WHERE appropriateness_score = 'usually-not-appropriate'
AND order_status != 'cancelled')
/
COUNT(imaging_orders WHERE appropriateness_score = 'usually-not-appropriate')
× 100
Data Sources:
imaging_orders.appropriateness_scoreimaging_orders.order_statusclinical_alerts(appropriateness alerts and responses)
Target: ≥ 90% appropriate or may-be-appropriate
Visualisation: Donut chart (appropriate / may be / not appropriate); trend line by month; drill-down by modality and ordering department.
KPI-CPOE-007: Order Documentation Quality Score
Description: Completeness and accuracy of order documentation, measured across required fields.
Formula:
Documentation Quality Score (%) =
SUM(completed_required_fields across all orders)
/
SUM(total_required_fields across all orders)
× 100
Required fields assessed (medication orders):
- Dose: populated ✓
- Dose unit: populated ✓
- Route: populated ✓
- Frequency: populated ✓
- Clinical indication (ICD-10-AM): populated ✓
- Sig (directions): populated ✓
- Duration (if not "until discontinued"): populated ✓
Targets:
| Metric | Pre-CPOE | Post-CPOE Target | Evidence |
|---|---|---|---|
| Documentation completeness | 66.7% | 100% | PubMed: electronic orders are 100% complete by design |
| ICD-10-AM indication coverage | ~50% | ≥ 95% | Institutional goal |
Visualisation: Gauge (target 100%); bar chart by field (which fields most often incomplete).
Standard Reports
RPT-CPOE-001: CPOE Adoption Dashboard
Description: Executive summary of CPOE utilisation across the organisation. Audience: CMO, Department Chairs, Clinical Informatics Frequency: Monthly Content: CPOE adoption rate by department, provider adoption league table, verbal order ratio, order set utilisation.
RPT-CPOE-002: CDS Alert Effectiveness Report
Description: Analysis of CDS alert firing rates, override patterns, and clinical outcomes. Audience: CDS Committee, Pharmacy Director, CMO Frequency: Monthly Content: Alert volume by type, override rates by severity, top-10 most overridden alerts, inappropriate override incidents, recommendations for alert tuning.
RPT-CPOE-003: Order Turnaround Time Report
Description: Operational performance of the order fulfilment pipeline. Audience: Pharmacy Director, Lab Director, Radiology Director, Nursing Leadership Frequency: Weekly Content: TAT by priority and order type, SLA compliance percentages, bottleneck identification, trend analysis.
RPT-CPOE-004: Controlled Substance Activity Report
Description: Comprehensive summary of all controlled substance prescribing, dispensing, and inventory. Audience: Pharmacy Director, Compliance Officer, CMO (also submitted to MOH monthly for CDa, quarterly for CDb) Frequency: Monthly (CDa), Quarterly (CDb) Content: Prescriptions by schedule, top prescribers, UEP submission/approval/rejection counts, inventory movements, disposal events, discrepancies.
RPT-CPOE-005: Medication Safety Report
Description: Summary of medication-related safety events identified through CPOE and CDS. Audience: Patient Safety Committee, CMO, Quality Department Frequency: Monthly Content: Error rate trends, near-miss events (CDS-prevented), pharmacist interventions, ADR reports submitted to EDE.
RPT-CPOE-006: NABIDH/Malaffi Data Quality Report
Description: Metrics on data submission quality to HIE platforms. Audience: IT Director, Integration Team, Compliance Frequency: Weekly Content: Message delivery rate, field completeness, SNOMED/LOINC mapping rates, rejection rates, timeliness metrics.
RPT-CPOE-007: Provider Order Pattern Report
Description: Individual and comparative prescribing patterns to identify outliers and best practices. Audience: Department Chairs, Medical Staff Committee Frequency: Quarterly Content: Orders per provider, formulary adherence, CDS override rates per provider, controlled substance prescribing volume, order set utilisation.
Dashboard Wireframes
Executive CPOE Dashboard
┌─────────────────────────────────────────────────────────────────────────┐
│ CPOE Executive Dashboard Period: Jan 2026 │
├────────────────────┬────────────────────┬───────────────────────────────┤
│ CPOE Adoption │ CDS Override Rate │ CS Compliance │
│ ┌──────────┐ │ ┌──────────┐ │ ┌──────────┐ │
│ │ 96.2% │ ▲1.3%│ │ 58.4% │ ▼2.1%│ │ 100.0% │ ─ │
│ │ ◉ Target│ 95% │ │ ◉ Target│ <65% │ │ ◉ Target│ 100% │
│ └──────────┘ │ └──────────┘ │ └──────────┘ │
├────────────────────┴────────────────────┴───────────────────────────────┤
│ Order Volume by Type (Jan 2026) │
│ ╔═════════════════════════════════════════╗ │
│ ║ Medications: ████████████████ 12,450 ║ │
│ ║ Lab Orders: ██████████████████ 18,320 ║ │
│ ║ Imaging: ██████ 4,280 ║ │
│ ╚═════════════════════════════════════════╝ │
├────────────────────────────────────┬────────────────────────────────────┤
│ Turnaround Time (Median) │ Alert Override by Type │
│ Pharmacy STAT: 11 min ✓ │ Drug-Allergy: ██ 3.2% │
│ Pharmacy Routine: 2.1 hr ✓ │ Drug-Drug: ████████ 68.5% │
│ Lab STAT: 42 min ✓ │ Dose Range: ██████ 52.3% │
│ Lab Routine: 1.8 hr ✓ │ Duplicate: ████ 41.0% │
│ Imaging STAT: 33 min ✓ │ Formulary: ██████████ 78.1% │
├────────────────────────────────────┴────────────────────────────────────┤
│ Medication Error Rate (per 1,000 orders) │
│ Jan: 8.2 → Feb: 7.1 → Mar: 5.4 → Apr: 4.8 → ... → Jan 2026: 2.3 │
│ ────────────────────────────────────────── Target: < 15 ─────────── │
│ [View Full Report] [Export PDF] [Schedule Email] │
└─────────────────────────────────────────────────────────────────────────┘
Pharmacy Queue Dashboard
┌─────────────────────────────────────────────────────────────────────────┐
│ Pharmacy Verification Queue Live — Auto-refresh │
├──────────────┬──────────────┬──────────────┬────────────────────────────┤
│ 🔴 STAT (3) │ 🟡 ASAP (7) │ 🟢 Rtn (42) │ 🔒 Controlled (5) │
├──────────────┴──────────────┴──────────────┴────────────────────────────┤
│ │
│ ⏱ Order# Patient Medication Priority Waiting Action │
│ ──────────────────────────────────────────────────────────────────────│
│ ⏱ 12:04 ORD-789 A. Al-Maktoum Enoxaparin 80mg SC STAT 12m [V]│
│ ⏱ 08:31 ORD-456 F. Hassan Vancomycin 1g IV STAT 41m [V]│
│ ⏱ 03:15 ORD-321 M. Abdullah Heparin drip IV STAT 3m [V]│
│ ──────────────────────────────────────────────────────────────────────│
│ 🔒 ORD-999 B. Al-Nahyan Tramadol 50mg PO CDa 8m [Dual-V] │
│ 🔒 ORD-998 K. Saeed Diazepam 5mg PO CDa 22m [Dual-V] │
│ │
│ Today's Stats: Verified: 156 | Avg TAT: 18 min | SLA Met: 94.2% │
└─────────────────────────────────────────────────────────────────────────┘
Report Data Source Mapping
| Report | Primary Tables | Key Fields | Filters |
|---|---|---|---|
| RPT-CPOE-001 | medication_orders, laboratory_orders, imaging_orders |
order_source, order_datetime, ordering_provider_id |
Date, department, provider |
| RPT-CPOE-002 | clinical_alerts |
alert_type, severity, alert_response, override_reason_code |
Date, alert type, provider |
| RPT-CPOE-003 | pending_pharmacy_queue, laboratory_orders, imaging_orders |
received_datetime, verified_datetime, result_datetime, report_datetime |
Date, priority, order type |
| RPT-CPOE-004 | medication_orders, controlled_substance_inventory, order_audit_log |
controlled_class, uae_legal_schedule, uep_submission_status, transaction_type |
Date, schedule, facility |
| RPT-CPOE-005 | clinical_alerts, pending_pharmacy_queue, incident_reports |
alert_response, queue_status, rejection_reason |
Date, error type |
| RPT-CPOE-006 | order_audit_log (NABIDH/Malaffi events) |
action, action_datetime |
Date, message type, status |
| RPT-CPOE-007 | medication_orders, clinical_alerts, order_set_executions |
Per-provider aggregations | Date, provider, department |